Fórum Root.cz

Hlavní témata => Vývoj => Téma založeno: koss43 02. 03. 2014, 23:10:14

Název: Učení se Javy - design patterns, algoritmizace atd.
Přispěvatel: koss43 02. 03. 2014, 23:10:14
Ahoj,

jsem linux admin, a začínám se učit Javu. Prodal jsem garáž, vybral cash a mám hotovost asi na 6-12 měsíců života, kdy se chci stát programátorem. Jdu do toho na full-time. Už mám nějaké hodně zamrzlé zkušenosti z PHP/MySQL.

Zatím makám měsíc a naučil jsem se základy Javy a práce v NetBeans. Nicméně kamarád říkal, že bych měl trošku proniknout i do algoritmizace, design patterns, Springs a Hibernate. Napadá vás ještě něco?

Vidím to tak, že ještě měsíc a dám i pokročilejší věci jako je generics, junit, serializace, atd... Vidím to takhle

1. měsíc - Java, základy
2. měsíc - Java, pokročilá
3. měsíc - design patterns, algoritmizace
4. měsíc - Springs
5. měsíc - hibernete
6. měsíc - testovací aplikace, vývoj

A pak bych chtěl najít místo juniora...  8) Jsem naivní, nebo co si o tom myslíte, jak byste se učili Javu vy?
Název: Re:Učení se Javy - design patterns, algoritmizace, atd???
Přispěvatel: radce 02. 03. 2014, 23:19:18
Záleží za kolik. Na juniora nemusíš nic umět, pokud třeba máš VŠ. Nebo nemusíš nic umět, pokud nechceš moc peněz.
Název: Re:Učení se Javy - design patterns, algoritmizace, atd???
Přispěvatel: koss43 02. 03. 2014, 23:24:22
Záleží za kolik. Na juniora nemusíš nic umět, pokud třeba máš VŠ. Nebo nemusíš nic umět, pokud nechceš moc peněz.

No nevím, už jsem dělal na projektu v Python/Djangu a učil se to za běhu a brzdil jsem celý tým, takhle bych do firmy zase nastupovat nechtěl. Navíc opravdu mám vyhrazený čas minimálně půl roku, kdy se tomu chci věnovat.

Nástup si představuji tak 30-35k Kč v Praze s tím, že po roce bych chtěl 40k a pak postupně zvyšovat o 5-10k každý rok ;D do nějakých 60-70k Kč což bych chtěl brát tak v horizontu 5ti let.

Myslím, že žádná firma nevezme člověka, co k tomu jazyku ani nemá vztah. Protože zaučovat někoho od nuly - v tom nevidím pro firmu žádný benefit. Teda snad jediná firma co kdy to kdy nabízela byl Unicorn s nástupákem 18k hrubého v Praze, ale to už je i na mě moc málo...
Název: Re:Učení se Javy - design patterns, algoritmizace, atd???
Přispěvatel: kubacech 02. 03. 2014, 23:24:52
Myslím, že reálně to je :)

Jen ty odhady se mi zdají přehnané. To na co máš vyhrazen měsíc jde zvládnut za týden. ;)
Název: Re:Učení se Javy - design patterns, algoritmizace, atd???
Přispěvatel: koss43 02. 03. 2014, 23:29:14
Jen ty odhady se mi zdají přehnané. To na co máš vyhrazen měsíc jde zvládnut za týden. ;)

