NOVINKA! E-learningové kurzy umělé inteligence. Nyní AI za nejlepší ceny. Zjisti více:
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!

Diskuze: Co se učit dále?

Aktivity
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?

 
Odpovědět
2.2.2016 14:41
Avatar
Odpovídá na beats.omni
Ondřej Langr (andysekcze):2.2.2016 15:57

No třeba C++ nebo Java

Nahoru Odpovědět
2.2.2016 15:57
I have a charger. I have Note 7. Umh I haven't Note7.
Avatar
beats.omni
Člen
Avatar
Odpovídá 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.

 
Nahoru Odpovědět
2.2.2016 16:10
Avatar
Odpovídá 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.

 
Nahoru Odpovědět
2.2.2016 16:46
Avatar
Odpovídá 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 :)

Nahoru Odpovědět
2.2.2016 17:19
Neaktivní uživatelský účet
Avatar
beats.omni
Člen
Avatar
Odpovídá 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.

 
Nahoru Odpovědět
2.2.2016 18:22
Avatar
Odpovídá 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.

 
Nahoru Odpovědět
2.2.2016 18:41
Avatar
Odpovídá 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

Nahoru Odpovědět
2.2.2016 18:50
Neaktivní uživatelský účet
Avatar
beats.omni
Člen
Avatar
Odpovídá 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.

 
Nahoru Odpovědět
2.2.2016 18:53
Avatar
Odpovídá 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... :)

Nahoru Odpovědět
2.2.2016 18:56
Najefektívnejším spôsobom debuggingu je modlitba. :)
Avatar
Odpovídá 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ší...

Nahoru Odpovědět
2.2.2016 22:23
Neaktivní uživatelský účet
Avatar
mayo505
Tvůrce
Avatar
Odpovídá 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)

Editováno 2.2.2016 23:02
 
Nahoru Odpovědět
2.2.2016 23:02
Avatar
Odpovídá 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)

Nahoru Odpovědět
2.2.2016 23:12
Neaktivní uživatelský účet
Avatar
mayo505
Tvůrce
Avatar
Odpovídá 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

Editováno 3.2.2016 0:15
 
Nahoru Odpovědět
3.2.2016 0:15
Avatar
hanpari
Člen
Avatar
Odpovídá na beats.omni
hanpari:3.2.2016 14:22

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

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

 
Nahoru Odpovědět
3.2.2016 14:22
Avatar
Majkel
Člen
Avatar
Odpovídá na hanpari
Majkel:3.2.2016 16:05

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

 
Nahoru Odpovědět
3.2.2016 16:05
Avatar
beats.omni
Člen
Avatar
Odpovídá 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ě.

 
Nahoru Odpovědět
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.

 
Nahoru Odpovědět
3.2.2016 16:58
Avatar
hanpari
Člen
Avatar
Odpovídá 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ě.

 
Nahoru Odpovědět
3.2.2016 17:20
Avatar
hanpari
Člen
Avatar
Odpovídá 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/

 
Nahoru Odpovědět
3.2.2016 17:24
Avatar
Odpovídá 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 :-)

 
Nahoru Odpovědět
3.2.2016 17:27
Avatar
hanpari
Člen
Avatar
Odpovídá 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

 
Nahoru Odpovědět
3.2.2016 17:44
Avatar
Majkel
Člen
Avatar
Odpovídá 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.

 
Nahoru Odpovědět
3.2.2016 18:49
Avatar
Jaro
Člen
Avatar
Odpovídá 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.

Nahoru Odpovědět
3.2.2016 19:36
“What would you do if you were 100% sure you couldn’t fail?”
Avatar
Majkel
Člen
Avatar
Odpovídá 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 :-)

Editováno 3.2.2016 19:43
 
Nahoru Odpovědět
3.2.2016 19:42
Avatar
hanpari
Člen
Avatar
Odpovídá 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é.

 
Nahoru Odpovědět
3.2.2016 20:32
Avatar
Majkel
Člen
Avatar
Odpovídá 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? :-)

 
Nahoru Odpovědět
4.2.2016 12:01
Avatar
hanpari
Člen
Avatar
Odpovídá 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.

 
Nahoru Odpovědět
4.2.2016 13:15
Avatar
hanpari
Člen
Avatar
Odpovídá 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.

 
Nahoru Odpovědět
4.2.2016 13:17
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 30 zpráv z 30.