NOVINKA: Získej 40 hodin praktických dovedností s AI – ZDARMA ke každému akreditovanému kurzu!

Diskuze – Lekce 4 - Zapouzdření v PHP

Zpět

Upozorňujeme, že diskuze pod našimi online kurzy jsou nemoderované a primárně slouží k získávání zpětné vazby pro budoucí vylepšení kurzů. Pro studenty našich rekvalifikačních kurzů nabízíme možnost přímého kontaktu s lektory a studijním referentem pro osobní konzultace a podporu v rámci jejich studia. Toto je exkluzivní služba, která zajišťuje kvalitní a cílenou pomoc v případě jakýchkoli dotazů nebo projektů.

Komentáře
Avatar
Kit
Tvůrce
Avatar
Kit:3.8.2013 13:32

Spíš se používá pravidlo, že metoda by neměla mít víc než 20 řádek a třída 60 řádek, řádky se zalamují po max 78 znacích. Slovo "neměla" však neznamená nepřekročitelný limit.

Odpovědět
3.8.2013 13:32
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Kit
David Hartinger:3.8.2013 13:56

To máš s atributy a phpdoc 2 metody na třídu, to je poněkud neefektivní.

Odpovědět
3.8.2013 13:56
New kid back on the block with a R.I.P
Avatar
Petr Nymsa
Tvůrce
Avatar
Odpovídá na Kit
Petr Nymsa:3.8.2013 13:58

60 řádků na třídu ? To mi přijde hodně nizký limit :) Vždyť ani taková třída která je jako CRUD wrapper nad DB poruší podle mě tenhle limit

Odpovědět
3.8.2013 13:58
Pokrok nezastavíš, neusni a jdi s ním vpřed
Avatar
Kit
Tvůrce
Avatar
Odpovídá na David Hartinger
Kit:3.8.2013 14:03

Metody bývají obvykle výrazně kratší, takže se jich tam 8-10 vejde. Kromě toho to není nepřekročitelné maximum.

Petr Nymsa: CRUD wrapper nad DB se mi do 60 řádek v pohodě vejde.

Odpovědět
3.8.2013 14:03
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Petr Nymsa
Tvůrce
Avatar
Odpovídá na Kit
Petr Nymsa:3.8.2013 14:06

Jo teď si na to tak koukám a vejde se :) Ale i tak, občas je třída, kde rozložení na víc komponent by spíš ublížilo a sem tam se ten limit překročí. Třeba mám třídu pro různé efekty nad textem, obrázky apod. Jsou to různé metody a je zbytečné to rozdělovat do více tříd

Odpovědět
3.8.2013 14:06
Pokrok nezastavíš, neusni a jdi s ním vpřed
Avatar
Kit
Tvůrce
Avatar
Odpovídá na Petr Nymsa
Kit:3.8.2013 14:12

Pokud se sem-tam ten limit překročí, nic se neděje, ale třeba 200řádková třída už je nepřehledná a je lepší ji v návrhu logicky rozdělit na více komponent. Obvykle s tím není problém a řešení je najednou čistější a hezčí.

Odpovědět
3.8.2013 14:12
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Michal Žůrek - misaz:3.8.2013 14:35

já tyto limity moc neřeším...

 
Odpovědět
3.8.2013 14:35
Avatar
Kit
Tvůrce
Avatar
Odpovídá na Michal Žůrek - misaz
Kit:3.8.2013 14:44

Také mám v provozu jednu funkční aplikaci, která má 700 řádek bez tříd a funkcí, prostě nudli. Když jsem v tom měl něco modifikovat, tak se mi moc nechtělo a celé se mi to také nechce přepisovat. Předělávej něco, co funguje.

Proto je dobré tu dekompozici udělat hned na začátku.

Odpovědět
3.8.2013 14:44
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Odpovídá na Kit
Michal Žůrek - misaz:3.8.2013 14:52

Já mám i 1400 řádků a taky funguje.

Spíš de o to že příliš neřeším max délku řádku, max počet řádků v třídě atd.

 
Odpovědět
3.8.2013 14:52
Avatar
Kit
Tvůrce
Avatar
Odpovídá na Michal Žůrek - misaz
Kit:3.8.2013 15:02

Nedávno jsem ve Wordpressu našel skript, který má 35k řádek a také funguje. Rozhodně to však není dobrý příklad, jak se má programovat. Ten kód vypadá přímo hnusně.

Odpovědět
3.8.2013 15:02
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 10 zpráv z 53.