Kniha Objektové programování od Čady

JSfun

Re:Kniha Objektové programování od Čady
« Odpověď #315 kdy: 02. 06. 2017, 22:59:45 »
Resit hlouposti, ktere kladivo je lepsi je osemetna zalezitost protoze zalezi take na hrebiku, ktery je potreba zatlouct.
Ke spravne volbe kladiva si ale musis umet priznat, ze tvoje oblibene kladivo ma nedostatky a dobre vedet jake. Coz je to, o co tu kraci.

Unika ti pointa. Ja tu volbu nedelam, tu dela za mne svet. Asi se opakuji, mozna nedostanu do rukou idealni kladivo ale na svou dobu a ucel je optimalni. "Ma nedostatky" je individualni zalezitost, nekoho vytaci 9007199254740991+100 a tvrdi ze to je nedostatek. Nekoho zas vytaci neexistence privatnich properties, ja to naopak vitam (o chybovu blocking hlasku mene). JavaScript je sikovne a sexy kladivko, navic si ho muzes vytunit v poradnyho macka dle libosti.


Kit

Re:Kniha Objektové programování od Čady
« Odpověď #316 kdy: 02. 06. 2017, 23:23:44 »
... Nekoho zas vytaci neexistence privatnich properties, ja to naopak vitam (o chybovu blocking hlasku mene).

No vidíš, mě vytáčí i veřejné gettery a settery, kterých jsou nejen javovské programy plné. Všechno má být hezky privátní.

Re:Kniha Objektové programování od Čady
« Odpověď #317 kdy: 02. 06. 2017, 23:28:43 »
Protoze dulezite je umet busit, to cim a po cem je uz vedlejsi.

Důležité je umět bušit, ale důležitější je vybrat si správný nástroj. To je podle mě jedna z věcí, co odlišuje dobrého programátora od toho "tuctového", protože každá technologie má své pro a proti. A "ten dobrý" by měl vybrat optimální řešení. Ano, ne vždy je jednoduché odhadnout, co je v tu chvíli nejlepší, ale cpát všude svůj oblíbený jazyk je pomalu stejně špatná cesta, jako schválně se vyhýbat svému neoblíbenému.

Ćækãń

Re:Kniha Objektové programování od Čady
« Odpověď #318 kdy: 03. 06. 2017, 00:20:33 »
Presne tak, treba milovat vsetky jazyky a je po probleme.

Re:Kniha Objektové programování od Čady
« Odpověď #319 kdy: 03. 06. 2017, 00:25:00 »
Ne, to jsem tím přesně říct nechtěl.


gll

Re:Kniha Objektové programování od Čady
« Odpověď #320 kdy: 03. 06. 2017, 10:36:48 »
Resit hlouposti, ktere kladivo je lepsi je osemetna zalezitost protoze zalezi take na hrebiku, ktery je potreba zatlouct.
Ke spravne volbe kladiva si ale musis umet priznat, ze tvoje oblibene kladivo ma nedostatky a dobre vedet jake. Coz je to, o co tu kraci.

Někdy je dobré si kladivo nejdřív vyzkoušet, přečíst si alespoň základní tutoriál z oficiální dokumentace a nečertpat informace jen z rádoby vtipných videí.

Adusko

Re:Kniha Objektové programování od Čady
« Odpověď #321 kdy: 03. 06. 2017, 11:23:23 »
par slov od odbornika ktory nepouziva iba jedno kladivo :)

https://youtu.be/F07Ov4Y6xQ0?t=22

gll

Re:Kniha Objektové programování od Čady
« Odpověď #322 kdy: 03. 06. 2017, 12:00:50 »
par slov od odbornika ktory nepouziva iba jedno kladivo :)

https://youtu.be/F07Ov4Y6xQ0?t=22

na větší výkovky bych raději použil tohle

https://www.youtube.com/watch?v=msLm4uPxTr0

UF

Re:Kniha Objektové programování od Čady
« Odpověď #323 kdy: 03. 06. 2017, 15:46:44 »
par slov od odbornika ktory nepouziva iba jedno kladivo :)

https://youtu.be/F07Ov4Y6xQ0?t=22

na větší výkovky bych raději použil tohle

https://www.youtube.com/watch?v=msLm4uPxTr0

Tak vidim ze ste preci jenom k necemu dosli - blahopreju a snad uz se nepotkame - děkuji byli ste skveli!

zboj

  • *****
  • 1 507
    • Zobrazit profil
    • E-mail
Re:Kniha Objektové programování od Čady
« Odpověď #324 kdy: 03. 06. 2017, 20:43:45 »
a trolim vedatory tim jak je JavaScript skvelej. Jak tak koukam docela me obesla Java a ani nevim jestli je to dobre nebo ne  ::)
Tak jestli ve tvym pojeti "trolit" znamena delat ze sebe na webu vola pouzivanim terminu, kterym nerozumis, tak ti to jde skvele :)
Další troll do sbírky ;)

BoneFlute

  • *****
  • 2 001
    • Zobrazit profil
Re:Kniha Objektové programování od Čady
« Odpověď #325 kdy: 12. 06. 2017, 12:10:30 »
Jen pro upřesnění, ne, že bych měl JSON nějak zvlášť rád:

