Má cenu přeučovat se do OOP?

Oldrich

Re:Má cenu přeučovat se do OOP?
« Odpověď #75 kdy: 13. 10. 2014, 17:49:23 »
1. si nedokazu predstavit, kdybych mel dnes v PHP psat neco neobjektove

ale za to my nemuzeme ...


Kolemjdoucí

Re:Má cenu přeučovat se do OOP?
« Odpověď #76 kdy: 13. 10. 2014, 17:54:51 »
OOP je nic než způsob jak si usnadnit práci a není žádné ne-OOP a OOP programování, programuje se pořád stejně, pouze při OOP stylu některé časté činnosti píše kompilátor za programátora, tudíž se ušetří psaní a mírně se zpřehlední kód.

Tato diskuze vznikla jen a pouze proto, že ohledně OOP už se nakydalo tolik planých řečí že už se v tom začátečníci ztrácejí. OOP je logický vývoj programátorských technik, naučit se ho je třeba bez diskuzí.

Ovrscout

Re:Má cenu přeučovat se do OOP?
« Odpověď #77 kdy: 13. 10. 2014, 18:01:30 »
To hlavní na objektově orientovaném programování je členění kódu na menší části, které samy o sobě dávají dobrý smysl, lze je elegantně použít, je u nich zřejmé, co nabízí okolnímu světu. Tedy lze pochopit jejich smysl a funkci, lze je testovat, lze je znovupoužít apod.

ne , tomuhle se rika modularizace

Mohu poprosit o tvou definici toho co je na OOP to hlavní? Protože zhruba to co h7 napsal jsem si odnesl z těch několika knížek a článků co jsem o tom četl.

Re:Má cenu přeučovat se do OOP?
« Odpověď #78 kdy: 13. 10. 2014, 18:12:33 »
OOP je nic než způsob jak si usnadnit práci a není žádné ne-OOP a OOP programování, programuje se pořád stejně, pouze při OOP stylu některé časté činnosti píše kompilátor za programátora, tudíž se ušetří psaní a mírně se zpřehlední kód

To sotva. Je to koncepcne neco jineho a je nutne myslet jinak. Samozrejme ze za obojim je nejaka jeste obecnejsi sada myslenek (dekompozice...), daji se najit ruzne analogie, v jednom pristupu si muzes odsimulovat jiny (ostatne turing-churchova teze, zda se, plati)... ale pekny proceduralni kod bude hodne jiny nez pekny oo kod a pekny funkcionalni kod resici ten samy problem.

Kolemjdoucí

Re:Má cenu přeučovat se do OOP?
« Odpověď #79 kdy: 13. 10. 2014, 18:19:38 »
To sotva. Je to koncepcne neco jineho a je nutne myslet jinak.

Tato nepravda se tvrdí tak dlouho, až tomu lidé uvěřili a jsou zmatení :)
Procedurální kód na velkém projektu se limitně blíží koncepci OOP, jenom s tím rozdílem že spousta opakujících se věcí se píše ručně nebo přes makra. Zobecněním těch maker vzniklo OOP a to za účelem ušetření práce.

Funkcionální teď neřeším.


Re:Má cenu přeučovat se do OOP?
« Odpověď #80 kdy: 13. 10. 2014, 18:22:58 »
Jo, jedno v druhem si odsimulujes. Jak to pak vypada je jina vec.

Kolemjdoucí

Re:Má cenu přeučovat se do OOP?
« Odpověď #81 kdy: 13. 10. 2014, 18:29:58 »
Jo, jedno v druhem si odsimulujes. Jak to pak vypada je jina vec.

Na pohled to vypadá přibližně stejně, s OOP je to mírně přehlednější a pracuje se s tím líp.
Připomínám že nejsem proti OOP, jenom není pravda že OOP je něco naprosto nového a jiného, takže by se toho měli začátečníci bát.

Re:Má cenu přeučovat se do OOP?
« Odpověď #82 kdy: 13. 10. 2014, 18:40:43 »
Tak pokud prezili "oop" v proceduralnim jazyce, tak se skutecne bat nemuseji.

