Prueba entrevista de trabajo.

Sharktopus

Solucionado señores, pueden cerrar, gracias por la ayuda!

chami_

Marcha atras

-Yepeto-

¿No deberías controlar máximos y mínimos a la hora de acelerar/frenar/repostar?

werty

y las ruedas? entiendo que si alguien intenta crear vehículo con 175 ruedas debería salir error? y lo de la bicicleta como encaja? entiendo que la clase debe tener limitados los tipos de vehículos y cuántas ruedas posee cada uno. Además si es bicicleta, será diésel?

De hecho el input a la clase debería ser el tipo (coche, moto, bici) y no las ruedas no?

jilker

Suena a problema para que uses herencia de clases

3
grylls

Metele docstrings y revisa el código con flake8 para que quede bonito. Si ya lo quieres bordar, añadele test unitarios con pytest, por ejemplo.

Las empresas se fijan en estas tonterías xD

Erpotro

Ostia puta es meterme en un hilo así y no me entero de una mierda, la programación es un universo a parte, sois de otro planeta xD me tiene muuucho merito

Pens que le estabais troleando por haber abierto el hilo en Motor o algo así

Lifecasi0

Hazlo en inglés, y usa herencia.

1
eXtreM3

Dónde está la bicicleta?
Y la implementación del coche y la moto?
Y las comprobaciones de velocidades negativas?
Y la herencia de vehiculos?
Y el desarrollo en inglés?
Y un mínimo de documentación?

Espero que sea para un puesto de becario/junior.

1
Fyn4r

No sé a que te refieres con que más podrías añadir porque todavía no has resuelto el ejercicio.
Tendrás que meter algo de composición/herencia para distinguir vehículos repostables de los que no, abstraer a la clase padre las cosas comunes, crear las hijas con valores por defecto? controlar límites como dicen arriba, también estaría bien "impedir" que se pueda modificar la velocidad directamente dentro de las posibilidades de python.

Una vez ahí pues ya puedes jugar a meter @property , tests y lo que quieras xD

Apo_powa

Esto parece más trabajo de clase que entrevista de trabajo, cosas que me chirrían:

  • Uso de camel case cuando estás en Python
  • Identation level dentro de la clase
  • El código en español
  • No usas docstrings
  • Los params puedes explicitar que type de var son
  • Control sobre parámetros de entrada
  • Inicias valores en los parámetros del constructuror (se entendería mejor si lo hicieras dentro)

Y luego básicamente lo que quieren evaluar es que te manejas con OOP y ahí no estoy viendo nada, cosas que se me ocurren vagamente:

  • Si te piden implementar un nuevo tipo de vehículo (bicicleta), te lo traduzco, hereda la clase Vehículo y crea la clase Bicicleta, en este caso tiene sentido que en la parent class tengas combustible, potencia o nivel de combustible? No son características comunes de vehículos en general.

  • Implementa una nueva funcionalidad, repostar, leete qué son los métodos abstractos, aunque Python al ser un lenguaje no compilado no tiene explicitamente este tipo de métodos, existe por ahí una librería si no recuerdo mal que te permite usar clases/métodos abstractos, lo defines en la parent y ya lo programas en la child class.

En resumen, si presentas eso se ve que no tienes ni puta idea de OOP y tampoco de Python, lee un poco de OOP que es un ejercicio macro sencillo y léete también la guía de estilo: https://peps.python.org/pep-0008/

A currar y mucha suerte en la entrevista!

2
B

Yo también diría de implementar, mínimo, "__str__"...

privet

A mi me suena mucho a un ejercicio que tiene pildorasinformaticas de Java, xD Que lo vi cuando estaba en primero de DAW cuando estaba aprendiendo las clases

1
Sharktopus

Efectivamente es para un puesto Junior.

Entonces creo una clase abstracta Vehiculo, y luego creo las otras clases que hereden de ella, Coche, Moto y Bici

1 respuesta
Soltrac

#14 Intenta pensar un poco más...

Te han pedido una función Repostar() y una bici no reposta....

1 respuesta
Sharktopus

Una bici electrica si que podria recargarse

Usuarios habituales