NOVINKA: Získej 40 hodin praktických dovedností s AI – ZDARMA ke každému akreditovanému kurzu!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze – Lekce 1 - Úvod do objektově orientovaného programování v C#

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:20.10.2012 16:34

Je dost nešťastné označit pojem "člověk" jako objekt a o několik řádek níž použít pojem "člověk" jako třídu. "člověk" je třída, "Franta" je instancí třídy "člověk".

"Praha" a "Brno" jsou objekty třídy "město".
"Alík" a "Asta" jsou objekty třídy "pes".

V reálném životě objekt od třídy rozeznáme tak, že název objektu píšeme zpravidla s velkým písmenem na začátku slova, název třídy s malým písmenem. V mnohých programovacích jazycích bývá zvykem to psát přesně naopak. Nikdo neví proč, ale je to tak.

Odpovědět
20.10.2012 16:34
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:20.10.2012 16:44

Hádám, že je to proto, aby OOP navázalo na předešlé konvence, kde proměnné byly malými písmeny.

Pojem objekt je vůbec dost nejednoznačný, ale už se to tak jmenuje (není to instanční programování), proto ho musím používat a nebudu hned zpočátku plést instancí. GameMaker říká třídě object, asi na to přišel podobně.

Odpovědět
20.10.2012 16:44
New kid back on the block with a R.I.P
Avatar
Kit
Tvůrce
Avatar
Odpovídá na David Hartinger
Kit:20.10.2012 17:00

Ještě zajímavější je to v Javascriptu a dalších skriptovacích jazycích, kde místo tříd jsou prototypy, které se však chovají odlišně.

Myslím si, že tvůj odhad ohledně velkých/malých písmen se blíží realitě. V HTML bylo zpočátku zvykem psát tagy velkými písmeny, aby se odlišily od okolního textu. Dnes se píší malými a v XHTML dokonce povinně. V jazyku SQL je zvykem psát klíčová slova velkými písmeny a názvy polí malými. Přitom dnes v době barvení syntaxe v editoru to je zbytečné. Třeba to někdy bude naopak.

Odpovědět
20.10.2012 17:00
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:20.10.2012 17:14

Někde jsem slyšel, že aby se nějaké paradigma uchytilo, tak v sobě musí obsahovat většinu toho minulého (myslím, že to bylo 90%). OOP procedurální kód vlastně pouze rozvíjí. Asi proto jsou tak úspěšné i céčkové jazyky, ORM (oproti non-relačním databázím) a tak dále. Asi to funguje.

Odpovědět
20.10.2012 17:14
New kid back on the block with a R.I.P
Avatar
Kit
Tvůrce
Avatar
Odpovídá na David Hartinger
Kit:20.10.2012 17:26

Možná proto se tolik neuchytily funkcionální a deklarativní jazyky. Jsou sice velmi efektivní, ale je to tak zásadní změna paradigmatu, že je to pro programátory "zkažené" imperativními jazyky obtížné pochopit.

Odpovědět
20.10.2012 17:26
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
milos
Neregistrovaný
Avatar
milos:15.9.2013 21:42

Sám příkaz GOTO není škodlivý, do něj se nakonec přeloží i cykl. Pořádek je možné udržet i v assembleru nebo puvodnim basicu, jde o to, aby kod byl strukturovaný. A to jsem zažil hezký program v assembleru ale i pole proměnných návěští v PL/1 (ačkoli i to mělo své důvody, které později pominuly).

Znovupoužitelnost není objev OOP nebo modulárního programování - vznikaly knihovny procedur, které zapouzdřovaly funkce a daly se používat univerzálně.

"Spaghetti code" tedy neznamená neobjektový kod, ale neorganizovaný kod.

 
Odpovědět
15.9.2013 21:42
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na
David Hartinger:17.9.2013 10:01

Pořádek by teoreticky šlo udržet na silnici i bez značení, čar a semaforů. I když by to pár řidičů asi zvládlo, dokážeš si představit, jak by to vypadalo v praxi. Kdyby to fungovalo, tak by OOP nevzniklo. Knihovny jsou spíše takovým mezikrokem, určitě jde mluvit o znovupoužitelnosti, ale těžko o komponentách.

Odpovědět
17.9.2013 10:01
New kid back on the block with a R.I.P
Avatar
martin.stiglinc
Tvůrce
Avatar
martin.stiglinc:4.6.2015 18:27

Tento Vas tutorial je zatial to najlepsie co som na webe nasiel :-) Len tak dalej :D Diki moc za cenne informacie a hlavne zrozumitelne vysvetlenie.

Odpovědět
4.6.2015 18:27
Tomorow is the very first day of the rest of your life.
Avatar
Petr Zajac
Člen
Avatar
Petr Zajac:1.3.2018 14:02

Předchozí díly jsem tak nějak pochopil a děkuju za ně.
Ale tenhle díl nechápu prakticky zatím vůbec :-/
Navíc netuším jestli v odstavci "Strojový kód" není překlep, protože tam najednou používáte "zdrojový kód" :-O

 
Odpovědět
1.3.2018 14:02
Avatar
Ondřej Štorc
Tvůrce
Avatar
Odpovídá na Petr Zajac
Ondřej Štorc:1.3.2018 14:15

Strojový kód je také zdrojový, to se nevylučuje :-) Jak říká Wikipedia (https://cs.m.wikipedia.org/…Zdrojový_kód) tak zdrojový kód je zápis programu, což strojový splňuje.

Odpovědět
1.3.2018 14:15
Život je příliš krátký na to, abychom bezpečně odebírali USB z počítače..
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 44.