Bienvenida e Introducci贸n

1

驴Por qu茅 aprender Programaci贸n Orientada a Objetos?

2

驴Qu茅 resuelve la Programaci贸n Orientada a Objetos?

3

Paradigma Orientado a Objetos

4

Lenguajes Orientados a Objetos

5

Instalando Visual Studio Code

6

Diagramas de Modelado

7

Qu茅 es UML

Orientaci贸n a Objetos

8

Objetos

9

Abstracci贸n y Clases

10

Modularidad

11

Analizando Uber en Objetos

12

Reto 1: identificando objetos

Programaci贸n Orientada a Objetos. An谩lisis

13

Clases en UML y su sintaxis en c贸digo

14

Modelando nuestros objetos Uber

15

驴Qu茅 es la herencia?

16

Aplicando Herencia a nuestro proyecto Uber

17

Reto 2: analicemos un problema

Clases, Objetos y M茅todo Constructor

18

Creando nuestras carpetas iniciales para el curso

19

Definiendo clases en Java y Python

20

Definiendo Clases en JavaScript

21

Objetos, m茅todo constructor y su sintaxis en c贸digo

22

Objetos. Dando vida a nuestras clases en Java y Python

23

Declarando un M茅todo Constructor en Java y JavaScript

24

JavaScript orientado a objetos, lo m谩s nuevo

25

Declarando un m茅todo constructor en Python

Herencia

26

Aplicando herencia en lenguaje Java y PHP

27

Soluci贸n del reto de herencia en PHP

28

Aplicando herencia en lenguaje Python y JavaScript

29

Otros tipos de Herencia

30

Reto 4

Encapsulamiento

31

Encapsulamiento

32

Encapsulando atributos en Java

Polimorfismo

33

Generando polimorfismo en Java

34

Generando polimorfismo en PHP

Cierre del curso

35

El Diagrama UML de Uber

36

Conclusiones

37

Bonus: Qu茅 es la Programaci贸n Orientada a Objetos

Curso de Programaci贸n Orientada a Objetos: POO

Curso de Programaci贸n Orientada a Objetos: POO

Anah铆 Salgado D铆az de la Vega

Anah铆 Salgado D铆az de la Vega

Definiendo Clases en JavaScript

20/37

Lectura

Si est谩s interesado en aprender JavaScript desde ahora debes saber que el concepto de clases no exist铆a como tal hasta el nuevo est谩ndar EcmaScript 6. El reto de encontrar sistemas construidos con este est谩ndar es alto por esa raz贸n te explicar茅 cu谩l fue por mucho tiempo su equivalente.

Los Prototipos fue la forma de crear clases en JavaScript y las representaremos partiendo de la declaraci贸n de una funci贸n.

Creemos nuestras clases:

  • Account
  • Car
  • Payment
  • Route

Para esto crearemos el siguiente sistema de archivos dentro de la carpeta JS de nuestro proyecto:

  • Account.js
  • Car.js
  • Payment.js
  • Route.js
  • index.js

El archivo index.js ser谩 el lugar equivalente al punto de entrada de la aplicaci贸n donde estaremos declarando nuestros objetos basado en las clases. Para esta clase lo dejaremos en blanco.

Ahora veamos el c贸digo archivo por archivo:

Account.js

Captura de pantalla 2019-01-13 a la(s) 2.56.24.png

Car.js

Captura de pantalla 2019-01-13 a la(s) 2.56.34.png

Payment.js

Captura de pantalla 2019-01-13 a la(s) 2.56.41.png

Route.js

Captura de pantalla 2019-01-13 a la(s) 2.56.56.png

Este es el enlace del c贸digo del proyecto: https://github.com/anncode1/Curso-POO-Platzi/tree/f5725787165b36cae579f94e428068039b554b0b/JS

