NOVINKA: Najžiadanejšie rekvalifikačné kurzy teraz s 50% zľavou + kurz AI ZADARMO. Nečakaj, táto ponuka dlho nevydrží! Zisti viac:
Avatar
beats.omni
Člen
Avatar
beats.omni:2.2.2016 14:41

Ahoj, programuji v C# a mám ho už docela dost prolezlý. Samozřejmě tam budu pořád něco objevovat, ale umím dost na to, abych mohl tvořit aplikace a nepsal jako "prase". Rád bych si studium tohoto konkrétního jazyka proložil studiem "těch věcí okolo". Akorát nevím, kde a u čeho začít. Algoritmy? Nebo něco jiného?

Případně, jakou základní teorii, kromě znalosti syntaxe daného jazyka, by měl programátor ovládat?

 
Odpovedať
2.2.2016 14:41
Avatar
Odpovedá na beats.omni
Ondřej Langr (andysekcze):2.2.2016 15:57

No třeba C++ nebo Java

Hore Odpovedať
2.2.2016 15:57
I have a charger. I have Note 7. Umh I haven't Note7.
Avatar
beats.omni
Člen
Avatar
Odpovedá na Ondřej Langr (andysekcze)
beats.omni:2.2.2016 16:10

Ahoj, to jsou ale zase další jazyky. O to mi primárně nejde. Jde mi o dodatečné znalosti, kromě toho jak programovat v daném jazyce.

Co jsem se díval, tak jsem narazil např. na Grafy a grafové algoritmy, Složitost algoritmů, Datové typy - zásobnik, fronta, stromy; Datové struktury, atd. Nevím, co z toho bych měl jako programátor znát hodně dobře a co třebas jen okrajově. S ohledem na to, že pravděpodobně budu programovat "běžné" business aplikace a nic přelomového vynalézat nebudu.

 
Hore Odpovedať
2.2.2016 16:10
Avatar
Odpovedá na beats.omni
Ondřej Krsička:2.2.2016 16:46

Včera jsem si koupil knihu http://knihy.cpress.cz/…itmy-d2.html a zatím maximálně doporučuju (jsem na straně 45 z 367). Příklady jsou v C++ a je tam to co říkáš + hodně cvičení a právě než jsem si koupil tu knížku tak jsem měl úplně stejný problém jako ty.

Jako jazyk ti můžu doporučit Python, na který jsem přešel ze C#. Když jsem si na něj zvyknul, pocit produktivity oproti C# náramně vzrostl.

Konkrétně třeba na procvičení rekurze je perfektní želví grafika.

 
Hore Odpovedať
2.2.2016 16:46
Avatar
Odpovedá na beats.omni
Neaktivní uživatel:2.2.2016 17:19

Jestli plánuješ dělat "běžné business" aplikace, tak co Microsoftí databáze? Tam se můžeš učit docela dost a pro většinu aplikací se to bude celkem hodit :)

Hore Odpovedať
2.2.2016 17:19
Neaktivní uživatelský účet
Avatar
beats.omni
Člen
Avatar
Odpovedá na Ondřej Krsička
beats.omni:2.2.2016 18:22

Není tohle už trošku náročnější čtení? Případně, co všechno už musím umět, abych rozuměl obsahu té knihy.

 
Hore Odpovedať
2.2.2016 18:22
Avatar
Odpovedá na beats.omni
Ondřej Krsička:2.2.2016 18:41

Stačí umět základy programování, což umíš. A ano, odpočinková četba to určitě není, ale na matiku bys (podle autora - napsal to v úvodu) neměl narazit.

 
Hore Odpovedať
2.2.2016 18:41
Avatar
Odpovedá na Ondřej Krsička
Neaktivní uživatel:2.2.2016 18:50

ono jak se to vezme zejo, matika je vsude ... prece jenom algoritmy (ty efektivni) jsou prave stavene na nejakych matematickych principech ... ale rekneme, ze je to matika jina nez takova ta analiticka, pocitaci a tak .. je to neco do logiky a nejakeho toho algoritmickeho vnimani .. jinak ano kniha je dobra volba, taky podporuju

Hore Odpovedať
2.2.2016 18:50
Neaktivní uživatelský účet
Avatar
beats.omni
Člen
Avatar
Odpovedá na Ondřej Krsička
beats.omni:2.2.2016 18:53

Tak matika mi zrovna nevadí, tu zvládnu i trošku náročnější. A pokud pro zbytek je potřeba znát jen základy programování, tak do toho asi půjdu. Díky za tip.

 
Hore Odpovedať
2.2.2016 18:53
Avatar
Odpovedá na beats.omni
Štefan Pružinský:2.2.2016 18:56

