Dobrý den,
nikdy jsem nepochopil proč ze všech možností vytvoření "instance" z tabulky, nikdo nezkusil vytvořit funkci new jako já... Přijde mi to lepší, než ten samý kód neustále opakovat atd.
function new(instance)
return setmetatable({}, instance)
end
...
snake = new(Snake) -- so easy...
Tím mohu používat téměř normální C like OOP. No ale jak píši - mimo svůj kód jsem to neviděl a poněvadž require může vracet tabulku třídy, nechápu dle čeho mám vybírat "správný" postup. Nejsou specifikovaná alespoň doporučení, či tak? Zkrátka můj postup vyžaduje specifickou podobu třídy - musí mít initializaci __index atp. A co až já přijdu ke kódu jiného, či někdo jiný k mému? Jak se v tom pak vyzná? (Pokud někdo vytváří instance s využitím návratové hodnoty require, je to zase zcela jiná podoba tříd!)