F3llony Posted April 18, 2016 Report Share Posted April 18, 2016 @Wuu un tā ir valodas vaina jo? Es tev to pašu situāciju varu visās valodās parādīt. Quote Link to comment Share on other sites More sharing options...
spainis Posted April 18, 2016 Report Share Posted April 18, 2016 Tā ir tikai problēmas sakne, no tā visa izriet kas skaistāks. Piedāvāja te "lapelīti" pabeigt, kā haltūru. Atveru sourci, mama mija, 10k php faili, pa vidam Magento iemest. Bet tik daļēji, pat neiedziļinājos kāpēc. Tā radoša iespēja uzrakstīt riteni 150 veidos, skaisti izpaužas radošos rezultātos. PHP lieliski atbalsta pusfabrikātu koderus, kas atdūrās uz sava koda un pazūd :> Man ir liela pārliecība, ka vairums PHP koderu, cita rakstītu PHP aiztikt vēlas, tikai ar dunci zem ribas. un node.js nevar uzraksīt 10k+ index.js ar 8+ leveliem callback'u? Quote Link to comment Share on other sites More sharing options...
Wuu Posted April 18, 2016 Report Share Posted April 18, 2016 @F3llony Ja valoda būtu striktāka un konsistence saglabātos, šādu problēmu būtu mazāk. Pats kaut kad rakstīji, ka PHP storm (Laikam, tā to verķi sauca) ir viens no veidiem, kā grupas darbu ar PHP uzturēt kaut kāda kārtībā. Kas principā nozīme, ka ar teksta redaktoru tiek labotas valodas dizains. Iespējams kļūdos. Man vairāk satrauc tas fakts, ka pēc ilggadējas pieredzes ar PHP, galīgi nelikās ka esmu kaut kur progresējis. Cik saprotu, vajadzēja pāriet uz kādu frameworku, kur vismaz konsistence ir izveidota. Tai paša laikā, ar JavaScript'u progresu jūtu ļoti strauji. Gan izstrādes ātrumā, gan risinājumu veidošanā. Iespējams esmu stulbs, neapstrīdu. :> Quote Link to comment Share on other sites More sharing options...
qwerty Posted April 18, 2016 Report Share Posted April 18, 2016 Nu ja tu "ilggadējas pieredzes" laikā nebiji paspējis palietot kādu frameworku, tad.. Quote Link to comment Share on other sites More sharing options...
Kaklz Posted April 18, 2016 Report Share Posted April 18, 2016 un node.js nevar uzraksīt 10k+ index.js ar 8+ leveliem callback'u? Nea, tur smuki raksta visu pa moduļiem un viss ir skaidrs un tīrs: https://pbs.twimg.com/media/CeVnsGlXIAANrZX.jpg:large Quote Link to comment Share on other sites More sharing options...
F3llony Posted April 18, 2016 Report Share Posted April 18, 2016 @F3llony Ja valoda būtu striktāka un konsistence saglabātos, šādu problēmu būtu mazāk. Pats kaut kad rakstīji, ka PHP storm (Laikam, tā to verķi sauca) ir viens no veidiem, kā grupas darbu ar PHP uzturēt kaut kāda kārtībā. Kas principā nozīme, ka ar teksta redaktoru tiek labotas valodas dizains. Iespējams kļūdos. Man vairāk satrauc tas fakts, ka pēc ilggadējas pieredzes ar PHP, galīgi nelikās ka esmu kaut kur progresējis. Cik saprotu, vajadzēja pāriet uz kādu frameworku, kur vismaz konsistence ir izveidota. Tai paša laikā, ar JavaScript'u progresu jūtu ļoti strauji. Gan izstrādes ātrumā, gan risinājumu veidošanā. Iespējams esmu stulbs, neapstrīdu. :> Es rakstīju, ka PHPStorm ir validatori un style guides kas palīdz saturēt kodu kārtībā, jebkurā valodā. Tas pats ar IntelliJ, Pycharm, CLion utt. Un nekādu progresu tu nejūti, jo JS ir vēl vairāk problēmu (pie tam, nopietnu, nevis argumentu kārtība un funkciju naming). Standarda library? Neeksistē. Scopes? Kas tas tāds. Type system ir smieklīga. You cant do math (or even pretend to do math), es varētu turpināt bezgalīgi... Quote Link to comment Share on other sites More sharing options...
codez Posted April 18, 2016 Report Share Posted April 18, 2016 (edited) Par JS math. Pašlaik taisu web 3d spēli, kurā tiks implementēta lag kompensācija, kas nozīmē, ka man viens un tas pats algoritms jāsimulē uz klienta un servera. Klients - js, serveris - Scala. Pagaidām nekādas nesakritības matemātikā starp šīm platformām neesmu novērojis. P.S. Bet par pārējo piekrītu. JS ir diezgan pļiekana valoda. Es būtu priecīgs, ja uz browseriem būtu kārtīga, strikti tipēta, funkcionāla, oo valoda kā Scala. Edited April 18, 2016 by codez Quote Link to comment Share on other sites More sharing options...
Wuu Posted April 18, 2016 Report Share Posted April 18, 2016 Es rakstīju, ka PHPStorm ir validatori un style guides kas palīdz saturēt kodu kārtībā, jebkurā valodā. Tas pats ar IntelliJ, Pycharm, CLion utt. Un nekādu progresu tu nejūti, jo JS ir vēl vairāk problēmu (pie tam, nopietnu, nevis argumentu kārtība un funkciju naming). Standarda library? Neeksistē. Scopes? Kas tas tāds. Type system ir smieklīga. You cant do math (or even pretend to do math), es varētu turpināt bezgalīgi... Daļēji piekrītu, bet kad iemācies ar to visu strādāt, gala rezultāta ir viens pareizs ceļš kā panākt rezultātu. Quote Link to comment Share on other sites More sharing options...
qwerty Posted April 18, 2016 Report Share Posted April 18, 2016 Par JS runājot, vai kāds ir praktiski pielietojis React Native? Par cik arī Android versija ir kādu laiku jau kā iznākusi. Quote Link to comment Share on other sites More sharing options...
F3llony Posted April 18, 2016 Report Share Posted April 18, 2016 Daļēji piekrītu, bet kad iemācies ar to visu strādāt, gala rezultāta ir viens pareizs ceļš kā panākt rezultātu. Tā pat, kā jebkurā citā valodā. Par JS math. Pašlaik taisu web 3d spēli, kurā tiks implementēta lag kompensācija, kas nozīmē, ka man viens un tas pats algoritms jāsimulē uz klienta un servera. Klients - js, serveris - Scala. Pagaidām nekādas nesakritības matemātikā starp šīm platformām neesmu novērojis. P.S. Bet par pārējo piekrītu. JS ir diezgan pļiekana valoda. Es būtu priecīgs, ja uz browseriem būtu kārtīga, strikti tipēta, funkcionāla, oo valoda kā Scala. Tev vienkārši veicas. Pagaidām. Par otro daļu - http://webassembly.github.ioun tad jau būs normāli transpaileri da praktiski no jebkuras valodas. :P > 0.2 + 0.1 0.30000000000000004 > 0.3 + 0.1 0.4 > 0.1 + 0.1 0.2 > 0.1 + 0.3 0.4 > 0.1 + 0.2 0.30000000000000004 > 0.9 + 0.2 1.1 > 0.1 * 0.2 0.020000000000000004 > 0.134 * 0.2 0.026800000000000004 > 0.134 * 0.155 0.02077 Quote Link to comment Share on other sites More sharing options...
codez Posted April 18, 2016 Report Share Posted April 18, 2016 (edited) scala> 0.1+0.2 res0: Double = 0.30000000000000004 Nu tas jau ir floating point standarts un saistīts ar to kā atmiņā un procesora reģistros tiek glabāti flouting point mainīgie. Ja kaut kur 0.1+0.2 = 0.3, tad visdrīzāk pa virsu ir uztaisīts kaut kas, bet tad vairs tā skaitļošana nav tik ātra. P.S. Starp citu pasaule programmēšanas olimpiādē jau kādu laiku ir izņemti uzdevumi, kuros jāizmanto floating point mainīgie. Edited April 18, 2016 by codez Quote Link to comment Share on other sites More sharing options...
jurchiks Posted April 18, 2016 Report Share Posted April 18, 2016 Nea, tur smuki raksta visu pa moduļiem un viss ir skaidrs un tīrs: https://pbs.twimg.com/media/CeVnsGlXIAANrZX.jpg:large Skumjākais ir tas, ka kaut kur reāli pastāv tāds kods (par šo skaidrs, ka parodija). Quote Link to comment Share on other sites More sharing options...
F3llony Posted April 18, 2016 Report Share Posted April 18, 2016 scala> 0.1+0.2 res0: Double = 0.30000000000000004 Nu tas jau ir floating point standarts un saistīts ar to kā atmiņā un procesora reģistros tiek glabāti flouting point mainīgie. Ja kaut kur 0.1+0.2 = 0.3, tad visdrīzāk pa virsu ir uztaisīts kaut kas, bet tad vairs tā skaitļošana nav tik ātra. P.S. Starp citu pasaule programmēšanas olimpiādē jau kādu laiku ir izņemti uzdevumi, kuros jāizmanto floating point mainīgie. Es zinu, ka standarts, bet es apšaubu, ka daudzi šeit sagaida tādu rezultātu... :P Un nav jau tikai absolūtie 0.1 un 0.2, bet arī daļas (kā piemērā). PHP pastarītis redz izvada 0.3. Skumjākais ir tas, ka kaut kur reāli pastāv tāds kods (par šo skaidrs, ka parodija). https://github.com/jezen/is-thirteen Quote Link to comment Share on other sites More sharing options...
codez Posted April 18, 2016 Report Share Posted April 18, 2016 (edited) PHP pastarītis redz izvada 0.3. Domāju, ka internaly PHP visdrīzāk glabā to pašu 0.30....04, bet pie izvades viltīgi noapaļo. P.S. yep, http://codepad.org/AZbcjiGw echo ((0.2+0.1)===0.3)?"Yes":"No"; Output: 1 No Edited April 18, 2016 by codez Quote Link to comment Share on other sites More sharing options...
Mr.Key Posted April 18, 2016 Report Share Posted April 18, 2016 Dēļ tiem floatiem un īpatnībām ir gadījies, ka zūd vienības. Un to nemaz tik viegli nav uzķert, jo floorošanas tikai daļā gadījumu un dēļ īpatnējām starpsummām aktivizē kļūdu. Izvadot kā tekstu, piemēro string formatēšanu, kura apaļo ar round. Un arī What Every Computer Scientist Should Know About Floating-Point Arithmetic. echo 230 / 100 * 100; // 230 echo floor(230 / 100 * 100); // 229 echo 231 / 100 * 100; // 231 echo floor(231 / 100 * 100); // 231 Pārmest PHP par to, ka tajā ir daudz garbage koda, nav īsti pareizi. Jā, ir. Bet ir arī ļoti labi kodi un, mans uzskats, ka patiesībā PHP ir tas, kur programmētājam jābūt zinošākam, nekā C# vai Java programmētājam, kurās platforma un IDEs ierobežo daudzu muļķīgu kļūdu iespējamību, kamēr PHP ātri atmasko avantūras. Kaut vai tie paši datu tipi - PHP gadījumā ir jādomā līdzi, jāsaprot, kurā brīdī ir tie maģiskie momenti un, kāpēc, piemēram, $s = '0'; empty($s) == true un kāpēc tas ir labi. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.