Môžeš sa skúsiť obzrieť po nejakých stránkach precvičujúcich rôzne algoritmy napr. Checkio.org atď. Prípadne sa pusť do nejakého rozsiahlejšieho projektu... :)

Hore Odpovedať
2.2.2016 18:56
Najefektívnejším spôsobom debuggingu je modlitba. :)
Avatar
Odpovedá na Ondřej Krsička
Neaktivní uživatel:2.2.2016 22:23

Kniha vypadá zajímavě. Já sám bych si taky mohl koupit nějakou knihu o algoritmizaci. Díval jsem se po "Umění programování", ale z nějakého důvodu jsou v češtině jen dva díly a hlavně ten první se už nedá sehnat. Ne že bych tomu v angličtině nerozuměl, ale stejně je četba v češtině lepší...

Hore Odpovedať
2.2.2016 22:23
Neaktivní uživatelský účet
Avatar
mayo505
Tvůrce
Avatar
Odpovedá na Neaktivní uživatel
mayo505:2.2.2016 23:02

môžeš sa aj vybrať cestou zlepšovania svojho kódu a lepšiemu pochopeniu návrhu väčších aplikácií. To teraz robím ja, na to je kopa kníh napr.
clean code (uncle bob)
Design Patterns: Elements of Reusable Object-Oriented Software (GoF)
niečo s domain driven designom
patterns of entreprise application architecture (Fowler)

Editované
 
Hore Odpovedať
2.2.2016 23:02
Avatar
Odpovedá na mayo505
Neaktivní uživatel:2.2.2016 23:12

Zajímavé... ale stejně bych si asi prvně pořídil nějaký "výčet algoritmů". I když návrh aplikací zní taky lákavě. (Mimochodem nejsem zakladatel vlákna :-D)

Hore Odpovedať
2.2.2016 23:12
Neaktivní uživatelský účet
Avatar
mayo505
Tvůrce
Avatar
Odpovedá na Neaktivní uživatel
mayo505:3.2.2016 0:15

jáj prepáč, to som tak narýchlo označoval, bolo to myslené jemu :D

Editované
 
Hore Odpovedať
3.2.2016 0:15
Avatar
hanpari
Člen
Avatar
Odpovedá na beats.omni
hanpari:3.2.2016 14:22

http://www.allitebooks.com/…foundations/

Ale ne, dělám si srandu, nemohl jsem odolat :)

 
Hore Odpovedať
3.2.2016 14:22
Avatar
Majkel
Člen
Avatar
Odpovedá na hanpari
Majkel:3.2.2016 16:05

Ahoj, na tom odkazu je hromada super knížek. Díky moc.

 
Hore Odpovedať
3.2.2016 16:05
Avatar
beats.omni
Člen
Avatar
Odpovedá na Majkel
beats.omni:3.2.2016 16:33

Jenom škoda, že v EN. Anglicky pořád něco luštím na webu. Knížku bych raději v mateřštině.

 
Hore Odpovedať
3.2.2016 16:33
Avatar
Majkel
Člen
Avatar
Majkel:3.2.2016 16:58

Jen tak mimochodem, koukám, že tady nikdo neodpověděl na jednu z původně položených otázek..

Případně, jakou základní teorii, kromě znalosti syntaxe daného jazyka, by měl programátor ovládat?

...to by mě totiž taky dost zajímalo.

 
Hore Odpovedať
3.2.2016 16:58
Avatar
hanpari
Člen
Avatar
Odpovedá na Majkel
hanpari:3.2.2016 17:20

1/ http://checkio.org jak už radili předtím
2/ Odkaz na knihy není zač.

beats.omni
3/ Kašli na programování a uč se anglicky, pokud ti dělá problém číst v angličtině.

 
Hore Odpovedať
3.2.2016 17:20
Avatar
hanpari
Člen
Avatar
Odpovedá na Ondřej Krsička
hanpari:3.2.2016 17:24

Tahle se ti pravděpodobně bude líbit víc:
http://www.allitebooks.com/…2nd-edition/

 
Hore Odpovedať
3.2.2016 17:24
Avatar
Odpovedá na beats.omni
Ondřej Krsička:3.2.2016 17:27

