Fórum Root.cz

Hlavní témata => Vývoj => Téma založeno: fortran1986 15. 07. 2019, 18:33:20

Název: Prototypové OOP
Přispěvatel: fortran1986 15. 07. 2019, 18:33:20
Vedeli by ste mi vysvetliť:

1. definíciu a základnú charakteristiku prototypového OOP
2. jeho hlavné výhody / nevýhody
3. Porovnanie s inými typmi OOP
4. vymenovať zaujímavé jazyky ktoré tento typ OOP podporujú
Název: Re:Prototypové OOP
Přispěvatel: Filip Jirsák 16. 07. 2019, 11:00:53
Nejrozšířenější jazyk používající prototypovou dědičnost je JavaScript. O prototypové dědičnosti v JavaScriptu si můžete přečíst např. v článku Třídy, dědičnost a OOP v Javascriptu – II (https://www.zdrojak.cz/clanky/tridy-dedicnost-a-oop-v-javascriptu-ii/).
Název: Re:Prototypové OOP
Přispěvatel: fortran1986 16. 07. 2019, 11:41:33
Nejrozšířenější jazyk používající prototypovou dědičnost je JavaScript. O prototypové dědičnosti v JavaScriptu si můžete přečíst např. v článku Třídy, dědičnost a OOP v Javascriptu – II (https://www.zdrojak.cz/clanky/tridy-dedicnost-a-oop-v-javascriptu-ii/).

Viem najpoužívanejšie prototypové jazyky sú JS a Lua.

Ja by som sa prototypovaniu detailnejšie pozrel na zúbky, ale zrovna JS ho ma trošku zmršené.

Zato taký Self ho má spravené veľmi pekne a zrozumiteľne... Self má, ale veľkú nevýhodu v tom že potrebuje image. Ale napr. Perlovská (Class::Prototyped) má prototype oop na štýl selfu https://metacpan.org/pod/Class::Prototyped#NAME dodržiava aj názvoslovie (addSlots), ale narozdiel od selfu nepotrebuje image.
Název: Re:Prototypové OOP
Přispěvatel: Ondrej Nemecek 16. 07. 2019, 21:51:14
Zato taký Self ho má spravené veľmi pekne a zrozumiteľne... Self má, ale veľkú nevýhodu v tom že potrebuje image. Ale napr. Perlovská (Class::Prototyped) má prototype oop na štýl selfu https://metacpan.org/pod/Class::Prototyped#NAME dodržiava aj názvoslovie (addSlots), ale narozdiel od selfu nepotrebuje image.

Hlavní problém Selfu určitě není nutnost image. Proč by měla být nutnost image vůbec nevýhoda?

Prototypově programovat můžete nějak nejspíš v nejrůznějších jazycích. Ale v jazyce přímo založeném na prototypech tím získáte určitě víc. Dotaz je moc obecný... a za chvíli tu bude stejně flame.
Název: Re:Prototypové OOP
Přispěvatel: Ink 17. 07. 2019, 07:39:26
Co přesně má to (prototypové) OOP řešit, zajímá Tě to jenom tak, nebo s tím chceš i něco dělat? Úplně chápu, pokud někdo studuje exotické (lidské) jazyky, kultury a organismy, ale z praktického hlediska...
Název: Re:Prototypové OOP
Přispěvatel: Ondrej Nemecek 17. 07. 2019, 16:04:17
Co přesně má to (prototypové) OOP řešit, zajímá Tě to jenom tak, nebo s tím chceš i něco dělat? Úplně chápu, pokud někdo studuje exotické (lidské) jazyky, kultury a organismy, ale z praktického hlediska...

Pro každého je praktické něco jiného. IMHO javascript je stále populární a může se hodit vědět, jak funguje. Anebo se pak člověk dostane k lepší práci, protože tam třeba bude mít možnost uplatnit rozhled (i když k tomuto levelu je ještě delší cesta, nestačí obecně vědět co to prototypové OOP je).
Název: Re:Prototypové OOP
Přispěvatel: fortran1986 17. 07. 2019, 20:17:26
Hlavní problém Selfu určitě není nutnost image. Proč by měla být nutnost image vůbec nevýhoda?

Je to môj subjektívny problém. Nemám čas učiť sa popri novom jazyku s novou sémantikou ešte aj nové prostredie a celý nový ekosystém. Inak myslím že image je zaujímavý koncept, ale mne osobne to v tejto situácii nevyhovuje, ale možno predsa len prekonám odpor. Ale inak self sa mi ako jazyk veľmi páči, len škoda toho image :/

Co přesně má to (prototypové) OOP řešit, zajímá Tě to jenom tak, nebo s tím chceš i něco dělat?

Chcem sa to proste naučiť do hĺbky, zatiaľ mi ide len o teóriu, ktorú ale plánujem využiť pri jednom konkrétnom projekte.

Co přesně má to (prototypové) OOP řešit, zajímá Tě to jenom tak, nebo s tím chceš i něco dělat? Úplně chápu, pokud někdo studuje exotické (lidské) jazyky, kultury a organismy, ale z praktického hlediska...

Pro každého je praktické něco jiného. IMHO javascript je stále populární a může se hodit vědět, jak funguje. Anebo se pak člověk dostane k lepší práci, protože tam třeba bude mít možnost uplatnit rozhled (i když k tomuto levelu je ještě delší cesta, nestačí obecně vědět co to prototypové OOP je).

JS (resp TS) ma živí a viem ako v ňom prototypy fungujú ale chcel som viac zabrdnúť do teórie a rád by som si prototypy pozrel aj z perspektívy iných jazykov. A Self bol predsa len prvý.
Název: Re:Prototypové OOP
Přispěvatel: gill 18. 07. 2019, 07:36:36
Nejrozšířenější jazyk používající prototypovou dědičnost je JavaScript. O prototypové dědičnosti v JavaScriptu si můžete přečíst např. v článku Třídy, dědičnost a OOP v Javascriptu – II (https://www.zdrojak.cz/clanky/tridy-dedicnost-a-oop-v-javascriptu-ii/).

Viem najpoužívanejšie prototypové jazyky sú JS a Lua.

Ja by som sa prototypovaniu detailnejšie pozrel na zúbky, ale zrovna JS ho ma trošku zmršené.

Zato taký Self ho má spravené veľmi pekne a zrozumiteľne... Self má, ale veľkú nevýhodu v tom že potrebuje image. Ale napr. Perlovská (Class::Prototyped) má prototype oop na štýl selfu https://metacpan.org/pod/Class::Prototyped#NAME dodržiava aj názvoslovie (addSlots), ale narozdiel od selfu nepotrebuje image.

V čem je to jiné než v JS, kromě názvosloví sloty vs. atributy?
Název: Re:Prototypové OOP
Přispěvatel: Ink 18. 07. 2019, 11:13:36
Co přesně má to (prototypové) OOP řešit, zajímá Tě to jenom tak, nebo s tím chceš i něco dělat? Úplně chápu, pokud někdo studuje exotické (lidské) jazyky, kultury a organismy, ale z praktického hlediska...

Pro každého je praktické něco jiného. IMHO javascript je stále populární a může se hodit vědět, jak funguje. Anebo se pak člověk dostane k lepší práci, protože tam třeba bude mít možnost uplatnit rozhled (i když k tomuto levelu je ještě delší cesta, nestačí obecně vědět co to prototypové OOP je).

Jsem ten poslední člověk na světě, který by byl proti obecnému rozhledu. Nicméně i do toho JavaScriptu přibylo třídy, domnívám se, že prototypové OOP obecně není moc osvědčený způsob psaní programů, proto jsem se ptal, co s tím chtěl původní tazatel řešit.
Název: Re:Prototypové OOP
Přispěvatel: Ondrej Nemecek 18. 07. 2019, 14:43:32
JS (resp TS) ma živí a viem ako v ňom prototypy fungujú ale chcel som viac zabrdnúť do teórie a rád by som si prototypy pozrel aj z perspektívy iných jazykov. A Self bol predsa len prvý.

To Vám určitě neunikly články na Bystroushaakově blogu


IMHO je to realistické shrnutí stavu ohledně Selfu. O Selfu na Ábíčku psal i Pavel Křivánek.

Název: Re:Prototypové OOP
Přispěvatel: gill 19. 07. 2019, 13:08:23
Co přesně má to (prototypové) OOP řešit, zajímá Tě to jenom tak, nebo s tím chceš i něco dělat? Úplně chápu, pokud někdo studuje exotické (lidské) jazyky, kultury a organismy, ale z praktického hlediska...

Pro každého je praktické něco jiného. IMHO javascript je stále populární a může se hodit vědět, jak funguje. Anebo se pak člověk dostane k lepší práci, protože tam třeba bude mít možnost uplatnit rozhled (i když k tomuto levelu je ještě delší cesta, nestačí obecně vědět co to prototypové OOP je).

Jsem ten poslední člověk na světě, který by byl proti obecnému rozhledu. Nicméně i do toho JavaScriptu přibylo třídy, domnívám se, že prototypové OOP obecně není moc osvědčený způsob psaní programů, proto jsem se ptal, co s tím chtěl původní tazatel řešit.

třídy v JS jsou jen jiný zápis prototypového OOP.
Název: Re:Prototypové OOP
Přispěvatel: fortran1986 19. 07. 2019, 18:00:10
Jsem ten poslední člověk na světě, který by byl proti obecnému rozhledu. Nicméně i do toho JavaScriptu přibylo třídy, domnívám se, že prototypové OOP obecně není moc osvědčený způsob psaní programů, proto jsem se ptal, co s tím chtěl původní tazatel řešit.

Prototypy sú krásne v tom že sú jednoduché a elegantné zároveň... A dávajú Vám omnoho viac možností ako klasické triedy. Ale viete si pomocou nich doplniť do jazyka aj tie triedy, alebo multiple inheritance, traity, extension metódy. Ako napísal gill, tiredy v JS sú len syntaktický cukor nad prototypmi.

To Vám určitě neunikly články na Bystroushaakově blogu

  • http://www.abclinuxu.cz/blog/bystroushaak/2019/2/prostredi-a-programovaci-jazyk-selfu-dil-prvni-prostredi
  • http://www.abclinuxu.cz/blog/bystroushaak/2019/2/prostredi-a-programovaci-jazyk-selfu-dil-druhy-jazyk
  • http://www.abclinuxu.cz/blog/bystroushaak/2019/2/prostredi-a-programovaci-jazyk-selfu-dil-treti
  • http://www.abclinuxu.cz/blog/bystroushaak/2019/2/prostredi-a-programovaci-jazyk-selfu-dil-ctvrty

IMHO je to realistické shrnutí stavu ohledně Selfu. O Selfu na Ábíčku psal i Pavel Křivánek.

Ďakujem za typy na zaujímavé články :)