En este c贸digo notar谩s el uso de la palabra reservada this. Normalmente cuando usamos la sintaxis punto siempre lo haremos a partir de un objeto instanciado, en este caso con this, se hace una simulaci贸n al objeto en cuesti贸n, a pesar de que en ese momento visualmente sigue siendo una clase.

Captura de pantalla 2019-01-13 a la(s) 2.56.56.png

Digamos que se adelanta un poco al momento de ejecuci贸n y visualiza al objeto con sus atributos, m谩s adelante ver谩s la forma en que podemos asignar datos a un atributo del objeto en otros lenguajes y ver谩s que es exactamente la misma sintaxis.

Si intentaramos poner this. en el momento de ejecuci贸n nos traer铆a un listado de todos los componentes de la clase que en este caso son solo estos tres: id, init y end.

This hace referencia al objeto instanciado. Para comprender del todo esta 煤ltima frase mira la siguiente clase donde hablamos de objetos.

Reto.

En la carpeta de nuestro proyecto PHP declara estas mismas clases: Puedes utilizar esta clase de apoyo: https://platzi.com/clases/1338-php/12929-programacion-orientada-a-objetos1172/
Int茅ntalo y comp谩rtenos tus resultados, comp谩ralos con tus compa帽eros.

Aportes 595

Preguntas 13

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesi贸n.

Account.php
CODIGO
<?php
class Account {
public $id = integer;
public $name = string;
public $document = string;
public $email = string;
public $password = string;
}

Car.php
CODIGO
<?php
class Car {
public $id = integer;
public $license = string;
public $driver = string;
public $passengers = integer;
}

Payment.php
CODIGO
<?php
class Payment {
public $id = integer;
}

Route.php
CODIGO
<?php
public $id = integer;
public $start = float;
public $end = float;
}

Hola esta es la estructura de archivos:

Y esta la forma como cree las clases en cada archivo respecticvamente:

17. Mis apuntes sobre: 鈥淒efiniendo clases en JavaScript鈥

En este caso no estoy de acuerdo, hay manera de declarar clases en JavaScript, y lo comparto en c贸digo:

Account.js

class Account{
    constructor()
    {
        this.id;
        this.name;
        this.document;
        this.email;
        this.password;
    }
}

'
'
Car.js

class Car{
    constructor(){
        this.id;
        this.license;
        this.driver;
        this.passenger;
    }
}

'
'
Payment.js

class Payment{
    constructor(){
        this.id;
    }
}

'
'
Route.js

class Route{
    constructor(){
        this.id;
        this.start;
        this.end;   
    }
}

'
'
Ahora respecto a PHP, comparto el c贸digo lo pude hacer:
account.php

<?php
class Account{
    public $id;
    public $name;
    public $document;
    public $email;
    public $password;    
}

'
'
car.php

<?php
class Car{
    public $id;
    public $license;
    public $driver;
    public $passenger;
}

'
'
payment.php

<?php
class Payment {
    public $id;    
}



}route.php

<?php
class Route {
    public $id;
    public $start;
    public $end;   
}

馃挋 Definici贸n de las clases en el lenguaje de programaci贸n Dart.

class Account {
  int id;
  String name;
  String document;
  String email;
  String password;
}
class Car {
    int id;
    String license;
    String driver;
    int passenger;
}
class Payment {
    int id;
}
class Route {
    int id;
    List<double> start;
    List<double> end;
}

Listo. Me gusto mucho el ejercicio. Por cierto aprend铆 de los otros que a los atributos 鈥渋nit鈥 y 鈥渆nd鈥 tocaba iniciarlos como array(). 隆Gracias!

Account.php

<?php
    class Account {
        public $id;
        public $name;
        public $document;
        public $email;
        public $password;
    }
?>

Car.php

<?php
    class Car{
        public $id;
        public $license;
        public $driver;
        public $passenger;
    }
?>

Payment.php

<?php
    class Payment{
        public $id;
    }
?>

Route.php

<?php
    class Route{
        public $id;
        public $init;
        public $end;
    }