Jinak na polymorfismu si tyhle pokusy simulovat oop v proceduralnich jazycich vetsinou lamou zuby v okamziku, kdy se pokusis o neco jako mixin.

JSH

Re:Má cenu přeučovat se do OOP?
« Odpověď #83 kdy: 13. 10. 2014, 19:30:03 »
To hlavní na objektově orientovaném programování je členění kódu na menší části, které samy o sobě dávají dobrý smysl, lze je elegantně použít, je u nich zřejmé, co nabízí okolnímu světu. Tedy lze pochopit jejich smysl a funkci, lze je testovat, lze je znovupoužít apod.

ne , tomuhle se rika modularizace

Mohu poprosit o tvou definici toho co je na OOP to hlavní? Protože zhruba to co h7 napsal jsem si odnesl z těch několika knížek a článků co jsem o tom četl.
Mám to chápat tak, že si OOP dělá monopol na knihovny? To, co h7 napsal je jejich celkem přesný popis :)

V OOP se hlavně modeluje pomocí objektů, které poskytují nějaké rozhranní a data jsou schovaná. Způsob návrhu je myslím to hlavní, co dělá OOP, protože jinak se všechny ostatní vlastnosti běžně vyskytují i v neobjektovém programování.

Radek Miček

Re:Má cenu přeučovat se do OOP?
« Odpověď #84 kdy: 13. 10. 2014, 19:45:50 »
které poskytují nějaké rozhranní a data jsou schovaná.

Tohle umí libovolný jazyk s existenciálními typy.

Radek Miček

Re:Má cenu přeučovat se do OOP?
« Odpověď #85 kdy: 13. 10. 2014, 20:02:14 »
Mohu poprosit o tvou definici toho co je na OOP to hlavní? Protože zhruba to co h7 napsal jsem si odnesl z těch několika knížek a článků co jsem o tom četl.

Zajímavým jevem v OOP je rekurze - v definicích metod můžete používat metody, jenž ještě nebyly definovány (budou definovány později v téže třídě nebo dokonce až v podtřídě).

Kolemjdoucí

Re:Má cenu přeučovat se do OOP?
« Odpověď #86 kdy: 13. 10. 2014, 20:06:10 »
Tak pokud prezili "oop" v proceduralnim jazyce

Každý větší projekt k tomu přirozeně a samovolně dospěje, již jsem to uvedl.

Zajímavým jevem v OOP je rekurze - v definicích metod můžete používat metody, jenž ještě nebyly definovány

To také není vynález OOP, který by před OOP neexistoval.

Re:Má cenu přeučovat se do OOP?
« Odpověď #87 kdy: 13. 10. 2014, 20:14:00 »
...
Zajímavým jevem v OOP je rekurze - v definicích metod můžete používat metody, jenž ještě nebyly definovány (budou definovány později v téže třídě nebo dokonce až v podtřídě).

 :o  :o  :o
To je rekurze?

Radek Miček

Re:Má cenu přeučovat se do OOP?
« Odpověď #88 kdy: 13. 10. 2014, 20:47:34 »
:o  :o  :o
To je rekurze?

Ano, přesněji se tomu říká otevřená rekurze - viz Closed and Open Recursion (autor Ralf Hinze).

Tomáš Marný

Re:Má cenu přeučovat se do OOP?
« Odpověď #89 kdy: 13. 10. 2014, 21:16:31 »
Teda z téhle diskuse mám takový pocit, že pod OOP někteří schovávají vše, co považují za přínosné a dobré, přitom se vlastně nejsou schopni shodnout na nějaké univerzální definici. To už jsou příznaky náboženství.

...a pak se tu někdo diví, že programy vypadají, jak vypadají, když v 90% se vyžaduje objektový přístup a zároveň 90% vývojářů vlastně pořádně ani neví, co to OOP je a každý si pod tím představuje to svoje. Nakonec se dozvídáme, že strukturování a dekompozice programu na menší funkční bloky je taky vynález OOP, že OOP asi vynalezlo knihovny, že OOP vynalezlo složené datové typy...

Dovolil bych si to tedy shrnout a zobecnit do jedné nábožensky korektní definice: OOP je vše, co je moderní a pokrokové.

:D