Skip to content

DevYuriVieira/iphone-oop-simulation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📱 iPhone OOP Modeling

Java Status License IDE UML

en pt-br


🇬🇧 English

📌 About the Project

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.

📊 UML Diagram

UML Diagram

⚙️ Core Concepts Applied

  • Abstraction & Interfaces
  • Multiple Interface Implementation
  • UML Modeling

💻 Technologies

  • Java 17
  • Mermaid (UML)
  • IDE: IntelliJ IDEA

🇧🇷 Português

📌 Sobre o Projeto

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.

📊 Diagrama UML

UML Diagram

⚙️ Conceitos Aplicados

  • Abstração e Interfaces
  • Implementação múltipla
  • Modelagem UML

💻 Tecnologias

  • Java 17
  • Mermaid (UML)
  • IDE: IntelliJ IDEA

📌 Highlights

  • ✔️ Aplicação prática de interfaces
  • ✔️ Modelagem orientada a objetos clara
  • ✔️ Estrutura baseada em contratos
  • ✔️ Representação conceitual UML

👨‍💻 Author / Autor

Yuri Vieira

LinkedIn GitHub


Made with ☕ and Java by Yuri Vieira

About

Java Object-Oriented Programming (OOP) model simulating the 2007 iPhone architecture. This project demonstrates the practical application of Abstraction and Multiple Implementation by using Java Interfaces to orchestrate distinct behaviors: a Music Player, a Telephone, and an Internet Browser within a single concrete class.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages