Zobrazit příspěvky

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.


Příspěvky - Idris

Stran: 1 ... 33 34 [35] 36 37 ... 153
511
Vývoj / Re:Jak validovat DTO v dynamicky typovaném jazyce?
« kdy: 25. 01. 2022, 23:26:22 »
Pokud není jazyk staticky typovaný, žádné další buzzwordy ho už nezachrání.
Tak to jestli je ve "výchozím stavu" staticky/dynamicky typovaný je dle mého ne až tak podstatná věc.
Pravda
Nesmysl :-D
  ::)

512
Vývoj / Re:Jak validovat DTO v dynamicky typovaném jazyce?
« kdy: 25. 01. 2022, 23:23:06 »
Když mi spadne aplikace na nějaké výjimce,  za běhu, u klienta, tak je mi to k prdu
Jenže o to vůbec nejde, důležité je, že to vůbec jde nějak ošetřit. U toho druhého typu jazyků to prostě nejde z principu, protože ta typová informace chybí a runtime nemá jak tu chybu vůbec rozpoznat. To je snad jasné jak facka, ne?

513
Vývoj / Re:Jak validovat DTO v dynamicky typovaném jazyce?
« kdy: 25. 01. 2022, 18:15:02 »
Tady je skvělá definice silného/slabého typování: http://blogs.perl.org/users/ovid/2010/08/what-to-know-before-debating-type-systems.html :)

514
Vývoj / Re:Jak validovat DTO v dynamicky typovaném jazyce?
« kdy: 25. 01. 2022, 18:02:52 »
Pokud není jazyk staticky typovaný, žádné další buzzwordy ho už nezachrání.
Tak to jestli je ve "výchozím stavu" staticky/dynamicky typovaný je dle mého ne až tak podstatná věc.
Pravda

515
Vývoj / Re:Jak validovat DTO v dynamicky typovaném jazyce?
« kdy: 25. 01. 2022, 18:01:49 »
Ostatně celý Domain Driven Design se mnohem lépe implementuje např. v F# než v C#
Zajímavé. Dík za tip na knihu.

516
Vývoj / Re:Jak validovat DTO v dynamicky typovaném jazyce?
« kdy: 25. 01. 2022, 17:48:23 »
Tohle je ale obecný problém. Mám tři parametry typu int, prohodím je a sčítám hrušky s jablky.
Proto se mi líbí jazyky s pojmenovanými argumenty funkcí (kde je jméno součástí signatury).
Třeba v Pythonu se vždy snažím je uvádět i při volání. Je to jeden ze způsobů jak se vyhnout problémům.
Kéž by tohle bylo samozřejmostí (emphasis mine).

517
Vývoj / Re:Jak validovat DTO v dynamicky typovaném jazyce?
« kdy: 25. 01. 2022, 17:46:41 »
Jak jsem ukazoval, to i taková Java ignoruje deklarované typy. [...] při běhu už je všechno jedno. To už se jenom modlíš.
[...] Pokud není jazyk staticky typovaný, žádné další buzzwordy ho už nezachrání.
To není pravda (a nechápu, co je na tom tak těžké k pochopení), Java, Go apod. za běhu typ kontrulují a chybně typované volání nebo přístup se dá odchytit (výjimka nebo zotavitelný panic). Statické typování (nebo jeho absence) tohle nijak neovlivňuje.

518
Vývoj / Re:Jak validovat DTO v dynamicky typovaném jazyce?
« kdy: 25. 01. 2022, 17:13:39 »
Tohle je ale obecný problém. Mám tři parametry typu int, prohodím je a sčítám hrušky s jablky.
Proto se mi líbí jazyky s pojmenovanými argumenty funkcí (kde je jméno součástí signatury).

519
Vývoj / Re:Jak validovat DTO v dynamicky typovaném jazyce?
« kdy: 25. 01. 2022, 17:11:29 »
Evidentně jsem měl na mysli jinou definici silné vs. slabé (je jich několik a žádná “závazná”). Já mám zažitou tu o typovém runtimu.
Můžeš to ještě jednou, pro pořádek, shrnout?
Vyšel jsem z té přísnější definice, že slabě typovaný je jazyk, který za běhu vůbec na typy nehledí a špatné explicitní přetypování vede do pekel (segfault nebo tak něco).

Pokud upřednostňuješ tu definici s implicitním přetypováním — proti gustu žádný dišputát — bude ale slabě typované například C#. Prostě můžu sčítat hrušky s jabkama tím, že z hrušky udělám jabko, ale k tomu musím vědět, že jde o hrušku, a ne třeba bagr.

