Hlavní výhoda mikroslužeb

Mikroslužby (microservices) jsou ta nová naprosto nejvíc cool věc. A samozřejmě se najdou kritici, kteří tvrdí, že už to tu dávno bylo, ať už v podobě SOA, OSGi nebo jakékoliv jiné. Navíc se dočtete, že mikroslužby jsou složité, náročné na údržbu, vývoj a koordinaci. Všechno je to nepopiratelně pravda. Mikroslužby mají ale jednu výhodu, která […]

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ý…

Jak to bude s Javou 7?

Poslední informace o aktuálním vývoji vypustil minulý týden ve svém blogu Mark Reinhold. Kupodivu stále mají problém s closures (projekt Lambda) a s modularitou (projekt Jigsaw). Kdo by to byl čekal. Jestli to nebude tím, že jsou to oboje dost zásadní změny. Přitom třeba slavný Jigsaw mi ještě letos na jaře připadal stále dost nedomyšlený. […]

Testujeme WS klienty

Chystám se přihřát si vlastní polívčičku a budu psát o tom, na čem právě ve svém volném čase dělám. Jde o knihovnu, která mi pomáhá s testováním Spring WS klientských aplikací. Jako obvykle jsem si chtěl ušetřit sám sobě práci. Jsem totiž docela nakažen testováním, takže se snažím psát unit testy skoro na všechno co […]

Stoprocentní mantra

Programátoři a jejich manažeři občas řeší, jaká míra pokrytí unit testy je dostatečná. Můžeme zaslechnout, že cokoliv pod 60% nestojí za zmínku, občas zahlédneme, že to magické číslo je 95% a někteří fundamentalisté dokonce tvrdí, že cesta k nirváně vede jen a pouze přes stoprocentní pokrytí. Dnes jsem si řekl, že je ideální počasí na […]

Dva druhy kódu

Dnes budu zase psát o takové samozřejmosti, že ani nevím jestli s tím mám někoho obtěžovat. Navíc už jsem to před rokem předváděl na jedné konferenci. Možná ale nepatříte mezi těch deset šťastlivců, kteří mě tam viděli, tak to asi přeci jen napíšu. Začněme mojí oblíbenou ukázkou kódu…

Praktický API Design

Dnes budu psát o knize Practical API Design od Jaroslava Tulacha. Pomiňme její kvalitní zpracování, které se jen tak nevidí, zajímavý je obsah. Na začátku je tam na můj vkus docela dost filozofování, ale možná to ke knize podobného zaměření patří. Zabývá se totiž pohledem na návrh API v Javě z trochu vyššího hlediska. To […]

Hibernate: přistupovat pomocí polí nebo vlastností?

O co jde? Když mapuji entity, můžu si vybrat, jak bude Hibernate k objektům přistupovat. Mohu například napsat takovouto třídu. V takovémto případě bude při načítání z databáze Hibernate data zapisovat přímo do polí. To znamená, že například pro ID nemusíme mít vůbec set metodu, Hibernate nebo jiný JPA poskytovatel to tam magicky zapíše. Nebo […]

WebBeans

Včera jsem si četl dokumentaci k WebBeans. A ač opravdu nemám rád EJB a i k anotacím se stavím dost rezervovaně, docela mě to zaujalo. Je tam pár zajímavých nápadů, které mi docela rozšířily obzory…

Devoxx

Dobrý den, hlásím se vám z Devoxxu. Původně jsem chtěl popsat všechny přednášky na kterých jsem byl. Ale absolutně to nestíhám, včera jsem tu byl od devíti do desíti. Navíc jim tu docela hapruje internet. Takže jen vypíchnu věci, které mě zaujaly. Očekávejte ještě víc chyb než je u mě obvyklé. Pořadí je víceméně chronologické. […]

Java 7, dobré zprávy z Devoxxu

ak a teď budu Sun jen chválit a nic než chválit. Dopoledne jsem byl na keynote o novinkách v Javě 7.  Nejvíc mě potěšila informace o tom, že Java 7 bude modulární. Tzn. JDK a JRE nebudou jen veliký navzájem propojený monolit, ale bude rozděleno na víc modulů. O tom už se mluvilo dlouho…

Jak jsem potkal JavaFX

Tak si říkám, jestli má to co se chystám napsat vůbec cenu. Spoustu lidí tím asi naštvu a nikomu tím asi nepomůžu. No ale budiž, nechť se rozpoutá plamenná diskuze. Předevčírem Sun vydal první ostrou verzi Javy FX. Včera byl můj poslední den v práci a odpoledne jsem neměl už moc co dělat, tak jsem […]

Webové služby à la Spring

V poslední době docela často používal knihovnu Spring WS. Chtěl bych se s vámi podělit o zkušenosti, které jsem s tímto modulem udělal. Nejdřív bych měl ale upozornit, že nejsem expert na webové služby. O tom co je to port nebo binding mám jen mlhavou představu. Na druhou stranu jsem to nikdy vědět nepotřeboval…

Zatraceně líná inicializace

Dneska jsem strávil pěkných pár hodin hledáním záhadné chyby. Nedávno jsme v práci implementovali webové služby nad stávající aplikací. Protože jsem se kdysi infikoval testováním, tak jsem si v SoapUI vyrobil takovou pěknou sadu automatických testů. Nejsou to unit testy. Unit testy máme pokrytou vrstvu zařizující webové služby. Pomocí…

Java puzzlers

Tušíte správně, dneska vás čeká pidirecenze známé knihy Java Puzzlers od Joshuy Blocha a Neala Gaftera. Kniha obsahuje 95 krátkých hříček, rébusů a hádanek, které pěkně prozkouší vaši pozornost a znalosti temných zákoutí Javy. Kniha je to zajímavá, člověk si toho hodně připomene, popřípadě naučí. Když má dost trpělivosti a nepřeskakuje rovnou…

Zpětná kompatibilita

Dnes budu psát o zpětné kompatibilitě v Javě. Předem upozorňuji, že nejsem expert na dané téma, spíš si chci jen ujasnit myšlenky. Takže když někdo narazíte na chybu v mých jinak bezchybných myšlenkách, tak to prosím pěkně rozmázněte v diskuzi pod článkem. Rád se něco přiučím.    Co to tedy je zpětná kompatibilita? Zpětná kompatibilita je, […]

Není revize kódu jako revize kódu

Dagi se nám nějak rozepsal. Takže abych s ním udržel krok, napíšu velmi opožděnou reakci na to co napsal skoro před rokem a dneska mi připomněl svým nejnovějším zápiskem. Revizi kódu můžeme pojmout několika způsoby. Zažil jsem jednu čistě formální revizi, která se dělala jen proto, aby se odškrtl chlívek v nějakém předávacím protokolu….