[python] Tipy na návrh třídy

superman feed na centrum.cz
Čtvrtek Červenec 31 23:17:36 CEST 2008


Ani to takto nedělejte, protože to není dobrá věc. Raději prostě 
udělejte základní třídu nazvanou třeba BotCommand, který bude mít 
abstraktní metody řekněme getTextCommand a execute, což jsou základní 
metody pro implementaci příkazu do Vašeho bota. Každý příkaz bude 
potomkem třídy BotCommand, a bude mít za povinnost definovat metodu 
getCommandText, která vrátí text příkazu, a metodu execute, která vykoná 
příkaz.

Pokud chcete řešit i mapování příkazů, vytvořte si třídu 
BotCommandManager, která bude mít metodu registerCommand pro registraci 
příkazu, a uvnitř třídy bude slovník, který jako klíč bude obsahovat 
text příkazu (zjištění voláním metody getTextCommand při registraci 
příkazu) a jako hodnotu referenci na instanci potomka třídy BotCommand.

Budete to mít velmi jednoduché na psaní, bude to pár řádků kódu, 
přehledné, udržovatelné, prostě nej, nej, nej, tisíce děkovných dopisů, 
a tak dále ...

Miloslav Ponkrác

Martin Stiborský napsal(a):
> Ano, takto jsem to měl doteď udělané, ale pak jsem jednou potřeboval
> mít jméno metody a vyvolávací slovo jiné a vznikl problém, navíc jsem
> chtěl znát řešení, prostě aby možnost nastavit vyvolávací slovo byla
> ..
>
> Dne 31. červenec 2008 22:51 Jan Bednařík <jan.bednarik na gmail.com> napsal(a):
>   
>> A proč se ty metody nepojmenuješ stejně jako klíčová slova na která mají
>> reagovat?
>>     
>
>
>   



Další informace o konferenci Python