Ta angličtina... Je to běžná angličtina + odborný věci. Čti co nejvíc anglicky a slovíčka co neznáš si zapisuj a občas si je projdi. Časem by to měl být menší a menší problém :-)

 
Hore Odpovedať
3.2.2016 17:27
Avatar
hanpari
Člen
Avatar
Odpovedá na beats.omni
hanpari:3.2.2016 17:44

Pokud vysloveně toužíš po mateřském jazyce, tak si prostuduj tohle:

http://is.muni.cz/…y-text10.pdf

Je to srozumitelný výcuc z této knihy:
http://www.cupress.cuni.cz/…xt/index.jsp?…

ale to už ti přijde jednodušší ta angličtina :)

No a pak pravděpodobně neseženeš tyhle:
http://knihy.cpress.cz/…nalosti.html
http://www.academia.cz/…-vzorce.html

 
Hore Odpovedať
3.2.2016 17:44
Avatar
Majkel
Člen
Avatar
Odpovedá na hanpari
Majkel:3.2.2016 18:49

Zrovna ty grafy by mě zajímaly, jak se dají použít v praxi. Chvilku jsem studoval základy grafových algoritmů, nikde jsem ale nenarazil na nějakou praktickou ukázku, jak se to používá v praxi.

 
Hore Odpovedať
3.2.2016 18:49
Avatar
Jaro
Člen
Avatar
Odpovedá na Majkel
Jaro:3.2.2016 19:36

grafy sa používajú vtedy, keď programuješ niečo, čo sa ti dobre reprezentuje pomocou grafu a potrebuješ hladať cesty, súčty váh... grafmi sa dajú reprezentovať rôzne relácie a podobne. Predstav si napríklad mestské MHD, železničnú sieť, aerolinky. Niektoré algoritmy (backtracking) sa dajú použiť na riešenie kadejakých problémov. Na backtrackingu je dokonca založený Prolog (logické programovanie), ono je toho dosť a je celkom dobré mať aspoň prehľad o tom, že také niečo existuje, pomocou grafových algoritmov sa dajú pomerne zložité problémy riešiť jednoducho.

Hore Odpovedať
3.2.2016 19:36
“What would you do if you were 100% sure you couldn’t fail?”
Avatar
Majkel
Člen
Avatar
Odpovedá na Jaro
Majkel:3.2.2016 19:42

No a já jsem právě našel všude jen teorii a nikde žádné příklady, které by mi to přiblížily. Samozřejmě něco polopatě a ne hned nějaký extremní příklad :-)

Editované
 
Hore Odpovedať
3.2.2016 19:42
Avatar
hanpari
Člen
Avatar
Odpovedá na Majkel
hanpari:3.2.2016 20:32

Téměř všechno kolem tebe se dá vyjádřit formou grafu. Sociální sítě, dokumenty, molekuly (typicky uhlovodíky), internet, hledání cesty, zabezpečení průchodnosti silnic pro všechny obce, rozvody a dodávky energií, navigace, mapy, elektrické obvody, atd, atd.

Abys pochopil, k čemu grafy jsou, se napřed musíš naučit svět kolem sebe převádět na grafy. To pdf je stručné a dobré.

 
Hore Odpovedať
3.2.2016 20:32
Avatar
Majkel
Člen
Avatar
Odpovedá na hanpari
Majkel:4.2.2016 12:01

Tak to pdf mám vytištěné a pomalu ho začnu vstřebávat. Ty máš nějaké praktické zkušenosti s těmi grafy. A pokud ano, nechtěl bys tady na to napsat nějaký článek? :-)

 
Hore Odpovedať
4.2.2016 12:01
Avatar
hanpari
Člen
Avatar
Odpovedá na Majkel
hanpari:4.2.2016 13:15

Pokud začneš řešit úlohy s algoritmy, nakonec na grafy narazíš. Co se týče článku, těžko bych tam napsal něco jiného, než je v tom pdf. Může tě leda zajímat konkrétní implementace v daném jazyce, což je konkrétně v Pythonu knihovna networkx, které je ostatně součástí Anacondy:

https://networkx.github.io/

Nebo si můžeš udělat svoji jednoduchou implementaci.
Lepší bude, když si projdeš pdf a pak se zeptáš, pokud bys něčemu nerozuměl.

 
Hore Odpovedať
4.2.2016 13:15
Avatar
hanpari
Člen
Avatar
Odpovedá na Majkel
hanpari:4.2.2016 13:17

Anebo se podívej na databáze založené na grafech.
http://neo4j.com/…ph-database/

Ale to je jen perlička, pro zajímavost.

 
Hore Odpovedať
4.2.2016 13:17
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.

Zobrazené 30 správy z 30.