IT rekvalifikácia. Seniorní programátori zarábajú až 6 000 €/mesiac a rekvalifikácia je prvým krokom. Zisti, ako na to!

Diskusia – 1. diel - Úvod do objektovo orientovaného programovania v C#

Späť

Upozorňujeme, že diskusie pod našimi online kurzami sú nemoderované a primárne slúžia na získavanie spätnej väzby pre budúce vylepšenie kurzov. Pre študentov našich rekvalifikačných kurzov ponúkame možnosť priameho kontaktu s lektormi a študijným referentom pre osobné konzultácie a podporu v rámci ich štúdia. Toto je exkluzívna služba, ktorá zaisťuje kvalitnú a cielenú pomoc v prípade akýchkoľvek otázok alebo projektov.

Komentáre
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.

Odpovedať
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
Odpovedá 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ě.

Odpovedať
20.10.2012 16:44
New kid back on the block with a R.I.P
Avatar
Kit
Tvůrce
Avatar
Odpovedá 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.

Odpovedať
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
Odpovedá 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.

Odpovedať
20.10.2012 17:14
New kid back on the block with a R.I.P
Avatar
Kit
Tvůrce
Avatar
Odpovedá 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.

Odpovedať
20.10.2012 17:26
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
milos
Nevyplnené
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.

 
Odpovedať
15.9.2013 21:42
Avatar
David Hartinger
Vlastník
Avatar
Odpovedá 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.

Odpovedať
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.

Odpovedať
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

 
Odpovedať
1.3.2018 14:02
Avatar
Ondřej Štorc
Tvůrce
Avatar
Odpovedá 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.

Odpovedať
1.3.2018 14:15
Život je příliš krátký na to, abychom bezpečně odebírali USB z počítače..
Robíme čo je v našich silách, aby bola tunajšia diskusia čo najkvalitnejšia. Preto do nej tiež môžu prispievať len registrovaní členovia. Pre zapojenie sa do diskusie sa zaloguj. Ak ešte nemáš účet, zaregistruj sa, je to zadarmo.

Zatiaľ nikto nevložil komentár - buď prvý!