PaolaDaft / CursoPOOUber

Fundamentos de Programación orientada a objetos en 4 diferentes leguajes: Java, Python, JS y PHP

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Curso de Programación Orientada a Objetos: POO

Proyecto que desarrolle en el curso de POO de @Platzi.

Análisis de los objetos, clases y métodos de la aplicación Uber

Para resolver un problema como desarrollador es de gran utilidad dividirlo en subproblemas y generar un modelo que te permita implementar las soluciones en código. A lo largo de este curso analizamos Uber, una de las aplicaciones más usadas en el mundo, para entender cómo está construida. A partir de este análisis hicimos la extracción y definición de los objetos, clases y métodos que conforman la aplicación, usamos el siguiente diagrama UML para modelarla y, finalmente, usando diferentes lenguajes como Java, PHP y Python hicimos la implementación de las clases y objetos de la aplicación.

---
title: Uber UML
---
classDiagram
    Account <|-- Driver
    
    Car --> Driver
    Trip --> User
    Car <|-- UberX
    Car <|-- UberPool
    Car <|-- UberBlack
    Car <|-- UberVan
    Payment <|-- Cash
    Payment <|-- Card 
    Payment <|-- PayPal
    Trip *-- Car
    Trip *-- Route
    Trip *-- Payment
    Account <|-- User

    class Account{
        +int id
        +str name
        +str document 
        +str email
        +str password   
    }
    class Car{
        +int id
        +str license
        +str driver 
        +str passengers
    }
    class UberX{
        +str brand
        +str model
    }
    class UberPool{
        +str brand
        +str model
    }
    class UberBlack{
        +typeCarAccepted
        +seatsMaterial
    }
    class UberVan{
        +typeCarAccepted
        +seatsMaterial
    }
    class Trip{
        + route
        +car
        +payment
    }
    class Route{
        +origin 
        +destination
    }
    class Payment{
        +int id
        +float cost
    }
    class Card{
        +int number
        +int cvv
        +str date         
    }
    class PayPal{
        +str email
    }

Loading

Conceptos básicos

Abstracción

Herencia

Encapsulamiento

El Encapsulamiento es hacer que un dato sea inviolable, inalterable cuando se le asigne un modificador de acceso.

Polimorfismo

Muchas formas. Poli = muchas, morfismo = formas. NO es Poliformismo Es construir métodos con el mismo nombre pero con comportamiento diferente

📕Referencias Si te interesa saber más sobre el curso te dejo los siguientes enlaces: 🔗Curso

🔗Slides

Quieres hacer diagramas UML como este?, aquí te dejo la herramienta que use.

About

Fundamentos de Programación orientada a objetos en 4 diferentes leguajes: Java, Python, JS y PHP


Languages

Language:Java 38.1%Language:PHP 22.3%Language:Python 18.1%Language:JavaScript 17.6%Language:HTML 3.8%