?>

Para sacar las fotos asi descarguen la extension CodeSnap en Visual Studio code 馃槂

A partir de ecmascript 6 se implemento el uso de clases eso sin dejar de lado los prototipos. Simplement se uso para mejor comprensi贸n y uso de POO.

class Account{
    constructor(id,name,document,email,password){
        this.id = id;
        this.name = name;
        this.document = document;
        this.email = email;
        this.password = password;
    }
}

Por otra parte PHP en su versi贸n 8 se puede dejara de instanciar los atributos como se ha venido haciendo y se pueden usar desde el constructor de manera muy parecida al ejemplo colocado con javascript. Esto permite ahorrar lineas de c贸digo.

class Account {
    public $id;
    public $name;
    public $document;
    public $email;
    public $password;
}

Account.php

<?php
class Account {
    public $id;
    public $name;
    public $document;
    public $email;
    public $password;
}
>?

Car.php

<?php
class Car {
    public $id;
    public $license;
    public $driver;
    public $passenger;
}
?>

index.php

<?php
    echo 'Hola Mundo';
?>

Payment.php

<?php
class Payment {
    public $id;
}
?>

Route.php

<?php
class Route {
    public $id;
    public $init= [
        'longitude' => '',
        'latitude' => ''
    ];
    public $end= [
        'longitude' => '',
        'latitude' => ''
    ];
}
?>

<?php

class Account {
$public id;
$public name;
$public email;
$public password;
}

Listo, comparto mi resultado

Una aclaracion para todos PHP es un lenguaje de programaci贸n dise帽ado para la web que es de tipado dinamico. esto quiere decir que a la hora de declarar una variable no es necesario colocar el tipo de dato de esa variable como en java o C#. PHP hasta donde yo se es interpretado lo que quiere decir que se ejecuta linea por linea y no creando un byte code. Si quieren profundizar mas en PHP el framework Laravel es una buena opcion

Hola, compa帽eros.
Estoy tomando el curso para aplicarlo en JS y lo de las clases lo intent茅 aplicar con EcmaScript 6. Lo hice as铆, si es que en algo est谩 mal o puede mejorar espero que me lo puedan comentar.
Gracias 鉂わ笍

class Route{
    constructor(id,init,end){
        this.id = id;
        this.init = init;
        this.end = end;
    }
}
class Payment{
    constructor(id){
        this.id = id;
    }
}
class Car{
    constructor(id,license,driver,passenger){
        this.id = id;
        this.license = license;
        this.driver = driver;
        this.passenger = passenger;
    }
}
class Account{
    constructor(id,name,document,email,password){
        this.id = id;
        this.name = name;
        this.document = document;
        this.email = email;
        this.password = password;
    }
}

Para los que no sabemos qu茅 es ECMAScript, les dejo el siguiente art铆culo: https://openwebinars.net/blog/que-es-ecmascript/

<?php
class Account
{
public $id;
public $name;
public $document;
public $email;
public $password;
}

class car
{
public $id;
public $license;
public $driver;
public $passenger;
}

class Payment
{
public $id;
}

class Route
{
public $id;
public $init;
public $end;
}
?>

<?php

class Account
{
    public $id;
    public $name;
    public $document;
    public $email;
    public $password;
}
<?php

class Car
{
    public $id;
    public $license;
    public $driver;
    public $passenger;
}
<?php

class Payment
{
    public $id;
}
<?php

