Byla vydána nová verze 1.12.0 dynamického programovacího jazyka Julia (Wikipedie) určeného zejména pro vědecké výpočty. Přehled novinek v příspěvku na blogu a v poznámkách k vydání. Aktualizována byla také dokumentace.
V Redisu byla nalezena a v upstreamu již opravena kritická zranitelnost CVE-2025-49844 s CVSS 10.0 (RCE, vzdálené spouštění kódu).
Ministr a vicepremiér pro digitalizaci Marian Jurečka dnes oznámil, že přijme rezignaci ředitele Digitální a informační agentury Martina Mesršmída, a to k 23. říjnu 2025. Mesršmíd nabídl svou funkci během minulého víkendu, kdy se DIA potýkala s problémy eDokladů, které některým občanům znepříjemnily využití možnosti prokázat se digitální občankou u volebních komisí při volbách do Poslanecké sněmovny.
Společnost Meta představila OpenZL. Jedná se o open source framework pro kompresi dat s ohledem na jejich formát. Zdrojové kódy jsou k dispozici na GitHubu.
Google postupně zpřístupňuje českým uživatelům Režim AI (AI Mode), tj. nový režim vyhledávání založený na umělé inteligenci. Režim AI nabízí pokročilé uvažování, multimodalitu a možnost prozkoumat jakékoliv téma do hloubky pomocí dodatečných dotazů a užitečných odkazů na weby.
Programovací jazyk Python byl vydán v nové major verzi 3.14.0. Podrobný přehled novinek v aktualizované dokumentaci.
Bylo oznámeno, že Qualcomm kupuje Arduino. Současně byla představena nová deska Arduino UNO Q se dvěma čipy: MPU Qualcomm Dragonwing QRB2210, na kterém může běžet Linux, a MCU STM32U585 a vývojové prostředí Arduino App Lab.
Multiplatformní open source voxelový herní engine Luanti byl vydán ve verzi 5.14.0. Podrobný přehled novinek v changelogu. Původně se jedná o Minecraftem inspirovaný Minetest v říjnu loňského roku přejmenovaný na Luanti.
Byla vydána nová stabilní verze 6.10 (YouTube) multiplatformního frameworku a GUI toolkitu Qt. Podrobný přehled novinek v poznámkách k vydání.
V rámci seriálu The A to Z of programming languages na Computerworld Australia vyšel zajímavý rozhovor s Alanem Kayem, kde se zamýšlí nad objektově orientovaným programováním, proč dodnes žádný skutečně kvalitní objektový systém nebyl vytvořen, proč jsme se od začátku osmdesátých let dočkali jen málo skutečných novinek, jak koresponduje iPad s jeho konceptem Dynabook atd.
Tiskni
Sdílej:
Jinak myslíte si, že se C++ rozšířilo kvůli C syntax a kompatibilitě s C?
Určitě to nejsou jediné důvody, protože potom by Objective-C mělo být rozšířené minimálně stejně jako C++.
Jaký je smysl vymýšlet nové jazyky když tu už nějakou dobu existují "mocné" jazyky? Těmi "mocnými" jazyky mám namyslí například smalltalk, lisp erlang...
Obecně to samozřejmě smysl má. Za povšimnutí stojí, že většina těch nejmocnějších jazyků (Lisp, Forth, Smalltalk...) jsou vlastně metajazyky, takže je určitě na místě se podívat, jestli pro řešení daného problému není lepší než se snažit vytvořit nový na zelené louce, použít některý z nich a vyždímat z něj, co se dá.
I na těch metajazycích lze lecos zlepšovat a když se vezmou v potaz Kayovy cíle, je pochopitelné, že mu žádná současná SW architektura nevyhovuje.
Ak OOP projekty komplikuje, tak je to nesprávnym prístupom k OOP v danom jazyku. Java a C++ sú toho dobrým príkladom
Hlavný bod OOP spomína Kay v odkazovanom článku: posielanie správ. To plynie z toho, že v správnom OOP jazyku je objekt úplne samostatná a nezávislá entita, takže posielanie správ je jediná možnosť interakcie medzi objektami. S tým samozrejme súvisí aj to, že všetky konštrukcie v danom jazyku, by pokiaľ možno mali byť objekty (tento bod nespĺňa takmer žiadny jazyk, ktorý sa honosí titulom OOP). Veci ako dedičnosť, polymorfizmus, atď. sú len vlastnosti systému objektov. Sú pochopiteľne užitočné, ale nijak zvlášť fundamentálne. Aspoň tak to teda vidím ja
Tak ako vidím OOP ja, tak je to o samostatných entitách (rovnako ako píšete nižšie, dá sa pod tým predstaviť samostatný počítač) a o komunikácii medzi nimi. Polymorfizmus je len triviálny (aj keď veľmi užitočný) dôsledok tohoto modelu a nie je nijak zvlášť fundamentálny.
To je jen velice jemná nuance v úhlu pohledu. Ve skutečnosti lze identitu rozlišit jen z vnějšího pohledu. Objekt v systému musí objektům zaslat zprávu, aby je mohl od sebe odlišit (a ony si mohou i vymýšlet). Fungování komunikace v objektovém systému je natolik svázáno s polymorfismem, že rozlišovat mezi tím, jestli se jedná o její příčinu nebo nutnou podmínku, v podstatě nemá smysl.
Tak jasné, že sa na to dá pozerať aj z opačného smeru. Povieme si, že chceme polymorfizmus a pozeráme sa, ktoré modely ho obsahujú. Lenže tej požiadavke môžu vyhovovať aj modely, ktoré nemajú s OOP (v tom zmysle objektov + správ) veľa spoločné. To by sme potom mohli nazvať POP (polymorfne orientované programovanie) a bolo by to nepochybne zaujímavé, ale mal som za to, že sa snažíme dobrať podstaty OOP. Je celkom možné, že polymorfizmus je pre OOP nutnou podmienkou a v tom prípade je OOP podmnožinou POP
Dá, dědičnost je jen druh realizace sdíleného chování, které ale také není pro OOP nezbytné. Můžete mít objekty jako zcela samostatné entity, kde každá bude bude obsahovat i všechny své metody. Pro OOP je důležité jen zapouzdření a polymorfismus, tedy že s různými takovými objekty můžete pracovat/komunikovat stejným způsobem a nemusíte s každým jednotlivým objektem pracovat zvlášť. Také zapouzdřením se nemyslí žádné private/protected/public, ale to, že každý objekt má sám o sobě schopnosti celého výpočetního systému (místo každého objektu si můžete představit celý počítač či dokonce celou síť) a sám samostatně rozhoduje, jak bude reagovat na zprávy z okolí.
Yup, presne tak OOP vidím aj ja.