Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Marbes profesionalni programator_zcu

  • Login to see the comments

  • Be the first to like this

Marbes profesionalni programator_zcu

  1. 1. www.marbes.cz Profesionální programátor = nedostatkové zbožíkomplexní řešení informačních systémů Autor: Petr Jůza Datum: 13.11.2012 MARBES CONSULTING s.r.o. Tel.: 378 121 500 Fax.: 378 121 501 Brojova 16, 326 00 Plzeň
  2. 2. www.marbes.czPředstavení – Marbes Společnost Marbes consulting s.r.o. je česká konzultační a vývojová společnost působící v oblasti informačních technologií jako systémový integrátor a dodavatel ucelených SW řešení. Založena v roce 1997 cca 150 zaměstnanců Zákazníci  magistráty a městské úřady  krajské úřady  ministerstva  obchodní společnosti a firmy poskytující služby Hlavní sídlo v Plzni, pobočka v Praze a Brně www.marbes.cz
  3. 3. www.marbes.czPředstavení – Marbes• klient-server aplikace• server: – Java, Spring framework, Hibernate, Apache CXF, … – PHP• aplikační server – Apache Tomcat
  4. 4. www.marbes.czPředstavení – Marbes• klient: – Win32 aplikace (Delphi) – web: Vaadin, .Net• databáze: MS SQL, Oracle• integrace - MuleESB
  5. 5. www.marbes.czZajišťovat kvalitu aplikace až ve fázi testování je jako začít vychovávat dítě těsně před 18-tým rokem. Hodně bugů a release s rizikem. 
  6. 6. www.marbes.czPředstavení – Ing. Petr Jůza• Team leader, architekt, programátor, analytik, ...• Nyní pracuji na volné noze• Vývoj Java aplikací přes 10 let• Zaměřuji se na „lightweight“ a integrační řešení• SpringSource Certified Professional• Blog: http://javicka.blogspot.cz• Twitter: @pjuza• LinkedIn: http://www.linkedin.com/in/petrjuza
  7. 7. www.marbes.czKód, který je pochopitelný a čitelný, ale nefunguje, můžete spravit.Kód, který funguje, ale je nepochopitelný, se může rozbít a neuděláte s ním nic.
  8. 8. www.marbes.czProfesionální programátor kodér programátor
  9. 9. www.marbes.czNenápadným zabijákem IT projektů je špatná komunikace. Není nad osobní jednání na všech úrovních projektové hierarchie.
  10. 10. www.marbes.czVlastnosti kodéra• orientace na technologie a samotný kód• nebaví ho řešit zadání• komunikace je zbytečné zdržování• často chybí znalosti vyvíjené oblasti• orientován na množství kódu
  11. 11. www.marbes.czKdyž saháte do existujícího kódu, pokaždé něco vylepšete: javadoc, test, čitelnost. Je to jediný způsob, jak mít dlouhodobě udržovatelný kód.
  12. 12. www.marbes.czVlastnosti programátora• kvalitní „kodér“, který přemýšlí a komunikuje• schopnost analýzy• stále se ptá a hledá nejlepší řešení• soft-skills• snaha o zlepšování se - motivace
  13. 13. www.marbes.czNejcennější vlastnosti vývojáře dle S.McConnella:pokora, skromnost, zvědavost, duševní upřímnost, kreativita, disciplína a osvícená lenost.
  14. 14. www.marbes.czVlastnosti programátora
  15. 15. www.marbes.czKódování zabere ⅙ času, design ⅓ a testy ½ (z toho ¼ jedn. komponenty a ¼ integrační test.).Náklady na údržbu jsou 40%.
  16. 16. www.marbes.czProč je dobré být programátorem• chci umět více, dělat lépe• vyšší přidaná hodnota = lepší postavení• agilní přístupy – směr ke společné zodpovědnosti a programování• člověk nemůže kódovat celý život
  17. 17. www.marbes.cz Dokonalá znalost všech požadavků na nově vyvíjený software je iluze.Smiřte se s tím a nebudete ve stresu při postupném upřesňování.
  18. 18. www.marbes.czVývoj je týmová hra• špatný/dobrý výsledek ovlivňuje celý tým• nutnost vzájemného respektu• nutnost vzájemné pomoci• nutnost dodržování „pravidel hry“
  19. 19. www.marbes.cz Documentation is like sex, when its good itsawesome and even when its pretty bad its still better than nothing.
  20. 20. www.marbes.czBuďme efektivní• kvalitní kód, komentáře, stejná podoba kódu, ...• refaktoring• testy• naučme se efektivně používat IDE• lépe komunikujme a předávejme informace
  21. 21. www.marbes.czPokud jde kód špatně otestovat, je špatně navržený.
  22. 22. www.marbes.czKvalitní kód• kvalitní API• dokumentace• dodržování konvencí• čitelnost• testovatelnost
  23. 23. www.marbes.czRefactoring kódu je jako úklid kuchyně po večeři.Pokud se nedělá, hromadí se binec, dochází čisté nádobí a časem si člověk už ani neuvaří.
  24. 24. www.marbes.czRady pro začátek• teoretické znalosti jsou potřeba – je nutné je ale umět aplikovat• učte se, inspirujte se• mějte vývojové zásady a držte se jich• programovací jazyk není nejdůležitější
  25. 25. www.marbes.czKdybych byl aplikační bug, tak se schovám do metody s vysokou cyklomatickou složitostí,smrdícím kódem a s napraseným názvoslovím.
  26. 26. www.marbes.czRady pro začátek• buďte programátorsky upřímní• technologický dluh vs. overengineering
  27. 27. www.marbes.czČím vyšší složitost kódu, tím hustější mlha, ve které se schovají aplikační bugy.
  28. 28. www.marbes.czZávěrbuďte programátory 
  29. 29. www.marbes.cz Budovat aplikaci s vysokou vnitřní kvalitou je jakoukládat peníze na spořící účet s výhodným úrokem. S postupem času se výnosy násobí.
  30. 30. www.marbes.cz Jakákoli konvence pojmenování je obvykle lepšínež žádná konvence. Zlepšuje pochopení kódu asoustředění na problém, omezuje množení názvů.
  31. 31. komplexní řešení informačních systémů Děkuji za pozornost www.marbes.cz

×