Kniha Objektové programování od Čady

Re:Kniha Objektové programování od Čady
« Odpověď #255 kdy: 02. 06. 2017, 13:00:10 »
JSON je původně javascriptová notace, která se rozšířila i jinam. Žádné atomy ve většině jazyků neexistují, tak nevím proč by je měl univerzální formát podporovat. Javascriptový string je to stejné co atom, jen to nezní cool. Není důvod ukládat jednu věc dvěma způsoby.
No a to je presne ta pointa: JS nezna integer, takze proc by ho mel podporovat? Proc by mel definovat, ze "3.0" NENI integer?! Vsak at si to kazdej naparsuje jak chce, sere pes, my webari integer nemame.

A pak se tenhle "webarsky specificky" mor rozsiri do celeho sveta, kdo nema JSON API jakoby nebyl a vsichni jak kreteni travime tisice manyears dumanim nad tim, jak nad tim shitem postavit neco, co by bylo aspon trochu pouzitelny.


Ivan Nový

Re:Kniha Objektové programování od Čady
« Odpověď #256 kdy: 02. 06. 2017, 13:03:57 »
To mohlo být nějakou chybou návrhu, aťto aplikace, nebo frameworku. Každopádně to vůbec neznamená, že nemůžu použít (vhodné!, vlastní ) ORM a abstrakci!
...což je přesně to, co jsem napsal: že přechytřelé ORM frameworky člověka nepozorovaně vedou do pekla.

Význam ORM je v tom, že umožňuje abstrakci ORM rozšířit na aplikaci.

Například si uvědomíte, že vaše aplikace se sestává z dokumentů, pak stačí pomocí ORM namodelovat typickou strukturu dokumentu a dále pracovat jen s ní, kdy dokument je určen jednoznačným klíčem, atributy, popřípadě strukturou položky. Nemá smysl pro každé vypsání libovolného dokumentu psát pokaždé zvláštní způsob získání dat. Pro praktickou aplikaci pak vystačíte z řádově jednotkami abstraktních operací.

Pokud je vaše aplikace vybudována nad stromovými strukturami, či řídkými maticemi. Vytvoříte si obdobu ORM a vytvoříte pár abstraktních operací, které pak použijete. Nebudete přece matice, či stromy procházet pomocí zanořovaných cyklů for.

Samozřejmě za cenu snížení výkonu, ale snadnější a tedy levnější údržby.

Ivan Nový

Re:Kniha Objektové programování od Čady
« Odpověď #257 kdy: 02. 06. 2017, 13:07:20 »
JSON je původně javascriptová notace, která se rozšířila i jinam. Žádné atomy ve většině jazyků neexistují, tak nevím proč by je měl univerzální formát podporovat. Javascriptový string je to stejné co atom, jen to nezní cool. Není důvod ukládat jednu věc dvěma způsoby.
No a to je presne ta pointa: JS nezna integer, takze proc by ho mel podporovat? Proc by mel definovat, ze "3.0" NENI integer?! Vsak at si to kazdej naparsuje jak chce, sere pes, my webari integer nemame.

A pak se tenhle "webarsky specificky" mor rozsiri do celeho sveta, kdo nema JSON API jakoby nebyl a vsichni jak kreteni travime tisice manyears dumanim nad tim, jak nad tim shitem postavit neco, co by bylo aspon trochu pouzitelny.

Vaše strana aplikace, si může json interpetovat jak chce. Když potřebuje integer, může i float interpretovat jako integer. On vlastně float je jen jinak uložený integer.

zboj

  • *****
  • 1 507
    • Zobrazit profil
    • E-mail
Re:Kniha Objektové programování od Čady
« Odpověď #258 kdy: 02. 06. 2017, 13:07:39 »
Například si uvědomíte, že vaše aplikace se sestává z dokumentů, pak stačí pomocí ORM namodelovat typickou strukturu dokumentu a dále pracovat jen s ní
Jenže pak je lepší použít objektovou databázi a na nějaké ORM se vykašlat.

gll

Re:Kniha Objektové programování od Čady
« Odpověď #259 kdy: 02. 06. 2017, 13:09:00 »
JSON je původně javascriptová notace, která se rozšířila i jinam. Žádné atomy ve většině jazyků neexistují, tak nevím proč by je měl univerzální formát podporovat. Javascriptový string je to stejné co atom, jen to nezní cool. Není důvod ukládat jednu věc dvěma způsoby.
No a to je presne ta pointa: JS nezna integer, takze proc by ho mel podporovat? Proc by mel definovat, ze "3.0" NENI integer?! Vsak at si to kazdej naparsuje jak chce, sere pes, my webari integer nemame.

A pak se tenhle "webarsky specificky" mor rozsiri do celeho sveta, kdo nema JSON API jakoby nebyl a vsichni jak kreteni travime tisice manyears dumanim nad tim, jak nad tim shitem postavit neco, co by bylo aspon trochu pouzitelny.

nepoužívejte frikulínské přísně typované jazyky a nebudete mít problém.



Ivan Nový

Re:Kniha Objektové programování od Čady
« Odpověď #260 kdy: 02. 06. 2017, 13:12:03 »
Například si uvědomíte, že vaše aplikace se sestává z dokumentů, pak stačí pomocí ORM namodelovat typickou strukturu dokumentu a dále pracovat jen s ní
Jenže pak je lepší použít objektovou databázi a na nějaké ORM se vykašlat.

Ale ano proč ne. ORM je taky jen implementace virtuální objektové DB.

