Open source počítačová hra na hrdiny NetHack (Wikipedie, GitHub) byla vydána v nové verzi 5.0.0. První verze této hry byla vydána v roce 1987.
Evropská komise naléhavě vyzvala členské státy EU, aby kvůli ochraně nezletilých na internetu urychlily zavádění unijní aplikace pro ověřování věku a zajistily její dostupnost do konce roku. Členské státy mohou zavést aplikaci EU pro ověřování věku jako samostatnou aplikaci nebo ji integrovat do takzvané evropské peněženky digitální identity.
Richard Biener oznámil vydání verze 16.1 (16.1.0) kolekce kompilátorů pro různé programovací jazyky GCC (GNU Compiler Collection). Jedná se o první stabilní verzi řady 16. Přehled změn, nových vlastností a oprav a aktualizovaná dokumentace na stránkách projektu. Některé zdrojové kódy, které bylo možné přeložit s předchozími verzemi GCC, bude nutné upravit.
Zulip Server z open source komunikační platformy Zulip (Wikipedie, GitHub) byl vydán ve verzi 12.0. Přehled novinek v příspěvku na blogu.
Před 30 lety, tj. v úterý 30. dubna 1996, byl spuštěn Seznam.cz.
Byly zpracovány a zveřejněny všechny videozáznamy, které stojí za zveřejnění, z konference FOSDEM 2026.
Od úterý 28. dubna musí nově uváděné notebooky v Evropské unii podporovat nabíjení přes USB-C. Jednotná nabíječka byla schválena Evropským parlamentem v říjnu 2022.
Byly publikovány informace o kritické zranitelnosti CVE-2026-31431 pojmenované Copy Fail v Linuxu, konkrétně v kryptografii (AF_ALG). Běžný uživatel může získat práva roota (lokální eskalaci práv). Na všech distribucích Linuxu vydaných od roku 2017. Pomocí 732bajtového skriptu. V upstreamu je již opraveno. Zranitelnost byla nalezena pomocí AI Xint Code.
Textový editor Zed dospěl do verze 1.0. Představení v příspěvku na blogu.
Vývojáři svobodného 3D softwaru Blender představili (𝕏, Mastodon, Bluesky) nejnovějšího firemního sponzora Blenderu. Je ním společnost Anthropic stojící za AI Claude a úroveň sponzoringu je Patron, tj. minimálně 240 tisíc eur ročně. Anthropic oznámil sponzorství v tiskové zprávě Claude for Creative Work.
Puvodni GUI toolkit pro Javu bylo AWT. V podstate se jednalo o C/Java rozhrani pro nativni komponenty operacniho systemu. AWT melo hromadu chyb, v podstate zpusobenych prilis casnym uvedenim. Misto opravovani AWT se ale Sun dal jinou cestou.
Najal cloveka z firmy zabyvajici se Smalltalkem a udelal z neho sefa GUI vyvoje. Tento clovek pak protlacil Swing jako hlavni GUI toolkit v Jave. Swing byl v dobe uvedeni jeste vice bugy nez AWT a v podstate nemozny pouzivat. Na rozdil od AWT se ve Swingu o vsechno staral Java kod. To zpusobovalo jeho pomalost. Nektere veci pak nebylo z duvodu vykonu mozne delat vubec, napriklad rendering fontu.
Je zajimave ze na vyvoji Swingu se podilele take Netscape. V dobe kdy je valcoval Microsoft se rozhodl cely browser prepsat do Javy. Swing pak mel byt GUI toolkit pro novy browser. Dalsi pozustatek je treba Rhino - javascript engine spravovany Mozillou.
Swing byl hodne bugy a navic opravdu pomaly. To se zmenilo s Javou 1.4, kde je opravena cela rada chyb a vylepsen vykon. Java 5 pak pridava nativni zvhled pro Microsoft. Java 6 pak vylepsuje nativni vzhled, vylepsil vykon a 2D akceleraci vykreslovani. Dnes je Swing odladeny a dobre pouzitelny. Podle nekterych testu ma rychlejsi vykreslovani nez GTK...
Zakladnim problemem Swingu je jeho slozitost. I primitivni JButton ma stovky metod. Dale existuji mnozstvi layout manageru, listeneru apod. Pro zacatecniky je tezke zacit. Trva to tak rok, nez se dostavi dobra produktivita. Na druhou stranu je jako 'svycarsky nuz premenitelny na tank'. Pri dobrem zvladnuti ma Swing velmi siroke moznosti.
Tiskni
Sdílej:
Ad GC, myslim ze soucasny je ve vlastnim threadu a nezpusobuje zamrzani.Defaultní GC je pořád jednovláknový Stop The World. Ale můžu si vybrat i paralelizovanou variantu, a dokonce i variantu, která ostatní vlákna neblokuje. Tedy na víceprocesorovém stroji, mám pocit, že jeden procesor si v takovém případě vlákno GC uzurpuje pro sebe
Jinak třeba RScheme by mělo mít deteministický GC úplně - nějak mi není jasné, jak to dělají, ale prý to nějak funguje.
To jako JVM umí tech algoritmů několik a při startu se to dá opšnou nastavit? Já žiju v tom, že je tam jenom stop-the-world mark'n'sweep.Přesně tak. Teda ne úplně přesně, ony ty algoritmy jsou v podstatě pořád stejné, akorát si můžeš vybrat, jestli chceš jedno- nebo vícevláknový a blokující nebo neblokující ostatní vlákna. Jinak GC je generační, pro první generaci se používá něco na způsob kopírovacího algoritmu, pro druhou mark and sweep. No a aby toho nebylo málo, tak teď vyvíjejí ještě úplně jiný (G1).
Ono udělat paralelní GC (natož pak realitmový) asi nebude žádná prdel.No to není. On i ten "neblokující" algoritmus na dvě krátké chvilky všechna ostatní vlákna zablokuje
A už se mi jednou stalo, že kvůli nějaké chybě v jeho implementaci JVMko spadlo.
Jak to řeší v realtime Javě, tak to už vůbec netuším.
Hm, a pro .NET je tech firem asi 20, co vyviji takoveto komponenty (co znam ja....),takze je to mozna opravdu spis o nevhodnosti javy pro desktop app....Je to především tím, že .NET je v současné době primárním prostředím pro psaní Windows aplikací. Což má vliv jak nepřímý (tj. firmy dělají komponenty), tak přímý (tj. Microsoft si s tím dáva opravdu velkou práci - je to důležitější než celý kernel Windows a Office dohromady).
podpora skinovani (pro vsechny komponenty od devexpress) velice snadno zmenite vzhled cele aplikace moderni vzhled - gradient prechodyAno, toto je opravdu "strašně důležité". Jestli by nebylo lepší se zabývat funkční stránkou aplikace, než tím, že si potencionální uživatel bude moci změnit skin v aplikaci. Nedalo mi to, ale musel jsem si rýpnout. Povšechně v Javě mě chybí (i když teď už sem v ní nic desktopového nedělal, takže nevím kam se hnul vývoj) nějaké rozumné swing komponenty s databázovým bindingem - svého času byly relativně rozumné součástí borlandího JBuilderu.
(i kdyz na vzhledu app taky zalezi, podivejte treba na iPhone manii), jenze u tech komponent jde o vice veci (treba ten binding, ktery zminujete je u devexpress docela promakany, dale treba nastaveni masky editoru, podpora regexu, je toho opravdu strasne moc, co ty komponenty umi), ktere vyvoj app pote strasne zjednodusuji a ulehcuji...validace napr.. Jasne, vsechno napisu i v jave, ale takovou typickou kancl app. s napojenim na DB napisu proste v .NET 2x,3x (hruby odhad, prosim nekamenovat!!!) rychleji (a tudiz levneji), mam ji driv nez konkurence treba (coz muze rozhodovat o uspechu)
hadat se nechci, spis jen se treba dovedet, ze java je v tomto dal, nez si myslim a nez jsem objevil
Zakladnim problemem Swingu je jeho slozitost. I primitivni JButton ma stovky metod.Na tom nesejde, SWING je taková knihovna, ze které si člověk vyzobává to, co zrovna potřebuje. To že má tlačítko x metod, nevadí. Nejjednodušší aplikaci prostě začneš s jedním tlačítkem, textovým polem, metodami getText(), setText() a jednou událostí. S těmi správci rozvržení je to trochu pravda, ale pokud člověk používá NetBeans, tak se s tím velmi rychle vyrovná. Pokud jde o nevýhody Swingu, tak vidím dvě: dost komponent člověk musí suplovat knihovnami třetích stran (třeba open source SwingX) a to, že pod Windows vypadá nativně, zato v Linuxu je to pořád dost mizerné, zvlášť v KDE. Ale vynahradit se to dá look&feely, takže ty aplikace pak vypadají dobře, jen trochu jinak.