Když dekódujete číslo s desetiným místem, logicky chcete float. Když číslo bez desetiného místa, tak vám může být jedno co dostanete.
Ne a ne. Jestli se JSON "3.0" vyparsuje jako int nebo float je nedefinované. Naopak zakódovat int 3 jako 3.0 je plně legitimní. Z čeho a jak plyne, že "logicky chci float", to fakt nevím. Od serializačního formátu především chci, abych z něj dostal to, co jsem do něj dal. Pokud to neplatí ani pro základní věc jako číslo, je to prostě debilní serializační formát a není o čem diskutovat.
Výraz nedefinované mi přijde krapet silné vyjádření. Každopádně v JSON je číslo definováno typem number. Který není ani Int, ani Float. Takže podobně jako když v Haskellu rozlišuju, čím budu reprezentovat JSON typ string - zda použiju typ String, typ Text, nebo ByteString; podobně i v případě JSON typu numeric musím přemýšlet čím ho budu v Haskellu reprezentovat. Protože s Intem si nevystačím (když tam chci ukládat Float, což jde).

Pokud bude ten parser rozumný, tak:
Kód: [Vybrat]
decode "1" -> 1.0 :: Float
decode "1.0" -> 1.0 :: Float
encode 1.0 :: Float -> "1.0" -- ale může i "1"
encode 1 :: Int -> "1.0" -- ale může i "1"
encode (9007199254740991+100) :: Int -> "\"9007199254741091\"" -- nebo spíše error "příliš velké číslo"
decode "9007199254741091" -> error "příliš velké číslo" -- páč rozsah je IMHO definicí určen
Takže můžem nadávat na JSON, že je to debilně triviální jazyk. Můžem nadávat, že nám v něm schází to či ono. Ale spousta výtek jde spíše na vrub parserům v tom kterém jazyce.

Re:Kniha Objektové programování od Čady
« Odpověď #326 kdy: 12. 06. 2017, 12:24:41 »
Výraz nedefinované mi přijde krapet silné vyjádření.
Nevím, jak jinak bych to měl nazvat. Jak správně píšeš, JSON má typ number. Jenže drtivá většina jazyků tenhle typ nemá. Specifikace JSONu afaik nedefinuje, jak se takové jazyky mají k number stavět. Čili se k tomu můžou stavět různě podle toho, co autoři uznají za "rozumné", protože specifikace jim neříká, co mají dělat.

decode "9007199254741091" -> error "příliš velké číslo" -- páč rozsah je IMHO definicí určen
Ne, ani ten rozsah není specifikací určen. Takže si opět můžeš zvolit čistě libovolně. Třeba 3 :)
http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf - kap. 8

Takže můžem nadávat na JSON, že je to debilně triviální jazyk. Můžem nadávat, že nám v něm schází to či ono. Ale spousta výtek jde spíše na vrub parserům v tom kterém jazyce.
Pokud specifikace nespecifikuje zásadní věci, tak není dobrý nebo špatný parser. Jsou prostě různé parsery. Jediné, co je jisté, je, že je špatná specifikace ;)

Re:Kniha Objektové programování od Čady
« Odpověď #327 kdy: 12. 06. 2017, 12:32:11 »
BTW,

Citace
Warning
The precise treatment of the “integer” type may depend on the implementation of your JSON Schema validator. JavaScript (and thus also JSON) does not have distinct types for integers and floating-point values. Therefore, JSON Schema can not use type alone to distinguish between integers and non-integers. The JSON Schema specification recommends, but does not require, that validators use the mathematical value to determine whether a number is an integer, and not the type alone. Therefore, there is some disagreement between validators on this point. For example, a JavaScript-based may accept 1.0 as an integer, whereas the Python-based jsonschema does not.
https://spacetelescope.github.io/understanding-json-schema/reference/numeric.html

To je "specifikace" jak poď na mě zboku.

v

Re:Kniha Objektové programování od Čady
« Odpověď #328 kdy: 12. 06. 2017, 12:52:11 »
decode "9007199254741091" -> error "příliš velké číslo" -- páč rozsah je IMHO definicí určen
Ne, ani ten rozsah není specifikací určen. Takže si opět můžeš zvolit čistě libovolně. Třeba 3 :)
tak specifikace předepisuje notaci, ale neomezuje rozsah, neřekl bych, že to je špatně

v

Re:Kniha Objektové programování od Čady
« Odpověď #329 kdy: 12. 06. 2017, 12:56:36 »
BTW,

Citace
Warning
The precise treatment of the “integer” type may depend on the implementation of your JSON Schema validator. JavaScript (and thus also JSON) does not have distinct types for integers and floating-point values. Therefore, JSON Schema can not use type alone to distinguish between integers and non-integers. The JSON Schema specification recommends, but does not require, that validators use the mathematical value to determine whether a number is an integer, and not the type alone. Therefore, there is some disagreement between validators on this point. For example, a JavaScript-based may accept 1.0 as an integer, whereas the Python-based jsonschema does not.
https://spacetelescope.github.io/understanding-json-schema/reference/numeric.html

To je "specifikace" jak poď na mě zboku.
IMHO JSON a JSON Schema jsou odlišné věci (každá s vlastní specifikací)