« 1 2
Autor Zpráva
Tori
Profil
H13:
Nelze určit hranici mezi procedurálním kódem a OOP
Připadá mi, že jedinou příčinou vašich neshod s ostatními je to, že jako OOP označujete samotný kód (tedy cokoli, co je uzavřené do tříd), kdežto Joker a ostatní mluví o OOP na úrovni návrhu aplikace (jehož důsledkem je objektový kód).
H13
Profil
Joker:
Jenže to není objektově-orientované programování.
Ale to já přeci netvrdím, ba právě naopak, tvrdím, že většina projektů obsahuje jak OOP tak i procedurální kód a někteří právě i ten procedurální kód považují za OOP. Příkladem jsem uvedl, že i volání statické metody by někdo mohl považovat za procedurální (totožné jako volání funkce v procedurálním kódu) a někdo za OOP.

Já osobně bych si nikdy netroufnul označit ten či onen kód za OOP nebo ne OOP, protože jak jsem uvedl, neznám hranice, kdy začíná to a končí ono.


Tori
Ano, asi ano :-)

Na příkladu volání statické metody jsem chtěl naznačit, že někdo to může nazvat jako OOP (i když se podle některých o OOP nemusí jednat), někdo jako procedurální postup a že někdy (zvláště pokud se využívají externí knihovny) takovéto statické volání do externí knihovny nemusí znamenat, že se jedná o paskvil.

Reagoval jsem na toto:
Neexistuje žádný mezistupeň mezi procedurálním stylem a OOP a to tak, že podle mého názoru takový mezistupeň prostě existuje (ať už to někdo dělá vědomě - dobrovolně, nedobrovolně (zvláště kvůli externí knihovně), nebo nevědomě. Samozřejmě, pokud to dělá někdo vědomě dobrovolně nebo nevědomě, tak to samozřejmě neobhajuju. Jen říkám, že to prostě existuje a na rozdíl od ShiraNai7 to nepovažuji za paskvil ( protože cokoliv mezi je prostě paskvil ), pokud to má nějakej řád a důvod.
Joker
Profil
Tori:
Přesně tak, to je o čem mluvím. Objektově orientované programování je způsob uvažování. Záleží na návrhu programu, ne na tom jestli se v kódu vyskytuje klíčové slovo class a operátory -> anebo ::

H13:
podle mého názoru takový mezistupeň prostě existuje
Určitě existuje, ale nejsem si jistý, jestli může zároveň existovat a přitom to nebýt chybný návrh programu.
Jinak ale nepochybně ve většině „objektových“ jazyků lze udělat program, který bude porušovat zásady OOP, úplně stejně jako ve většině strukturovaných jazyků (včetně PHP) lze napsat program, který bude porušovat zásady strukturovaného programování.
Otázka je, jestli to nejde prostě označit za chybu v návrhu programu.
Bertram
Profil
Statické metody vyžadují, aby všechny členské proměnné byly také statické. Z toho také vyplívá kdy a proč je využívat.
Někdo se tomu zuby nechty brání, ale když je jisté,že metoda vrátí pokaždé stejný výsledek naco vytvářet objekt.
« 1 2

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: