Dnes a zítra probíhá vývojářská konference Google I/O 2025. Sledovat lze na YouTube a na síti 𝕏 (#GoogleIO).
V Bostonu probíhá konference Red Hat Summit 2025. Vybrané přednášky lze sledovat na YouTube. Dění lze sledovat na síti 𝕏 (#RHSummit).
Společnost Red Hat oficiálně oznámila vydání Red Hat Enterprise Linuxu 10. Vedle nových vlastností přináší také aktualizaci ovladačů a předběžné ukázky budoucích technologií. Podrobnosti v poznámkách k vydání.
Tuto sobotu 24. května se koná historicky první komunitní den projektu Home Assistant. Zváni jsou všichni příznivci, nadšenci a uživatelé tohoto projektu. Pro účast je potřebná registrace. Odkazy na akce v Praze a v Bratislavě.
Troy Hunt představil Have I Been Pwned 2.0, tj. nový vylepšený web služby, kde si uživatelé mohou zkontrolovat, zda se jejich hesla a osobní údaje neobjevili v únicích dat a případně se nechat na další úniky upozorňovat.
Microsoft představil open source textový editor Edit bežící v terminálu. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.
V Seattlu a také online probíhá konference Microsoft Build 2025. Microsoft představuje své novinky. Windows Subsystem for Linux je nově open source. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.
Z příspěvku Turris Sentinel – co přinesl rok 2024 na blogu CZ.NIC: "Za poslední rok (únor 2024 – únor 2025) jsme zachytili 8,3 miliardy incidentů a to z 232 zemí a z jejich závislých území. Tyto útoky přišly od 6,2 milionu útočníků (respektive unikátních adres). SMTP minipot je stále nejlákavější pastí, zhruba 79 % útoků bylo směřováno na tento minipot, 16 % útoků směřovalo na minipot Telnet, 3 % útoků směřovaly na minipot HTTP a 2 % na minipot FTP. Dále jsme zaznamenali 3,2 milionu unikátních hesel a 318 tisíc unikátních loginů, které útočníci zkoušeli."
Byla vydána (Mastodon, 𝕏) nová verze 3.0.4 svobodné aplikace pro úpravu a vytváření rastrové grafiky GIMP (GNU Image Manipulation Program). Přehled novinek v oznámení o vydání a v souboru NEWS na GitLabu. Nový GIMP je již k dispozici také na Flathubu.
Byla vydána nová stabilní verze 7.4 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 136. Přehled novinek i s náhledy v příspěvku na blogu.
Protože mi moc nevyhovuje systém, kterým Java vytváří GUI, tak jsem se poohlížel po něčem použitelnějším. Narazil jsem na Qt jambi.
Svým způsobem tento framework věrně kopíruje Qt pro C++. V podstatě je to jen Java binding na nativni Qt knihovny. To má své výhody, ale i nevýhody. Mezi asi nejviditelnější výhody patří rychlost zobrazování. Druhou - méně důležitou - byl fakt, že jsem už dělal takovou minisemestralku (OpenGL pod linuxem), kde se Qt použilo jen jako framework pro implementaci GUI. Takže už jsem měl mírnou představu o tom, jak Qt vlastně funguje.
Ovšem nevýhoda je minimálně v tom, že to nemáte šanci debugovat v Javě. Co víc. Nevidíte ani strukturu objektů, protože všechno je schováno za JNI. S tím trochu souvisí i dokumentace. Ano, javadoc existuje, ale je to na dost místech pouze přepis C++ dokumentace. Což znamená, že jsou v něm sice použité C++ konstrukty, ale zároveň si udržuje hodně vysokou úroveň (kéž by se tohle dalo říct o mých javadoc-ech :) ).
Z minulosti mám trochu zkušenosti pouze s programováním J2EE aplikací. Oblast desktopu pro mne byla neznámá. V případě aplikace typu tlustý klient to s sebou přináší i odlišný způsob práce. Zatímco u J2EE máte (můžete mít) přehled o celém systému, přihlášených uživatelích, apod., v případě desktopové aplikace je to trochu omezené. Víte pouze to, co dělá jeden konkrétní uživatel. Příbývá tedy problém konzistence dat ( v dost případech toto lze řešit Ostrichovým algoritmem a bude to ve většině případů i fungovat :).
Vynechám klasické příklady na "hello world!" a přejdu rovnou k problémům a jejich řešení. To je totiž první věc, se kterou se musí začátečník poprat.
Když se píše aplikačka pracující s databází, tak je potřeba se k ní umět připojit. QT jambi k tomuto účelu nabízí vlastní systém tříd, které zastřešují práci s DB. Protože je ale Jambi jen Java binding na C++ knihovnu QT, zpočátku se využívaly i ovladače pro QT knihovnu. A tady je potíž v tom, že s opensource distribucí přichází pouze ovladač pro sqlite. Podporu ostatních je potřeba si zkompilovat vůdči vlastní verzi konkrétní databáze. Vezmu konkrétní případ, kdy jsem musel tvořit ovladač pro MySQL. Po nainstalování MySQL serveru jsou k dispozici i .lib verze dll knihovny libmysql.dll, která je potřeba pro připojení. A nastává druhý problém, kdy OS verze QT Jambi je kompilována pomocí mingw32-gcc. A kompilátor gcc používá trochu jiný formát statických knihoven, takže není možné přímo použít ty dodané s MySQL serverem. Takže je potřeba sehnat pár utilitek a provést konverzi a přípravu podle následujícího návodu. A je to celkem drbačka.
Každopádně QT Jambi je o tom, že se program píše v Jave. A Java má vlastní rozhraní pro databázi - JDBC. Takže proč se párat s kompilováním ovladače, když je možné použít QJDBC! Ovšem to je potřeba stahovat pouze pro verze před 4.4, která QJDBC bridge již obsahuje.
V dalších "dílech" to zkusím restartovat a napíšu něco o zprovoznění IDE Eclipse s podporou grafického návrhu widgetů. A poté - když bude čas i chuť - se vrhnu na různé dílčí trable a jejich řešení...
Tiskni
Sdílej: