Americká technologická společnost Meta Platforms se dohodla, že zaplatí až zhruba 18 miliard dolarů (asi 373 miliard Kč) za mimosoudní urovnání sporu o závislosti dětí na sociálních sítích a provede významné změny pro jejich používání mladistvými. Téměř tři desítky států USA firmu v roce 2023 obvinily z toho, že sítě Facebook a Instagram vědomě navrhla tak, aby u dětí vyvolávaly závislost, a zatajovala tyto dopady před veřejností. Firma se
… více »Byl publikován aktuální přehled dění a novinek z vývoje Asahi Linuxu, tj. Linuxu pro Apple Silicon. Blíží se vydání podporující čipy M3. Vývojáře lze podpořit na GitHub Sponsors a Open Collective.
Kancelářský balík LibreOffice byl vydán ve verzi 26.8. Mimo jiné vylepšuje typografii a kompatibilitu s formáty MS Office, více v poznámkách k vydání.
Armbian, tj. linuxová distribuce založená na Debianu a Ubuntu optimalizovaná pro jednodeskové počítače na platformě ARM a RISC-V, ke stažení ale také pro Intel a AMD, byl vydán ve verzi 26.8. Přehled novinek v poznámkách k vydání.
Byla vydána nová verze 23.1.0, tj. první stabilní verze z nové řady 23.1.x, překladačové infrastruktury LLVM (Wikipedie). Přehled novinek v poznámkách k vydání: LLVM, Clang, LLD, Extra Clang Tools, Libc++, Polly a Flang.
Google Chrome 152 byl prohlášen za stabilní. Nejnovější stabilní verze 152.0.7977.64 přináší řadu novinek. Podrobný přehled v poznámkách k vydání. Opraveno bylo 327 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.
Před 35 lety, 25. srpna 1991, oznámil Linus Benedict Torvalds v diskusní skupině comp.os.minix, že vyvíjí (svobodný) operační systém (jako koníček, nebude tak velký a profesionální jako GNU) pro klony 386 (486), že začal v dubnu a během několika měsíců by mohl mít něco použitelného.
Apple představil čipy M6 a M5 Ultra, Mac mini s M6 nebo M5 Pro a Mac Studio s M5 Max nebo M5 Ultra. Fedora Asahi Remix zatím podporuje jenom M1 a M2.
Firefox 157 přinese zapnutou podporu rastrového grafického formátu JPEG XL. Založena je na v Rustu napsané implementaci jxl-rs používané i v Chrome a Chromiu.
Vanilla OS 3 „Reunion“ byl vydán. Tato na Debianu „Sid“ založená desktopová distribuce s transakčními aktualizacemi „neměnného“ základního systému (ABRoot) nově podporuje architekturu arm64 (vedle x86-64), podporuje reprodukovatelné sestavení většiny balíčků a vylepšuje systémové nástroje. Vlastní meta-správce balíčků APX nyní používá Distrobox v2 a je dostupný i pro jiné distribuce.
Tak slibovane vysvetleni minuleho zapisku
Prvni pomerne casta chyba (i z diskuze to bylo videt) je, ze si lide pletou ciste virtualni(dale cv) metodu s interfacem. I kdyz se cv metoda pouziva casto v definici interfacu, tak se da pouzit i jinde. Cv metoda je proste normalni metoda, kde jediny co ma navic je nutnost ji predefinovat v predkovi.
No a kde se to pouziva? Napriklad vsude, kde se chcete vyhnout duplicite kodu, kdy zakladni virtualni fce udela cast prace, ale to klicovy se udela az v potomkovi a sama o sobe nema ta metoda smysl (v horsim pripade udela jen cast prace a tvari se ze udelala vsechno). Mozna nekdo namitne ze to same lze udelat v predkovi s protected metodou s jinym nazvem, ale tim se zanasi dalsi slozitost(ve smyslu porozumeni kodu) pro pripadneho ctenare kodu.
No a v jednom doporuceni na netu co jsem cetl je dokonce napsano, ze by to telo melo byt vzdy, aspon s vyhozenim vyjimky. Jako protipriklad bylo ladeni kodu, ktery se proti tomu povede trikem zkompilovat (priznam se, ze sem to nezvladl). Ale znam z wine jakej je boj hledat funkci, kterou wine vubec nema, protoze to je volani NULL a hledat to je peklo, zvlaste kdyz nemate ten stroj u sebe, ale delate support.
Nemam patent na rozum, tak uvitam jakekoliv postrehy k tematu v diskuzi a treba se necemu dalsimu priucim
Tiskni
Sdílej:
No a kde se to pouziva? Napriklad vsude, kde se chcete vyhnout duplicite kodu, kdy zakladni virtualni fce udela cast prace, ale to klicovy se udela az v potomkovi a sama o sobe nema ta metoda smysl (v horsim pripade udela jen cast prace a tvari se ze udelala vsechno). Mozna nekdo namitne ze to same lze udelat v predkovi s protected metodou s jinym nazvem, ale tim se zanasi dalsi slozitost(ve smyslu porozumeni kodu) pro pripadneho ctenare kodu.No teda jestli tomuhle rikas zajimave dusledky, tak dobry
IMHO je pro ctenare ciste virtualni metoda s telem dostatecny sok.
cout << nl; nelze se divit ničemu.
Sorry, špatně jsem si to přečetl. C++ je ještě dojebanější než jsem se obával.Znas neco lepsiho?
Ale ne, jenom tak rypu, kazdy si sam kope svuj hrob. Mne napriklad od C++ nic neodtrhne. Jenom se ted musim konecne poradne naucit nejaky skriptovaci jazyk.
Signifikantní korelace, řekl bych :)Skriptovaci jazyk potrebuji pro rychle prototypovani (radove minuty).
Python, Ruby, Perl, .NET, Delphi, dokonce i Java nebo Visual Basic :)Jedine co z toho neznam je Visual Basic. V Delphi jsem dlouho programoval a uz nikdy vic, ani to neumi spravne vyhodnocovat podminky (
if ((index<size) && (array[index] != 0)) je v delphi nutne rozdelit do dvou ifu). Java je fajn jazyk pro slabe programatory, ale v podstate se v tom neda psat nic velkeho (pokud to neni serverova zalezitost). .NET je mimo muj zaber. Ve skritpovacich jazycich delam zasadne jenom prototypy a systemove skripty.
Pro vysokoúrovňové věci (gui, aplikační logika, zpracování textu) je režie opravdu zcela minimální, a dynamické typování je neskutečně užitečná a příjemná věc.No a tomu se rika prototypovani. Program se napise ve skriptovacim jazyku a narocne casti se prepisou do C/C++.
ani to neumi spravne vyhodnocovat podminky (if ((index <size) && (array[index] != 0)) je v delphi nutne rozdelit do dvou ifu)To není pravda. Ani u Turbo Pascalu to není pravda. Defaultní bylo "líné" vyhodnocování a přepínačem šlo zapnout to druhé (nějaké to {$neco+} ve zdrojáku).
Python, Ruby, Perl, .NET, Delphi, dokonce i Java nebo Visual BasicKromě té Javy samé skriptovací věci nebo věci na hraní.
"C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do it blows your whole leg off." -- Bjarne Stroustrup
a) ty užitečné konstrukce jsou možná potřeba pro rychlé řešení, ale v ideálním případě by se měl programátor spíš zamyslet nad svým návrhem.Ty uzitecne konstrukce jsou potreba pro to aby nebylo nutne hackovat jazyk. Porovnej si hardcore kod v Cecku a C++. Nebo jeste lip to porovnej s hardcore kodem v Jave.
b) ty užitečné konstrukce jsou možná užitečné tobě, ale ten, co to bude luštit a udržovat, tě prokleje;)Proc by mne proklinal? Samozrejme kdyz to bude nekdo, kdo neumi C++, tak asi ano, ale ten mne bude proklinat za cokoliv, protoze proste neumi C++.
Co je prosímtě hardcore kód? Nechceš doufám psát jádro OS v Javě, že ne?Proč ne, i takoví jsou. A nastojte, jsou i lidi, co píšou OS v Adě
(Nevím teda, jaký je aktuální stav AdaOS, když jsem se o to naposled zajímal, vypadalo to poněkud mrtvě.)
Pevně doufám, že to nikdy nebudu muset napsat a ještě víc doufám, že nikdy nic takového nebudu muset po někom luštit - tento trik teď už sice znám, ale když ho někdo používá, pak bůhví co používá ještě (třeba si myslel že píše "hardcore" kód).