This project consists of the modeling and implementation of an iPhone component using the pillars of Object-Oriented Programming (OOP) in Java.
The main objective was to abstract the device's characteristics by applying advanced software concepts such as Interfaces, Classes, Polymorphism, and Encapsulation. The system integrates three fundamental roles into a single main class (iPhone):
- Music Player: Functionalities to play, pause, and select songs.
- Telephone: Logic for calling, answering, and starting voicemail.
- Internet Browser: Displaying pages, adding tabs, and updating the browser.
The project demonstrates practical mastery in building UML diagrams and structuring clean, modularized code in Java.
- Abstraction & Interfaces
- Multiple Interface Implementation
- UML Modeling
- Java 17
- Mermaid (UML)
- IDE: IntelliJ IDEA
Este projeto consiste na modelagem e implementação de um componente iPhone utilizando os pilares da Programação Orientada a Objetos (POO) em Java.
O objetivo principal foi abstrair as características do aparelho aplicando conceitos avançados de software, como Interfaces, Classes, Polimorfismo e Encapsulamento. O sistema integra três papéis fundamentais em uma única classe principal (iPhone):
- Reprodutor Musical: Funcionalidades de tocar, pausar e selecionar músicas.
- Aparelho Telefônico: Lógica de ligar, atender e iniciar correio de voz.
- Navegador na Internet: Exibição de páginas, adição de abas e atualização do navegador.
O projeto demonstra domínio prático na construção de diagramas UML e na estruturação de código limpo e modularizado em Java.
- Abstração e Interfaces
- Implementação múltipla
- Modelagem UML
- Java 17
- Mermaid (UML)
- IDE: IntelliJ IDEA
- ✔️ Aplicação prática de interfaces
- ✔️ Modelagem orientada a objetos clara
- ✔️ Estrutura baseada em contratos
- ✔️ Representação conceitual UML
Yuri Vieira
Made with ☕ and Java by Yuri Vieira
