Holy War: Indent cu Tabs VS Spații

Nici eu nu pot urmari codul scris la indentare de 2, indiferent ca e tabulat sau spatiat la 2. La javascript in mod deosebit se intampla sa fie inner function inauntrul la un inner function (de mai multe ori) si acolo nu imi dau seama cine cu cine voteaza, mi se pare f greu de urmarit. In acelasi timp, in CSS/sass/less nu e asa mare problema, pt ca e clara diferentierea intre definire si atribute, si poa’ sa fie indentarea chiar si 2, fara sa se piarda din lizibilitate.

Nu știu cum de mi-a scăpat mesajul de mai sus, dar e un argument clar în favoarea folosirii TAB-ului. Dacă @navaru ar fi indentat cu TAB, acum că a îmbătrânit și are nevoie de 3 spații pentru a citi mai ușor codul, tot ceea ce ar avea de făcut ar fi să schimbe o setare în editor și tot codul vechi ar fi mai lizibil fără nici o modificare.
Așa, va fi obligat să-și încrunte privirea până la pensie atunci când se uită peste vechiul lui cod indentat cu 2 spații (sau să dea peste cap git-ul și să modifice peste tot nivelul de indentare). :smiley:

3 Likes

WTF? Voi va ghidati dupa filme?

Nu bre, a fost doar un război foarte amuzant :slight_smile:

1 Like

Si nevasta-mea s-a speriat de rasuflatul meu de usurare :))

Si ca sa fiu si ontopic, ce importanta are? Mai toate IDE-urile majore au autoformat in functie de ce setare ciudata iti place sa folosesti, 1 tab, 2 tab, 3 spatii 1 tab 2 spatii 1 tab, etc

Si in ce priveste git-ul, n-ar fi primul repo in care vad un commit “modificata indentarea din spatii in taburi” si iti vine sa-ti smulgi parul din nas (astia tinerii nu stiti voi ce e ala).

1 Like

Real programmers don’t use IDEs :slight_smile: ca sa fiu si eu un pic elitist ca este la moda aparent.

4 Likes
3 Likes

PEP8

q.e.d.

1 Like

This is why I have huge respect for Python.

Taburi care sunt afisate ca 2 spatii.

De ce tab-uri ? Pentru ca in orice editor poti seta in cate spatii sa fie afisate tab-urile, si atunci exista flexibilitatea asta. Daca folosesti spatii, tuff luck: 4 pui, 4 raman. Iti place cu 2 ? Ce pot sa-ti zic … ?

raspunsul lui @edu ar trebui marcat ca solution - discutia e pointless si flame war deja.

Este simplu: check your fav language code style: either something official like PEP8 or unofficial but used by the whole community as Ruby Style Guide on GitHub.

If you still choose your own style in a team environment just because yada yada yada you’re an asshole.

At least realize that and stop working with the team. :sunny:

2 Likes

Ce spui tu e bine, doar că:

  1. În lumea JS nu prea e un stil bine definit. Cel mult ai putea face o statistică din NPM (e.g. Airbnb zice 2 de spații, jQuery de un tab)

Da, poate că este o tendință spre un anumit stil (în JS 2 spații, în PHP 4 spații), dar nu aș putea spune că e neapărat o regulă.

Dap si aici exista doua (+1) variante:

a) mergi pe ceea ce echipa foloseste
b) incerci sa convertesti codebase-ul daca chiar crezi ca are sens
c) nu te alaturi echipei

1 Like

Cand nu e un style guide bine definit, e intotdeauna un default OK IMO sa folosesti style-guide-ul de la Google. Valoarea unui style guide nu e atat ca sunt niste alegeri bune in el [1], ci ca e litera de lege - toata lumea trebuie sa-l respecte. Codebase-ul arata uniform, iar lupte de genul tab vs spaces, K&R vs BSD vs GNU nici nu incep.


[1]Desi de multe ori, sunt alegerile cele bune, dupa ani de experienta la nivelul unei organizatii mari. Cateodata sunt alegeri aiurea - gen Hungarian notation sau sa incepi toate numele de clasa cu T.

Raspuns de 2016: Who cares? :slight_smile:

Atata timp cat exista lintere care stiu sa impuna regula si editoare care sa interpreteze acest lucru nu ma mai intereseaza. In toti anii astia am intalnit oameni care faceau intend de mana si sareau in sus la un spatiu in plus sau in minus intre metoda() si {. Acum ii rog doar sa scrie un config pe care si-l doresc si pot lucra cu el foarte bine.

1 Like

let’s pour gasoline on the fire :fire:

:fire_engine: :fire_engine: :fire_engine:

6 Likes

Abia aștept luni s-ajung la birou să convertesc tot codul la indentare cu spații și să cer o mărire! :troll:

10 Likes

In Go indenting is by Tab. So, who cares :slight_smile:

1 Like

Nu mai contează, în JS există prettier și orice ai face tot spații sau tab-uri vei avea (în funcție de setări) după ce-l tragi prin prettier.

Eu prefer tab-urile fiindcă am lucrat jumătate de an cu jade (acum pug) și express, iar jade dădea direct eroare dacă un tab nu era bine și mă enerva să tot dau reindent.

Am folosit Tabs si acum Spaces, this talk made me think and I agree with his views:

1 Like