Menu
Coddy logo textTech

Resumen - Fábrica de coches

Parte de la sección Object Oriented Programming del Journey de Lua de Coddy — lección 11 de 70.

challenge icon

Desafío

Fácil

¡Vamos a construir una clase Car completa que reúna todo lo que has aprendido en este capítulo! Crearás un sistema de fábrica de coches donde cada coche tiene su propio modelo y color, demostrando una organización adecuada de módulos e instancias independientes.

Organizarás tu código en dos archivos:

  • Car.lua: Define tu clase Car siguiendo el patrón de prototipo estándar. Tu clase necesita un constructor :new(model, color) que cree coches con sus propios atributos. Incluye un método :describe() que permita a cada coche presentarse.
  • main.lua: Requiere tu módulo Car y crea múltiples instancias de coches para demostrar que cada coche mantiene su propio estado independiente.

Tu método :describe() debe imprimir en este formato exacto:

A [color] [model]

Recibirás cuatro entradas:

  1. Modelo para el primer coche
  2. Color para el primer coche
  3. Modelo para el segundo coche
  4. Color para el segundo coche

In your main file, crea dos coches utilizando las entradas proporcionadas y haz que cada uno se describa a sí mismo en una línea separada.

Por ejemplo, si las entradas son Sedan, blue, Truck, y red, la salida debería ser:

A blue Sedan
A red Truck

Cada coche debe almacenar su propio modelo y color, demostrando que tu clase crea instancias verdaderamente independientes.

Pruébalo tú mismo

-- Requerir el módulo Car
local Car = require('Car')

-- Leer entradas
local model1 = io.read()
local color1 = io.read()
local model2 = io.read()
local color2 = io.read()

-- TODO: Crear dos instancias de coche usando Car:new()
-- TODO: Llamar a :describe() en cada coche para imprimir sus descripciones

Todas las lecciones de Object Oriented Programming