class Route
{
    public $id;
    public $start = array();
    public $end = array();
}```

Bueeeno, aqu铆 est谩 el reto. 馃槃

<h1>Account.php</h1>
<?php
class Account {
  public $id;
  public $document;
  public $name;
  public $email;
  public $password;
}
?>
<h1>Car.php</h1>
<?php
class Car {
  public $id;
  public $license;
  public $driver;
  public $passengers;
}
?>
<h1>Payment.php</h1>
<?php
class Payment {
  public $id;
}
?>
<h1>Route.php</h1>
<?php
class Route {
  public $id;
  public $init;
  public $end;
}
?>

No s茅 qu茅 tan malo sea pero as铆 compil茅 el c贸digo en la terminal de mac:

php nombreArchivo.php

<?php
class Account {
public $id;
public $name;
public $document;
public $email;
public $password;

}
?>

<?php
class Car {
public $id;
public $license;
public $driver;
public $passengeger;

}
?>

<?php
class Payment {
public $id;

}
?>

<?php
class Route {
public $id;
public $start = array();
public $end = array();

}
?>

Para complementar, desde ECMAScript 6 (ECMAScript 2015) se pueden usar clases

https://developer.mozilla.org/es/docs/Web/JavaScript/Referencia/Classes

Account.js

class Account {
  constructor() {
    this.id = 0;
    this.name = '';
    this.document = '';
    this.email = '';
    this.passwrord = '';
  }
}

驴que tal se ve en c++?

Lo unico que no se muy bien es porque me tira el error en la palabra Account en la linea 2. Si alguien lo sabe le agradeceria que me comente por que es. Saludos!

Account

<?php

class Account{
    public $id;
    public $name;
    public $document;
    public $email;
    public $password;
}

Car.php

<?php

class Car{
    public $id;
    public $license;
    public $driver;
    public $passengenger;
}
?>

Payment.php

<?php

class Payment{
    public $id;
}

?>

Route.php

<?php 

class Route{
    public $id;
    public $start;
    public $end;
}
?>

Clases en javaScript 2022

Bueno, volvi luego de hacer un curso basico de PHP.

El link que pusieron para php no sirve, envia a un curso completo de pho, a menos claro que la intencion sea mandarnos a hacer este curso completo, en lugar de como usar las class.

C贸digo
<?php
class Account {
public $id = integer;
public $name = string;
public $document = string;
public $email = string;
public $password = string;
}
Car.Php
C贸digo
<?php
class Car {
public $id = integer;
public $license = string;
public $driver = string;
public $passengers = integer;
}
	Payment.php
C贸digo
<?php
class Payment {
public $id = integer;
}
Route.php
C贸digo
<?php
Class Route {
public $id = integer;
public $start = Array();
public $end = Array();
}

Hola comunidad
comparto las classes en PHP

<?php

class Account{
    public $id;
    public $name;
    public $document;
    public $email;
    private $password;
} 
<?php

class Car {
    public $id;
    public $license;
    public $driver;
    public $passengers;
}
<?php

class Payment {
    public $id;
}
<?php

class Route {
    public $id;
    public $init = [];
    public $end = [];
}

<?php
class Account {
public $id;
public $name="";
public $document="";
public $email="";
public $password="";
}
?>

<?php
class Car {
public $id;
public $license="";
public $driver="";
public $passegenger;
}
?>

<?php
class Payment {
public $id;
}
?>

<?php
class Route {
public $id;
public $start=array();
public $end= array();
}
?>

Reto resuelto:

class Account {
    public $id;
    public $name;
    public $document;
    public $email;
    public $password;
}
class Car {
    public $id;
    public $license;
    public $driver;
    public $passenger;
}
class Payment {
    public $id;
}
class Route {
    public $id;
    public $start = Array();
    public $end = Array();
}

Sistema de archivos:

Account.php
<?php
class Account {
public $id;
public $name;
public $document;
public $email;
public $password;
}
?>
Car.php
<?php
class Car{
public $id;
public $license;
public $driver;
public $passenger;
}
?>
Payment.php
<?php
public $id;
?>
Route.php
<?php
public $id;
public $init;
public $end;
?>

Aqui mi aporte 馃懢


<?php
class Account
{
public $id;
public $name;
public $document;
public $email;
public $password;
}

class Car
{
public $id;
public $license;
public $driver;
public $passenger;
}

class Payment
{
public $id;
}

class Route
{
public $id;
public $start;
public $end;
}

Buenas tardes, este es mi aporte, noto que la mayoria no declaro el tipo de las variables, hay error en eso?

Para la clase Car

C贸digo para la clase Route en PHP

Hola compa帽eros, les comparto mi repositorio con el c贸digo del proyecto: https://github.com/karen-lopez/OOPUber

Hola a todos, les comparto mi c贸digo:
脡xito a todos

class Account {
    public $id;
    public $name;
    public $document;
    public $email;
    public $password;
}

class Car {
    public $id;
    public $license;
    public $driver;
    public $passenger;
}

class Payment {
    public $id;
}

class Route {
    public $id;
    public $start;
    public $end;
}

Les comparto las clases en PHP

<?php

class Account {
    public $id;
    public $name;
    public $email;
    public $password;
}
?>
<?php

class Car {
    public $id;
    public $license;
    public $driver;
    public $passengers;
}
?>
<?php

class Payment {
    public $id;
}

?>
<?php

class Route {
    public $id;
    public $start;
    public $end;
}

?>

<? php
class Account{
public $id;
public $name;
public $document;
public $email;
public $password;
}

<? php
class Car{
public $id;
public $license;
public $driver;
public $passengenger;
}

<? php
class Payment{
public $id;
}

<? php
class Route{
public $id;
public $star = [];
public $end = [];
}

PHP es muy extra帽o, no?

class Account {
public $id;
public $name;
public $document;
public $email;
public $password;
}

class Car {
public $id;
public $license;
public $driver;
public $passenger;
}

class Payment {
public $id;
}

class Route() {
public $id;
public $start;
public $end;
}

Duda.
Siempre usamos archivos adicionales:
Java --> Main . java
Pythton --> main . py
JS --> index . js

Imagino que en PH P ser谩 algo parecido, digo, un archivo inde . php.

<?php
class Account {
public $id;
public $name;
public $document;
public $email;
public $password;
}
?>

<?php
class Car {
public $id;
public $license;
public $driver;
public $passenger;
}
?>

<?php
class Payment {
public $id;
}
?>

<?php
class Route {
public $id;
public $start = [];
public $end = [];
}
?>

Account.php

<?php

class Accouunt {
    public $id;
    public $name;
    public $document;
    public $email;
    public $password;
}
?>

Car.php

<?php

class Car {
  public $id;
  public $licence;
  public $driver;
  public $passengers; 
}
?>

Payment.php

<?php

class Payment{
  public $id;
}
?>

Route.php

<?php

classRoute{
  public $id;
  public $start = [];
  public $end = [];
}
?>

Busque informacion para las clases, espero les sirva https://www.php.net/manual/es/language.oop5.basic.php

<?php

class Route{
    public $id;
    public $start = [];
    public $end = [];
}

<?php

class Account{
    public $id;
    public $name;
    public $email;
    public $password;
}

<?php

class Car{
    public $id;
    public $license;
    public $driver;
    public $passenger;
}

Account

class Account {
    public $id;
    public $name;
    public $document;
    public $email;
    public $password;
}

Car

class Car {
    public $id;
    public $license;
    public $driver;
    public $passenger;
}

Payment

class Payment {
    public $id;
}

Route

class Route {
    public $id;
    public $init;
    public $end;
}

Se crea el archivo Account.php y se escribe la clase

<?php
    class Account {
        public $id;
        public $name;
        public $document;
        public $email;
        public $password;
    }
?>

Se crea el archivo Car.php y se escribe la clase

<?php
    class Car {
        public $id;
        public $license;
        public $driver;
        public $passenger;
    }
?>

Se crea el archivo Payment.php y se escribe la clase

<?php
    class Payment {
        public $id;        
    }
?>

Se crea el archivo Route.php y se escribe la clase

<?php
    class Route {
        public $id;
        public $init;
        public $end;
    }
?>

<?php
class Account{
public $id;
public $name;
public $document;
public $email;
public $password;
}
?>

<?php
class Car{
public $id;
public $license;
public $driver;
public $passenger;
}
?>

<?php
class Payment{
public $id;
}
?>

<?php
class Route{
public $id;
public $start;
public $end;
}
?>

<?php

class Account{
public $id;
public $name;
public $email;
public $document;
public $password;

}

<?php

class Car{
public $id;
public $license;
public $driver;
public $passenger;
}

<?php

class Payment {
public $id;
}

<?php

class Route {
public $id;
public $start;
public $end;
}

<?php
class Route{
    public $id;
    public $star=array();
    public $end=array();
}```
<h1>ACCOUNT</h1>

