codez Posted June 25, 2015 Report Share Posted June 25, 2015 1TBS stils arī ir K&R variācija, bet ne velti dievi, kuri raksta Linux un Unix kerneli, izmanto šo. if (...) { ... } else { ... } Bet šijā gadījumā problēma nav stilā, jo, ja nevar ieraudzīt uzreiz tādu kļūdu, tad neieraudzīs arī šādu: if (...);{ ... } Vairāk jautājums, kāpēc vispār javaskriptā vispār lietot semikolus? Es personīgi sen jau rakstu javascriptu ES6 standartā, kur semikoli nav jālieto. Quote Link to comment Share on other sites More sharing options...
e-remit Posted June 25, 2015 Report Share Posted June 25, 2015 Vairāk jautājums, kāpēc vispār javaskriptā vispār lietot semikolus? Es personīgi sen jau rakstu javascriptu ES6 standartā, kur semikoli nav jālieto. Tāpēc, ka parseris pats saliek iztrūkstošos semikolus, bet ne vienmēr tā, kā to vēlējās programmētājs. Piemēram, šeit bez semikola tiek izdots kļūdas paziņojums: console.log('viens') (function(){console.log('divi')})() Arī ES6 gadījumā: http://www.es6fiddle.net/ibch1wy9/ Quote Link to comment Share on other sites More sharing options...
F3llony Posted June 25, 2015 Report Share Posted June 25, 2015 Vairāk jautājums, kāpēc vispār javaskriptā vispār lietot semikolus? Es personīgi sen jau rakstu javascriptu ES6 standartā, kur semikoli nav jālieto. Neizplati nepareizu informāciju - ES6 paredz gan "reduced", gan "traditional" stilu - t.i. lietot vai nelietot semikolu vēl joprojām ir katra paša brīva izvēle un ES6 lietot vai nelietot neuzspiež. Lai neuzsāktu kārtējo hurr durr mūžīgo argumentu - Semikolu lietošana vēl joprojām ir de-facto CS standarts absolūtā nospiedošā pārsvarā projektu, kā publisku tā slēgtu; Taču, ja tik tiešām ir tāda vēlme, droši nelieto - neviens pa muti nesitīs. Varbūt. Konsistence. this: Most of the comments in the semicolons exchange make me sad. In the proposed promises grammar and you'll see something surprising about ASI and infix operators: we can add new infix operators in the future. The moral of this story: ASI is (formally speaking) a syntactic error correction procedure. If you start to code as if it were a universal significant-newline rule, you will get into trouble. Quote Link to comment Share on other sites More sharing options...
codez Posted June 25, 2015 Report Share Posted June 25, 2015 lietot vai nelietot semikolu vēl joprojām ir katra paša brīva izvēle un ES6 lietot vai nelietot neuzspiež. Bet es jau saku to pašu, tā kā no ES6 semikoli vairs nav obligāti, tad ir brīva izvēle nelietot. Quote Link to comment Share on other sites More sharing options...
Kavacky Posted June 25, 2015 Report Share Posted June 25, 2015 1TBS stils arī ir K&R variācija, bet ne velti dievi, kuri raksta Linux un Unix kerneli, izmanto šo. if (...) { ... } else { ... } Šito pederastijas murgu jau sen vajadzēja aizliegt, bet tā praktizētājus - nošaut. Quote Link to comment Share on other sites More sharing options...
jurchiks Posted June 26, 2015 Report Share Posted June 26, 2015 (edited) Allman all the way.Par semikoliem runājot - atceros, ka bootstrap JS devs programmē maksimāli bez semikoliem. Lasot kodu un kommitus, var rūgti pasmieties, kādās galējībās cilvēks neiet, lai tik nebūtu jāraksta semikols. Kārtējais hipsterisms, imho, jēgas taupīt uz tā nav, ir daudzas labākas lietas, ar kurām var uzlabot koda lasāmību.P.S. Tas, ka Linux kernelis ir rakstīts kaut kādā vienā stilā, nozīmē tikai to, ka viņi dod priekšroku tam stilam, neko vairāk. Varbūt viņiem liekas, ka tā ir ērtāk/labāk, bet tikpat labi viņi vienkārši seko legacy koda stilam. Edited June 26, 2015 by jurchiks Quote Link to comment Share on other sites More sharing options...
codez Posted June 26, 2015 Report Share Posted June 26, 2015 Šito pederastijas murgu jau sen vajadzēja aizliegt, bet tā praktizētājus - nošaut. Uzmanīgi, tu ej pret Dieviem. Linux, Unix kernelis ir rakstīts 1TBS, praktiski visa JAVA un tās galvenie API ir raktīti 1TBS, pat PHP ir raktīts 1TBS stilā Tie, kas radīja C valodu rakstīja tādā stilā. Bet visas figūriekavu valodu sintakses evolucionējušas no C. Savukārt, ja atgriežamies pie Javascripta, tad tas ir evolucionējis no JAVAS, kura no C++, kurš no C. Un Javascriptā ne 1TBS stils var radīt reālas kļūdas, piemēram, Allman stilā atgriežot objektu: return { a:1, b:2 } Quote Link to comment Share on other sites More sharing options...
Mr.Key Posted June 26, 2015 Report Share Posted June 26, 2015 P.S. Tas, ka Linux kernelis ir rakstīts kaut kādā vienā stilā, nozīmē tikai to, ka viņi dod priekšroku tam stilam, neko vairāk. Varbūt viņiem liekas, ka tā ir ērtāk/labāk, bet tikpat labi viņi vienkārši seko legacy koda stilam. Tā vis gluži nav. Kā jau piebildu, stila lietderība atklājas praktiskās situācijas. Šis ir tikai viens no maziem sīkumiem. Līdzīgi ir ar citiem stila noteikumiem. Labi ieturēts stils ļauj vērīgai acij ātri pamanīt kļūdas arī bez sintaktiskās krāsošanas un IDE palīgrīkiem. Vēl ir vēlams pievērst uzmanību tam, vai koda autors ir vizuālis, audiālis vai kinestēts. Ir grūti prasīt sakarīgi noformētu kodu no pēdējiem diviem. Quote Link to comment Share on other sites More sharing options...
briedis Posted June 26, 2015 Report Share Posted June 26, 2015 Zinam, kā ar tiem stiliem.. https://nakedsecurity.sophos.com/2014/02/24/anatomy-of-a-goto-fail-apples-ssl-bug-explained-plus-an-unofficial-patch/ Citi joprojām sludina, ka var nelietot { }, ja ir tikai viena rindiņa konstrukcijai... Quote Link to comment Share on other sites More sharing options...
jurchiks Posted June 26, 2015 Report Share Posted June 26, 2015 @codez - iztiksim bez reliģijas. Tev patīk tāds stils, citiem cits. Jēgas par to strīdēties tāpat nav, jo neviens nekādu labumu no tā negūs. Quote Link to comment Share on other sites More sharing options...
codez Posted June 26, 2015 Report Share Posted June 26, 2015 Kad citi izmanto advancētas lietas, tad tu, jurchik, viņus sauc par hipsteriem, bet, kad tu pats izmanto hipsteru identācijas stilu, kā lai tevi sauc? Quote Link to comment Share on other sites More sharing options...
jurchiks Posted June 26, 2015 Report Share Posted June 26, 2015 LOL, kopš kura laika Allman ir hipsterīgs? Just because "the Linux Gods" don't use it, doesn't mean it's hipster. Quote Link to comment Share on other sites More sharing options...
codez Posted June 26, 2015 Report Share Posted June 26, 2015 (edited) Tas, ka tu raksti angliski latviešu forumā, tavu teikto nepadara gudrāku. Kārtējais hipstera izgājiens? Edited June 26, 2015 by codez Quote Link to comment Share on other sites More sharing options...
jurchiks Posted June 27, 2015 Report Share Posted June 27, 2015 Beidz dirst un atbildi uz jautājumu. Tu varbūt gribi pateikt, ka pirms šī topika izveides par Allman dzirdējis vispār nebiji? I didn't think so. Quote Link to comment Share on other sites More sharing options...
codez Posted June 27, 2015 Report Share Posted June 27, 2015 Dzirdēt un izmantot ir 2 dažādas lietas. Gribētu redzēt kā tajā hipsteru pierakstā tu javascriptā rakstītu anonīmas funkcijas, nestētus json objektus, utml. Šitā? (function(obj) { if (obj.a == 1) { doSomething(obj.b) } else { doSomething2() } } ) ( { "a":1, "b": { "c":2, "d":3 } } ) 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.