Re:Kniha Objektové programování od Čady
« Odpověď #261 kdy: 02. 06. 2017, 13:15:09 »
nepoužívejte frikulínské přísně typované jazyky a nebudete mít problém.
NE! Je to presne naopak: ve frikulinskych prisne typovanych jazycich neni problem, protoze tam je jasne dane, co chce clovek dostat, a parser te informace muze vyuzit, aby doplnil to, co specificka webarina nepovazovala za potrebne. Zatimco v dynamicky typovanych jazycich dostane NECO, co mu probubla az kdovi kam a tam to spadne na runtime vyjimku. Jenom proto, ze "integer nemame, tak si to udelejte jak chcete".

Nicmene, cely tenhle cirkus ma i jednu pozitivni stranku: clovek si aspon uvedomi, kam to muze vest, kdyz zasadni IT technologie navrhuje absolvent zurnalistiky na statni univerzite...

gll

Re:Kniha Objektové programování od Čady
« Odpověď #262 kdy: 02. 06. 2017, 13:28:12 »
Asi používáte chybný parser. Python parsuje i serializuje int a float správně.

Kód: [Vybrat]
In [4]: type(json.loads('{"a":1}')['a'])
Out[4]: int

In [5]: type(json.loads('{"a":1.0}')['a'])
Out[5]: float

In [6]: json.dumps({'a':1})
Out[6]: '{"a": 1}'

In [7]: json.dumps({'a':1.0})
Out[7]: '{"a": 1.0}'

UF

Re:Kniha Objektové programování od Čady
« Odpověď #263 kdy: 02. 06. 2017, 13:32:52 »
Uz by to chtelo zmenu - komunikace po fooru na rootu se vzdycky zvrhne v takovydle strasny porno - nechcete si na to zalozit IRC kanal - vyrobit nakej projekt na githubu a bavit se nad konkretnima problemama nejak usporadane? Tohle je tak strašně utopenyho casu a energie az to neni pekny - at vam strejda zboj dela predsedu a je to

gll

Re:Kniha Objektové programování od Čady
« Odpověď #264 kdy: 02. 06. 2017, 13:38:47 »
Uz by to chtelo zmenu - komunikace po fooru na rootu se vzdycky zvrhne v takovydle strasny porno - nechcete si na to zalozit IRC kanal - vyrobit nakej projekt na githubu a bavit se nad konkretnima problemama nejak usporadane? Tohle je tak strašně utopenyho casu a energie az to neni pekny - at vam strejda zboj dela predsedu a je to

Stále ztrácíme čas smysluplnějším způsobem než ty. My diskutujeme k tématu. Tvé příspěvky jsou úplně mimo. Když se ti diskuze nelíbí, proč sem lezeš?

Re:Kniha Objektové programování od Čady
« Odpověď #265 kdy: 02. 06. 2017, 14:05:13 »
Asi používáte chybný parser. Python parsuje i serializuje int a float správně.
Dle jake definice "spravne"? Znovu opakuju: jak se ma "3.0" parsovat v jazycich, ktere rozlisuji int a float je nedefinovane. Cili "spravny" zpusob parsovani "3.0" je "delejte si co chcete, nam webarum je to u pr-dele, my nevime, co je to int".

gll

Re:Kniha Objektové programování od Čady
« Odpověď #266 kdy: 02. 06. 2017, 14:16:11 »
Asi používáte chybný parser. Python parsuje i serializuje int a float správně.
Dle jake definice "spravne"? Znovu opakuju: jak se ma "3.0" parsovat v jazycich, ktere rozlisuji int a float je nedefinovane. Cili "spravny" zpusob parsovani "3.0" je "delejte si co chcete, nam webarum je to u pr-dele, my nevime, co je to int".

Vy jste kritizoval JSON jako formát. Neodlišování float a int je problém javascriptu. V JSONu to odlišit jde.

Re:Kniha Objektové programování od Čady
« Odpověď #267 kdy: 02. 06. 2017, 14:20:30 »
Asi používáte chybný parser. Python parsuje i serializuje int a float správně.
Dle jake definice "spravne"? Znovu opakuju: jak se ma "3.0" parsovat v jazycich, ktere rozlisuji int a float je nedefinovane. Cili "spravny" zpusob parsovani "3.0" je "delejte si co chcete, nam webarum je to u pr-dele, my nevime, co je to int".

Vy z těch webových technologií fakt máte nějaký komplex  ;D

Re:Kniha Objektové programování od Čady
« Odpověď #268 kdy: 02. 06. 2017, 14:22:40 »
Sorry, ale už mě to poslouchání obhajování neobhajitelného fakt nebaví, takže poslední slovo:
Vy jste kritizoval JSON jako formát. Neodlišování float a int je problém javascriptu. V JSONu to odlišit jde.
Není to ve specifikaci definované, čili to odlišit nejde. Že nějaké implementace mají nějaké vlastní rozšíření, je sice pěkné a i v praxi použitelné, ale nic to nemění na tom, že JSON je prostě mentální mrzák. A i kdyste to okecával třeba týden, nepřestane to být pravda, protože dementní, zbytečná omezení JSONu jsou prostě snadno ověřitelné faktum.

Re:Kniha Objektové programování od Čady
« Odpověď #269 kdy: 02. 06. 2017, 14:24:51 »
Vy z těch webových technologií fakt máte nějaký komplex  ;D
Vadí mi lidi, kteří budou furt dokola tvrdit, že kácet stromy herynkem je přece úplně v pohodě. Na co sekera?