class Account {
public $Id;
public $name;
public $document;
public $email;
public $password;
}

<h1>CAR</h1>

class Car {
public $Id;
public $license;
public $driver;
public $passenger;

}

<h1>PAYMENT</h1>

class Payment {
public $Id;
}

<h1>ROUTE</h1>

class Route {
public $Id;
public $init;
public $end;

}

Yo estoy realizando el proyecto con los nombres en espa帽ol.

<?php

class Cuenta{
public $id;
public $nombre;
public $documento;
public $email;
public $password;
}

<?php
class Account
{
public $id;
public $name;
public $document;
public $email;
public $password;
}

class car
{
public $id;
public $license;
public $driver;
public $passenger;
}

class Payment
{
public $id;
}

class Route
{
public $id;
public $init;
public $end;
}
?>

<?php
class Account{

public $id;
public $name;
public $document;
public $email;
public password;

}

class Car {

public $id;
public $license;
public $driver;
public $passenger;

}
class Payment{

    public $id;


}

class Route {

public $id;
public $init;
public $end;

}
?>

Este es mi sistema de archivos despu茅s de la clase.

Hay aalguna forma de editar los post?

<?php 

class Account {
    protected $id;
    protected $name;
    protected $document;
    protected $email;
    protected $password;
}

?>
<?php 

