Architektonické principy RESTu

Webové služby (WS) jsou posledních pár let jednou ze stěžejních komponent aplikačního a systémového vývoje. Dvě hlavní technologické větve jsou WS založené nad protokolem SOAP (označované jako WS-*) a WS postavené na REST architektuře. Druhá zmíněná oblast je sice široce etablovaná v oblasti open source a cloudových technologií, ale zatím se jen…

Daniel Kolman a Test Driven Development Outside-in

Daniel Kolman mluvil na WebExpo o TDD. Tentokrát to bude intezivnější varianta jeho přednášky – máme se na co těšit (WebExpo tweet). „Lámali jste si někdy hlavu nad tím, jak nějakou třídu otestovat? Přišlo vám někdy divné, že k otestování tří řádků kódu je potřeba padesátiřádkový test? Skvělé! Vaše testy k vám promlouvaly, jen jste je možná […]

Data race

V tomto článku se podíváme na data race. Data race je synchronizační chyba, která se objevuje ve vícevláknových programech. Řekneme si, kdy tato chyba nastává, ukážeme si pár příkladů a představíme si nástroj, kterým lze data race detekovat. Pokud dvě vlákna přistupují ke sdílené proměnné, alespoň jedno vlákno zapisuje a mezi přístupy není žádné uspořádání […]

Listina základních programátorských práv

Můj oblíbený bloger Jeff Atwood vydal sbírků svých nejlepších článků v knize Effective Programming: More Than Writing Code, do které zahrnul i příspěvek The Programmer’s Bill of Rights.Podivuje se nad tím, že firmy platí programátory $60-$100k ročně (v našich podmínkách přibližně 600-1000k Kč) a přitom je mrzačí otřesnými pracovními podmínkami a…

CXF a control znaky

V práci  pro dotahování dat ze serveru na klienta používáme Web servisy, konkrétně framework CXF, což je implementace Jax-WS. Jelikož potřebujeme aby jednotliví klienti byli schopní fungovat i v offline módu, dotahuje se v jednu chvíli poměrně velké množství dat. Vyvinul jsem tedy rozhraní na serveru, naklepal funkcionalitu na klientovi, a spustil vývojářský test. Pár […]

Jak ze začátečníka vychovat dobrého programátora

Rád se obklopuji schopnými lidmi, nejlépe schopnějšími než já, abych se od nich mohl něco přiučit. Než pracovat s někým průměrným, tak to raději do týmu začátečníka, kterého ještě nestačili nikde zprznit. Nemluvě o těch špatných, každý jeden takový totiž vytvoří dvě nová pracovní místa ročně.Nechci psát o tom, jak začátečníky naučit psát kód. Jděte…

Zatrolený CAP

S tím jak se šíří cloudové šílenství, čím dál tím víc lidí naráží do CAP teorému. Mě i mé kolegy nevyjímaje. Tak jsem si řekl, že si to tu vyjasním.CAP teorém zjednodušeně říká, že distribuovaný systém, nemůže splňovat všechny tři následující vlastnosti:Consistency – konzistence – všichni klienti vidí stejná dataAvailability – dostupnost – každý…

Pověstný člověkoměsíc

Jeff Atwood, autor stackoverflow.com, v jednom svém příspěvku na blogu napsal, že vše co nyní umíte, bude za pět let zastaralé. Na příběhu Alenky v říši divů ilustruje, že když se učíte nové technologie, tak sice běžíte jak jen nejrychleji dovedete, ovšem pouze proto abyste zůstali na místě. Pokud se někam chcete posunout, musíte číst […]

Eclipse Juno

Je tomu pár dní, kdy byla vydána nová verze Eclipse IDE, simultánní release s kódovým označením Juno. Nebudu se věnovat nějakému komplexnímu rozboru, jen naťuknu, co mě jako Java vývojáře zaujalo, pro detailnější popis jistě na internetu najdete erudovanější články.   E4 Loňský release Indigo byl postaven na platformě Eclipse SDK 3.7, letos je to verze […]

Rozlišujte prostředí

Tentokrát jeden tip z řady triviálních, nicméně ďábel je skrytý v detailech. Najděte deset rozdílů. Tak dobře, rozdíl je pouze jeden. Přesto nestalo se vám někdy, že stále refrešujete stránku, už jste restartovali i server, ale změna v kódu ne a ne se projevit? Kolik času přijde vniveč, než si uvědomíte (případně než vám kolega řekne), […]