241
Vývoj / Re:Ideálny programovací jazyk
« kdy: 05. 05. 2019, 19:19:27 »
Pro me je nejdulezitejsi velikost komunity a mnozstvi dostupnych knihoven. Sebelepsi jazyk je k nicemu, kdyz v nem musite znovuvynalezat kolo.
Tato sekce Vám umožňuje zobrazit všechny příspěvky tohoto uživatele. Prosím uvědomte si, že můžete vidět příspěvky pouze z oblastí Vám přístupných.
Ja se snazim delat dokumentaci primo soucasti kodu a generovat, nejde jen o neco jako API doc, ale i o modely datovych objektu, architektury (AsciDoc, MultiMarkDown, apod., a vygenerovat to ven do nejakeho web systemu pro nahlizeni(Confluence, Nuxeo) pomoci CI pipelines on the fly pres web services tech systemu. Proste jakmile neni dokumentace soucasti zdrojovejch kodu, tak vetsinou vidim, ze se to rozchazi (nerikam, ze v tom nemam prsty nekdy).
nevsiml jsem si, ze by forum bylo moderovano stejne jako diskuze pod clanky. Zakazali anonymy, coz je dobre.
Co třeba toto zamčené téma?
https://forum.root.cz/index.php?topic=20983.0
Podle mě i forum bylo značně utnuto.
A ještě bych chtěl dodat, že to nové forum by nebyla nějaká "Poradna" (pro Active24), jako je Root.cz. Bylo by to opravdu diskuzní forum, kde by se diskutovalo.
v takovem use case by bylo lepsi pouzit k-d tree. Konverze stringu je ten mensi problem.V případě, že chce ukládat hodnoty pouze pro menšinu bodů z celého prostoru. Já jsem zadání fortran1986 nepochopil tak, že chce řídké pole, ale že pro zadaný rozsah klíčů bude pole plné.
udelej z toho string.
Pôvodne som to mal ako string. Lenže predstavte si že chcete napríklad získať všetky hodnoty vo vnútri obdĺžnika, ktorý je definovaný dvomi súradnicami xy - príklad:Kód: [Vybrat]const values = dynamic2dCollection.getRectValuesBetween({ x: 10, y: 20}, {x: 50, y: 50})
A na to potrebujete v cykle prejsť celú mapu a vždy každý key rozdeliť na poleKód: [Vybrat]const posXY = key.split(',')
obidva prvky pola skonvertovať na number a až potom testovať či sa pozícia nachádza niekde medzi súradnicami. A intuitícia mi hovorí že operácie nad stringom a konverzia na number by boli rádovo pomalšie ako rozdelenie 64bit čísla na dve 32 bitové.Citace: Filip JirsákMapa v JavaScriptu má jako klíče stringy, takže je nesmysl pokoušet se tam něco složitě zakódovat do čísla. Pokud by skutečně bylo efektivnější použít jednu mapu, ta dvě čísla prostě rovnou spojte do jednoho Stringu.
vy máte asi namysli js plain objekt použitý ako mapu. Ten používa iba stringové kľúče. Ale dnes už Javascript obsahuje aj špeciálnu kolekciu Map https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map
Tá funguje aj s číselnými kľúčmi (a nekonvertuje ich na string):Kód: [Vybrat]const mapa = new Map();
mapa.set(5.6, 'priradená hodnota')
console.log('správny typ kľúča', mapa.get(5.6)) // vráti 'priradená hodnota';
console.log('nesprávny typ kľúča', mapa.get('5.6')); // vráti undefinedCitace: Filip JirsákKdyž použijete normální mapu v mapě, má to nedostatečný výkon? Je to jenom můj odhad, ale použitím jedné mapy místo mapy map podle mne zásadní nárůst výkonu nezískáte.
Stál som si na kábli, máte pravdu mapa máp je najpriamočiarejšie riešenie ďakujem Vám za tip.
Potrebujem to mať v JS keďže v prehliadači sa nedá okrem JS použiť nič iné. Robím si vlastnú implementáciu 2D dynamickej kolekcie (niečo ako 2d array) ktorá by sa mala automaticky rozširovať v dvoch osiach (X,Y) a do kladných aj do záporných hodnôt. Pôvodne som chcel použiť pole polí ale to nebolo moc flexibilné... Moja kolekcia bude obalovať obyćajný Map do ktorého potrebujem ako key použiť Xovú a Ylonovú súradnicu a k súradnici potom len priradiť hodnotu. A keďže key je len jedena value tak neviem ako mám do nej vložiť obidve hodnoty tak aby som ich vedel za behu rýchlo spájať a rozdeľovať. Možno som len niečo nedomyslel ak máš iný nápad ako to urobiť budem veľmi rád keď ma ním inšpiruješ.
Použij komplexní čísla, dostaneš k nim i matematické nástroje.
https://mathjs.org/docs/datatypes/complex_numbers.html
...
Ahoj ďakujem za odpoveď.
Potrebujem to mať v JS keďže v prehliadači sa nedá okrem JS použiť nič iné. Robím si vlastnú implementáciu 2D dynamickej kolekcie (niečo ako 2d array) ktorá by sa mala automaticky rozširovať v dvoch osiach (X,Y) a do kladných aj do záporných hodnôt. Pôvodne som chcel použiť pole polí ale to nebolo moc flexibilné... Moja kolekcia bude obalovať obyćajný Map do ktorého potrebujem ako key použiť Xovú a Ylonovú súradnicu a k súradnici potom len priradiť hodnotu. A keďže key je len jedena value tak neviem ako mám do nej vložiť obidve hodnoty tak aby som ich vedel za behu rýchlo spájať a rozdeľovať. Možno som len niečo nedomyslel ak máš iný nápad ako to urobiť budem veľmi rád keď ma ním inšpiruješ.
m[String([x,y])] = val;
Opravdu je v obou případech a stejná proměnná, navzdory odlišnému ID? Jak se to liší od téhle konstukce v Rustu, kterou třeba C++ neumožňuje?Kód: [Vybrat]let i = 1;
let i = "mrkev";
kde je to technická nutnost, je to důsledek omezení těchto nižších jazyků, které nemají žádný přínos.
Technická nutnost fakt ne. Asi to usnadňuje psaní kompileru (nemám zkušenost), ale jinak je to fakt jen na libovůli tvůrce jazyka, se statickou typovostí to nemá nic moc společného. Viz třeba výše zmíněný Rust, tvrdit že je to dynamicky typovaný jazyk by bylo slušné šílenství ;-)
Me by treba zajimalo, jakou bude mit Hibernate v zakladni konfiguraci perfromance pro zretezeny eager fetch tabulek T1...Tn oproti tomu samemu napsanemu pomoci plain SQL, a jaky performance bude mit opakovani toho dotazu (hibernate cachuje). Plus nejake dalsi simulovane use case.