class Car {
    protected $id;
    protected $licence;
    protected $driver;
    protected $passengers;
}

?>
<?php 

class Route {
    protected $id;
    protected $start = [];
    protected $end = [];
}

?>
<?php 
class Payment {
    protected $id;
}

?>

class Account{
public $id;
public $name;
public $document;
public $email;
public $password;
}
class Car{
public $id;
public $licence;
public $driver;
public $passegenger;
}
class Payment{
public $id;
}
class Route{
public $id;
public $strart;
public $end;
}

Clase account

Clase Car

Clase Payment

Clase Route

Est谩s son las clases, aunque no supe qu茅 escribir en el main.php

Para los que quieran instalar PHP en su pc aca les dejo un https://www.youtube.com/watch?v=LHO-FAUa4bc

![](

Clases en PHP:

<?php

class Account
{
    public $id;
    public $name;
    public $document;
    public $email;
    public $password;
}
<?php

class Car
{
    public $id;
    public $license;
    public $driver;
    public $passenger;
}
<?php

class Payment
{
    public $id;
}
<?php

class Route
{
    public $id;
    public $start = array();
    public $end = array();
}

Y un archivo vac铆o llamado index.php鈥

account.php
<?php
class Account {
public $id;
public $name;
public $document;
public $email;
public $password;
}
?>
car.php
<?php
class Car {
public $id;
public $license;
public $driver;
public $passenger;
}
?>
payment.php
<?php
class Payment{
public $id;
}
?>
route.php
<?php
class Route{
public $id;
public $init;
public $end;
}
?>

Si est谩n usando visual studio code pueden incluir en la configuraci贸n su propio c贸digo para auto-completar por ejemplo para cuando escriban la palabra php el editor le sugiera completar la estructura para iniciar un archivo php y as铆 cualquier ejemplo que se les ocurra
.
Para hacer esto se van hasta la pesta帽a file (archivo) despu茅s clickean preferences (preferencia) y despu茅s
user snippets (c贸digo de usuario)
.
Seguidamente le dan click en la opci贸n que les saldr谩 en una barra de b煤squeda llamada html.json
.
Les saldra un archivo explicativo y dentro de las dos llaves principales y al final de ese c贸digo escriben lo siguiente:

"php": {
		    "prefix": "php",
		    "body": [
			          "<?php $1 ?>"
		    ],
		    "description": "php tag"
}

Account.php

<?php

class Account
{
    public $id;
    public $name;
    public $document;
    public $email;
    public $password;
}

Car.php

<?php

class Car
{
    public $id;
    public $license;
    public $driver;
    public $passenger;
}

Payment.php

<?php

class Payment
{
    public $id;
}

Route.php

<?php

class Route
{
    public $id;
    public $start = [];
    public $end = [];
}

<?php
class Account {
public $id;
public $name;
public $document;
public $email;
public $password;
}
?>

<?php
class Car {
public $id;
public $license;
public $driver;
public $passenger;
}
?>

<?php
class Payment {
public $id;
}
?>

<?php
class Route {
public $id;
public $start;
public $end;
}
?>

<?php
class Account{
public $id;
public $name;
public $document;
public $email;
public $password
}
?>

<?php
class Car{
public $id;
public $license;
public $driver;
public $passenger;
}
?>

<?php
class Payment{
public $id;
}
?>

<?php
class Route{
public $id;
public $star = array();
public $end = array();
}
?>

<?php
class Account{
     $id;
     $name;
     $document;
     $email;
     $password;
}
?>
<?php
     class Car{
     public $id;
     public $license;
     public $driver;
     public $passenger;
}
?>
<?php
class Payment {
     public $id;
}
?>
<?php
class Route{
     public $id;
     public $start;
     public $end;
}
?>```

![](

En account.php
<?php
class Account{
public $id;
public $name;
public $document;
public $email;
public $password;
}
?>
En car.php
<?php
class Car{
public $id;
public $license;
public $driver;
public $passenger;
}
?>
En payment.php
<?php
class Payment{
public $id;
}
?>
En route.php
<?php
Class Route{
public $id;
public $start;
public $end;
}
?>

<?php
class Account
{
Protected $id;
Protected $name;
Protected $document;
Protected $email;
Protected $password;
}

<?php
class Car
{
Protected $id;
Protected $licence;
Protected $driver;
Protected $passenger;
}

<?php
class Route
{
Protected $id;
Protected $start;
Protected $end;
}

<?php
class Payment
{
Protected $id;
}

Me gusta Mucho Python, su c贸digo es mucho mas limpio 馃槃

Comparto mi resultado del reto de clases en PHP:

Account:

<?php
    class Account{
        public $id;
        public $name;
        public $document;
        public $email;
        public $password;
    }
?>

Car:

<?php
    class Car{
        public $id;
        public $license;
        public $driver;
        public $passenger;
    }
?>

Route

<?php
    class Route{
        public $id;
        public $start;
        public $end;
    }
?>

Payment

<?php
    class Payment{
        public $id;
    }
?>

sigo sin poder subir imagenes desde firefox >=/

<?php

class Account {
    public $id;
    public $name;
    public $document;
    public $email;
    public $password;
}

class Card {
    public $id;
    public $license;
    public $driver;
    public $passagenger;
}

class Route {
    public $id;
    public $start;
    public $end;
}

class Payment {
    public $id;
}

// index.php

printf('Hola ppl');
<?php
    class Route{
        public $id;
        public $start;
        public $end;
    }
?>

<?php
    class Acount{
        public $id;
        public $name;
        public $document;
        public $email;
        public $password;
    }
?>

<?php 
    class Car{
        public $id;
        public $license;
        public $driver;
        public $passenger;
    }
?>

<?php
    class Payment{
        public $id;
    }
?>