Tak ono takhle, kdybych se to učil fakt full-time, tak mi z toho asi jebne, takže se učím 2-4 hodiny denně (včetně sobot a nedělí). Je pravda, že bych trošku mohl přidat (taky mi přijde, že to moc flákám, jak nade mnou nikdo nestojí  :'( )
Název: Re:Učení se Javy - design patterns, algoritmizace, atd???
Přispěvatel: radce 02. 03. 2014, 23:40:52
Záleží za kolik. Na juniora nemusíš nic umět, pokud třeba máš VŠ. Nebo nemusíš nic umět, pokud nechceš moc peněz.

Nástup si představuji tak 30-35k Kč v Praze s tím, že po roce bych chtěl 40k a pak postupně zvyšovat o 5-10k každý rok ;D do nějakých 60-70k Kč což bych chtěl

Junior říkáš? :D Ten je v Praze i za 18k. Proto se ptám, také jsem dělal Linux, ale i programoval a teď to míchám, takže zrovna mám přehled. Vidíme to ale podobně :D
Název: Re:Učení se Javy - design patterns, algoritmizace, atd???
Přispěvatel: jake 02. 03. 2014, 23:41:39
Můžeš se prosím podělit o zdroje z kterých se učíš? Dík.
Zajímá mě curriculum, co jsi si zvolil - pokouším se o něco podobného, ale pravda beru to trochu víc zeširoka... Tak třeba bych se inspiroval, jak si zkrátit cestu...
J.
Název: Re:Učení se Javy - design patterns, algoritmizace, atd???
Přispěvatel: koss43 02. 03. 2014, 23:47:38
Můžeš se prosím podělit o zdroje z kterých se učíš? Dík.
Zajímá mě curriculum, co jsi si zvolil - pokouším se o něco podobného, ale pravda beru to trochu víc zeširoka... Tak třeba bych se inspiroval, jak si zkrátit cestu...
J.


Junior říkáš? :D Ten je v Praze i za 18k. Proto se ptám, také jsem dělal Linux, ale i programoval a teď to míchám, takže zrovna mám přehled. Vidíme to ale podobně :D

Otázka je, co si kdo představuje pod pojmem junior, mě to přijde dost široké téma. Já si pod juniorem představím někoho, kdo všechno umí a má naučené, ale nemá pořádnou praxi a zažité to. Někde jsem zase slyšel, že chodí lidi, co neví ani co je to "super()" atd... Na to bych tu zavedl asi speciální kolonku "tragéd"  ;D
Název: Re:Učení se Javy - design patterns, algoritmizace, atd???
Přispěvatel: podlesh 03. 03. 2014, 01:03:23
Rozhodně bych doporučoval netrávit měsíc na Hibernate - jako všechny ORM platí že se buďto používá extrémně triviálně (tj na databázi kašleme, škálování nepotřebujeme) a nebo vyžaduje hodně znalosti vytváření ohejbáků a rovnáků. Takže pro začátečníka doporučuji zkusit si jednoduchý tutoriálek (ideálně v kombinaci s nejakým webovým frameworkem udělat jednoduchou CRUD aplikačku) a tím končit.

Obdobně by to platilo pro Spring, který sám o sobě není skoro nic - tedy pokud není myšlen Spring MVC nebo dokonce všechno co má přilepenou značku Spring (to už je naprosto zbytečné). Samotný spring ("core") pak jen až poté co začneš psát testy (to máš poslední měsíc, přitom je to dost klíčová věc).

Design patterny jsou přeceňované, ale dobré na pohovory - ve spoustě firem funguje design pattern cargo cult.

No a na závěr taková rada: pokud máš zkušenosti jako admin (a navíc linuxový admin), byla by škoda toho nevyužít. Můžeš se zkusit jeden měsíc zaměřit na provozní záležitosti, např: JVM (pouštění, konfigurace), classloading, monitoring (překvapivé množství java vývojářů nezná JMX), deployment (samostatně, jary, wary, eary), kontejnery (minimálně tomcat), konfigurace paměti (což není jen GC) a podobně.
Název: Re:Učení se Javy - design patterns, algoritmizace, atd???
Přispěvatel: kubacech 03. 03. 2014, 07:07:10
Já na škole, kdy jsem asi 3x něco potřeboval dostudovat, tak jsem studoval tady

http://www.linuxsoft.cz/article_list.php?id_kategory=192

jinak jsem ještě nalezl
http://www.algoritmy.net/category/21338/Java-pro-zacatecniky
případně tu je seznam videí programování v javě
http://www.youtube.com/user/BambooMachine/playlists
 ;)
Název: Re:Učení se Javy - design patterns, algoritmizace, atd???
Přispěvatel: koss43 03. 03. 2014, 08:26:12
Já na škole, kdy jsem asi 3x něco potřeboval dostudovat, tak jsem studoval tady

To je všechno v češtině :o Fakt české manuály neeee :-\

Obdobně by to platilo pro Spring, který sám o sobě není skoro nic - tedy pokud není myšlen Spring MVC

Myslel jsem právě MVC

No a na závěr taková rada: pokud máš zkušenosti jako admin (a navíc linuxový admin), byla by škoda toho nevyužít. Můžeš se zkusit jeden měsíc zaměřit na provozní záležitosti, např: JVM (pouštění, konfigurace), classloading, monitoring (překvapivé množství java vývojářů nezná JMX), deployment (samostatně, jary, wary, eary), kontejnery (minimálně tomcat), konfigurace paměti (což není jen GC) a podobně.

Kde se k tomuhle dají sehnat nějaké internetové kurzy, to by mě docela zajímalo
Název: Re:Učení se Javy - design patterns, algoritmizace, atd???
Přispěvatel: kubacech 03. 03. 2014, 09:33:09
Kde se k tomuhle dají sehnat nějaké internetové kurzy, to by mě docela zajímalo

třeba tu je něco málo ;)
http://www.vogella.com/tutorials/
Název: Re:Učení se Javy - design patterns, algoritmizace, atd???
Přispěvatel: koss43 03. 03. 2014, 09:42:03
třeba tu je něco málo ;)
http://www.vogella.com/tutorials/

Tam jsem nenašel nic o adminování a deployování Java aplikací...
Název: Re:Učení se Javy - design patterns, algoritmizace, atd???
Přispěvatel: kubacech 03. 03. 2014, 10:07:27
k základu tomcatu tam je tutorial.

A jsou tam tutoriály pro základy a pro testování.
Název: Re:Učení se Javy - design patterns, algoritmizace, atd???
Přispěvatel: perceptron 03. 03. 2014, 10:14:47
vykaslite sa teraz na admin a deployment, ked este neviete zakladne veci.

zalozte si trivialny projekt (zverimex), buildujte mavenom, commitujte na github. piste unit testy. naucte sa pracovat so dependency injection, dodajte si potom jdbc vrstvu (spring jdbc), potom medzi to spring mvc na webove ui a vdaka mavenu budete deployovat warka, ani sa nenazdate

hlavne postupne obohacujte svoj projekt aj znalosti, lebo to sa neda robit sekvencne ("uz mesiac viem spring, teraz idem mesiac citat gof patterny a potom mesiac hibernatit"), hlavne nie, ked musite zvladnut vela konceptov naraz