Je trochu nešťastné, že obě tato dělení mají tak zmatenou terminologii, ale rozhodně to je zajímavé téma.

520
Vývoj / Re:Jak validovat DTO v dynamicky typovaném jazyce?
« kdy: 25. 01. 2022, 16:11:48 »
Slabé typování k tomu  pak přidá bonusové WTF, kdy taková situace neskončí chybou ani v runtime, ale tichou a nenápadnou konverzí na totální nesmysl.
Z tohoto důvodu mám rád jazyky, které vyžadují explicitní přetypování i třeba u typových aliasů (Ada).

521
Vývoj / Re:Jak validovat DTO v dynamicky typovaném jazyce?
« kdy: 25. 01. 2022, 15:24:00 »
Ale Idris tady tvrdil, že než statické verzus dynamické, to je mnohem zásadnějším rozdílem silné verzus slabé. […]
Tak jak teda?
Je teda silné verzus slabé "jen" o vhodném/nevhodném samo konvertování, nebo je v tom víc?
Evidentně jsem měl na mysli jinou definici silné vs. slabé (je jich několik a žádná “závazná”). Já mám zažitou tu o typovém runtimu. Ale je fakt, že ta definice založená na konvertibilitě je mnohem zajímavější, zvlášť když se někdo odmítá bavit o C/C++ :)

522
Vývoj / Re:Jak validovat DTO v dynamicky typovaném jazyce?
« kdy: 25. 01. 2022, 10:25:09 »
Aktuálně většinu svého volného času věnuju Rustu a realizaci konkrétního projektu.
To zní dobře. Taky v Rustu poslední dobou dost píšu.
Ale od posledka a zvláště od vysvětlování forall se mi honí hlavou takové dojmy, že:
- navzdory mé antipatii k Pythonu (ano, typy), tak je mi na něm extrémně sympatická idea, že jazyk by měl programátorovi umožňovat jasně a srozumitelně vyjádřit co chce, a nekomplikovat mu to nějakou ideologií (OOP, FP, typy, etc)
Jo, takové jazyky jsou nejlepší. Podle tvůrců takový pragmatismus stojí za návrhem Go a Rustu. Ovšem třeba u Haskellu se asi nějaké teorii vyhnout nejde. Ale jakmile v nějaké diskusi dojde na ideologii, je to vošajslich :)
Uvidím co si budu myslet, až se seznámím se Scalou a Idrisem.
To jsem zvědav :) Poslední verze Scaly taky dostala silnější typový systém (path dependence).

523
Vývoj / Re:Jak validovat DTO v dynamicky typovaném jazyce?
« kdy: 25. 01. 2022, 09:03:07 »
Deklarace je nezajímavá. New je relikt. Prvek může vzniknout parsováním, přetypováním, deserializací, etc.
Deklarace je na tom to nejzajímavější, protože se na ní pozná chování (typového systému) jazyka. New je prostě vytvoření objektu, to má každý aspoň mírně OO jazyk. Parsování, přetypování apod. v sobě vždy zahrnuje toto “new” (může se samozřejmě jmenovat jinak, případně být implicitní jako např. v Dartu, ale pořád to je alokace někde na haldě nebo zásobníku).

524
Vývoj / Re:Ruby v roku 2022 (je mrtve?)
« kdy: 25. 01. 2022, 08:58:45 »
P.S. nakoniec som teda vybral naozaj to Go, nestazoval sa na to nikdo.
:) ;) :D ;D To uz si v Go aj napisal ten program aj v pohode vsade bezi a vsetci su spokojni ?
Vzdaj to, nebudem to pisat v niecom co potrebuje JVM. :) Co mas proti Go?
Taky by to šlo napsat v Go a pak transpilovat do Javy ;)
https://github.com/elazarl/go-java ?
Jo, to dává smysl :) Ještě chybí Rust nad JVM a transpiler Agdy do Cobolu. Transpiler Ruby do Fortranu už máme…
Popravdě, Rust target pro JVM bych docela bral. Jako, máme tu Scalu ale to prostě není ono...
K čemu by tam pak byl třeba borrow checker?

525
Vývoj / Re:Jak validovat DTO v dynamicky typovaném jazyce?
« kdy: 24. 01. 2022, 22:00:37 »
Citace: BoneFlute link=topic=25768.msg365402#msg365402
Trochu odbočím — koukals pak ještě někdy na záv. typy? Mám teď čerstvou zkušenost s jejich výukou, tak kdyby byl zájem ;)

Stran: 1 ... 33 34 [35] 36 37 ... 153