Open source router Turris Omnia NG Wired je v prodeji. Jedná se o Turris Omnia NG bez Wi-Fi. Je připraven pro zamontování do racku.
Sníh roztál a roztávají i bastlíři. Žene se na nás celá řada konferencí a seminářů technického rázu. Zajímá vás, jaké? Pak se připojte k 60. Virtuální Bastlírně, tedy k veřejné diskuzi bastlířů, techniků, učitelů i vědců. Jako vždy přijde na přetřes spousta novinek ze světa hardwaru, softwaru i bizáru. Na začátek lze očekávat hardwarová témata, tedy například nový KiCAD 10, nové akcelerátory LLM s nízkou spotřebou, nejvíce fosforeskující
… více »IuRe (Iuridicum Remedium) v rámci programu Digitální svobody zveřejnila analýzu dopadů a efektivity systémů ověřování věku v digitálním prostoru, která srovnává implementace ověřování věku v Austrálii, Velké Británii a Evropské unii.
Multiplatformní emulátor terminálu Ghostty byl vydán ve verzi 1.3 (𝕏, Mastodon). Přehled novinek a vylepšení v poznámkách k vydání.
Byla vydána nová verze 14.4 svobodného unixového operačního systému FreeBSD. Podrobný přehled novinek v poznámkách k vydání.
Databáze DuckDB (Wikipedie) byla vydána ve verzi 1.5.0. S kódovým názvem Variegata (husice rajská). Přináší řadu vylepšení, včetně nového ergonomičtějšího CLI klienta nebo podporu pro typ VARIANT a vestavěný typ GEOMETRY.
V pátek 6. a sobotu 7. března proběhl v pražském sídle Nejvyššího kontrolního úřadu (NKÚ) Hackathon veřejné správy 7.1. Publikovány byly vytvořené aplikace. V kategorii projektů rozvíjených z krajského kola zvítězil tým „Mackokládi“. Čtyři středoškoláci ze Dvora Králové uspěli s aplikací KompaZ. Jde o digitálního průvodce, který pomůže s rychlou a srozumitelnou orientací v životních i krizových situacích „krok za krokem“. Aplikace
… více »QGIS, svobodný desktopový GIS, byl vydán v nové hlavní verzi 4.0. Změny zahrnují několik nových analytických a editačních funkcí, rozšíření podpory 3D, více možností úprav uživatelského rozhraní či mnoho dalších zlepšení použitelnosti. Řada 3.44 má aktualizace plánovány do září.
Dan Blanchard vydal knihovnu pro Python chardet v nové verzi 7.0.0. S novou verzí byla knihovna přelicencována z LGPL na MIT. Souhlasili s tím všichni přispěvatelé? Dan Blanchard souhlasy vůbec neřešil. Zaúkoloval umělou inteligenci (Claude), aby knihovnu zcela přepsala a výslovně jí nařídil, aby nepoužila žádný LGPL kód. Dan Blanchard tvrdí, že se jedná o clean room design. Protistrana argumentuje, že umělá inteligence byla trénována
… více »Andy Nguyen si na svou herní konzoli PlayStation 5 (PS5) pomocí exploitu Byepervisor nainstaloval Linux (Ubuntu). V Linuxu si spustil Steam a PS5 tak proměnil v Steam Machine. Na PS5 může hrát hry, které jsou vydané pouze pro PC a jsou na Steamu [Tom's Hardware].
Ahoj, nenapada vas proc se v JS zavedli "namespace" s teckou
frameworkXY.ui.Form
proc neni
frameworkXX_ui_Form
S tou teckou mi to pripada matouci, kdyz pres tecku se pristupuje k atributum objektu.
Stejne nemuzu v prg. pouzit
using frameworkXY.ui;
abych mohl psat jen
var xx = new Form ();
vzdy musim psat
var xx = new framework.ui.Form ();
Diky za nazory.
_ muze byt soucasti nazvu?var ui = framework.ui; var xx = new ui.Form();
Pretoze to nie su namespacy ako ich pozname z inych jazykov, ale vlastnosti/atributy objektu.
Presne to mam na mysli. Proc nazvou objekt, tridu, metodu
xx.bubla.Neco
misto
xx_bubla_Neco
a tecky by zustali pro pristup k atributum.
xx_bubla_Neco.Metoda1 ();
Kdyz chcou pouzit ty tecky tak s tim maji spousty komplikaci, jelikoz se jedna o objekt v objektu objektu atd.
Nechapu proc si to komplikuji.
???
Kdyz chcou pouzit ty tecky tak s tim maji spousty komplikaci, jelikoz se jedna o objekt v objektu objektu atd.A o jaké přesně komplikace jde? Já jen že mne žádná nenapadá. Jmenný prostor je prostě objekt, na tom není nic divného.
soubor AAA/UI/Button.js
function AAA_UI_Button ()
{
}
AAA_UI_Button.prototype.Metoda1 = function ()
{
};
AAA_UI_Button.prototype.Metoda2 = function ()
{
};
soubor AAA/UI/Label.js
function AAA_UI_Label ()
{
}
AAA_UI_Label.prototype.Metoda1 = function ()
{
};
AAA_UI_Label.prototype.Metoda2 = function ()
{
};
pouziti:
var btn1 = new AAA_UI_Button ();
var lbl1 = new AAA_UI_Label ();
btn1.Metoda1 ();
lbl1.Metoda2 ();
S trochou nadsazky mam dva soubory a v kazdem jednu tridu.
Coz mi pripada jasne. Zkuste to prepsat do teckove notace?
var AAA = { }
AAA.UI = { }
AAA.UI.Label = function() { }
AAA.UI.Label.prototype.Metoda1 = function() { }
var btn1 = new AAA.UI.Label()
btn1.Metoda1()
Nebo tak nějak, nejsem v objektovém modelu JavaScriptu úplně zběhlý, abych psal kód po paměti. Podle mě hledáte problém, kde není.
Drobný dotaz: které řešení víc zasviní globální jmenný prostor?
Problem nehledam, jen mne tak napadlo se zeptat co si o tom mysli ostatni.
Rozhodne diky za vas nazor.
Co se tyce "zasvineni globalniho jmenneho prostoru".
To je nejaky problem, ze tam na jedne urovni bude
AAA_UI_Button
AAA_UI_Label
Kvuli rychlosti nebo kvuli cemu by to melo vadit?
Problem to nie je, ale zasvini sa tym globalny menny priestor. Potom v debugery vidite velke mnozstvo objektov zacinajucich na AAA_UI. Nic nebrani tomu, aby ste to tak pouzivali, ale vacsine ludi to vyhovuje s bodkovou notaciou, ako mozete vidiet v najznamejsich knizniciach. Ak je to s bodkovou notaciou, tak sa da velmi dobre vyuzivat this.
On je problém hlavně v tom, že javascript je úplně odlišný od jazyků jako je Java, C/C++, Php. Bohužel všichni se snaží používat postupy z těchto jazyků i v Javascriptu a to je chyba. Dám příklad jak pracovat OOP v Javascriptu. Jde o to co nejvíce využít toho, že javascript ma closures.
var ui = {};
//neco jako trida v javascriptu
var ui.Button = function (name) {
return {
getName : function () {
return name;
};
}
};
var objectButton = ui.Button('nazev');
objectButton.getName();
Tiskni
Sdílej: