Richard Lipka, ZČU

Hromadím tady odkazy na knihovny které se mi už někdy v minulosti hodily, a které do Javy doplní nějakou užitečnou funkcionalitu.

Joda time

Stále aktivně vyvíjená knihovna pro práci s datem a časem v Javě. Implementace data v Javě do verze 8 je v nejlepším případě poněkud zvláštní (např. číslování měsíců od 0 je sice hezké pro indexování polí, ale jinak spíš k zlosti) a tahle knihovna poskytuje o něco praktičtější implementaci. Obsahuje gregoriánský, juliánský, budhistický, islámský, koptický (pravoslavný) a etiopský kalendář, obsahuje podporu pro práci s časovými zónamy i hezky navrženou podporu pro formátování a parsování. K dispozici je pod Apache 2 licencí. 

http://www.joda.org/joda-time/

Na stránce joda.org je knihovna pro práci s měnou (joda money), ale s tou nemám žádné zkušenosti. 

Od verze 8 je v Javě k dispozici nová standardní knihovna java.time která je podobná Joda time a poskytuje výrazně lepší implementaci data a času. 

Colt

Sada knihoven pro vědecké a technické výpočty v Javě. Obsahuje podporu pro práci s maticemi (včetně algoritmů jako je násobení, Gaussova eliminace, QR rozklad, testy vlastností, výpočet determinantu), řadu matematických funkcí, generátory pseudonáhodných čísel a podporu statistiky a tvorby histogramů. K dispozici je jako open source projekt s vlastní licencí (jen vyžaduje abyste licenci uvedli všude kde je knihovna použita). 

http://acs.lbl.gov/software/colt/index.html

JGoodies

JGoodies je balík nástrojů a knihoven určených k usnadnění tvorby GUI v javě, rozšiřující možnosti stávající knihovny Swing (je tedy otázka jak dlouho bude ještě aktuální s nástupem JavaFX 2). Část nástrojů je placená, ale zdarma je k dispozici nový layout FormLayout pro snadnou tvorbu rozumně vypadajích formulářů (GridBagLayout sice umí vytvořit stejný vzhled, ale jen se spostou úsilí).  Dál je zde knihovna pro manipualaci se vzhledem ovládacích prvků na úrovní Look and Feel a knihovna pro propojení datových objektů a komponent, které je zobrazují. A konečně je tu velmi užitečná knihovna pro kontrolu vstupu od uživatele, která ve Swingu citelně chybí. Ke všem knihovnám se dá stáhnout demo se zdrojovými texty. 

http://www.jgoodies.com/

Mig Layout

Mig layout je jeden z nejrozšířenějších alternativních layout managerů pro GUI v Javě. Původně byl navržený pro Swing a SWT, nově je ale k dispozici i pro JavaFX 2 a dokonce i pro Android a další platformy. Nabízí podobnou funkcionalitu jako GridBagLayout, ale snazší použitelnost a konfigurovatelnost. Pro uživatele Mavenu je určitě příjemné, že Mig Layout je k dispozici v Maven repositáři.

http://www.miglayout.com/

Richard Lipka, ZČU
nach oben