Co říkáte na kód bootstrapu?

Riff

Co říkáte na kód bootstrapu?
« kdy: 30. 01. 2013, 15:53:33 »
Zdravím. Říkal jsem si, proč nezkusit Twitter Bootstrap, když je kolem tolik rozruchu. Vypadalo to celkem dobře, než jsem se podíval do kódu. Nejen že všude chybí středníky, ale celý kód je ehm, divně formátovaný a hlavně prolezlý roztodivnými konstrukcemi.

Pár příkladů:

Kód: [Vybrat]
Dropdown.prototype = {

    constructor: Dropdown

  , toggle: function (e) {
      var $this = $(this)
        , $parent
        , selector
        , isActive
...

Ok, vypadá to jak kdyby to psal retard, ale proč ne.

Kód: [Vybrat]
!isActive && $parent.toggleClass('open')

To už je podstatně horší, prostě zneužívání vlastností jazyka způsobem, ke kterému nejsou určeny.

Kód: [Vybrat]
!function($) {...}(jQuery)

Tohle už je na mě moc - prefixovat booleovským operátorem, abych nemusel psát středník, to je vrchol kreténismu.

A mohl bych pokračovat hodně dlouho. Co si o tom myslíte vy? Podle mě autor žije v domnění, že psát kód tímhle stylem je neuvěřitelně kchůl a neuvědomuje si, jaký je ve skutečnosti prase.

Any fool can write code that a computer can understand. Good programmers write code that humans can understand.
- Martin Fowler


bbbb

Re:Co říkáte na kód bootstrapu?
« Odpověď #1 kdy: 30. 01. 2013, 16:04:18 »
:) myslim ze mas pravdu, vela krat ked si pozeram rozne projekty naslepo napr. na github-e, tak si zacinam mysliet ze som nejaky programatorsky analfabet ze mam proble rozumieti, co tym chcel basnik povedat, ono to moze byt aj naopak, ze ti ludia to proste pisat nevedia

bbbb

Re:Co říkáte na kód bootstrapu?
« Odpověď #2 kdy: 30. 01. 2013, 16:05:14 »
proble rozumieti

*problem rozumiet

lons

Re:Co říkáte na kód bootstrapu?
« Odpověď #3 kdy: 30. 01. 2013, 16:20:39 »
pozri sa na to z druhej strany. programujes predsa v userspace.

 funguje to ? funguje. tak kde je problem??

AlyoSHA

Re:Co říkáte na kód bootstrapu?
« Odpověď #4 kdy: 30. 01. 2013, 16:51:43 »
To je zly pristup.  Taketo kriteria su dobre pre patlanie ktore nechces poslat do sveta.  V opacnom pripade je slusnost pisat kod ktoremu bude rozumiet aj niekto iny ako autor. U par projektov som si vsimol ze autor nielenze pouziva divne konstrukcie, ale komentare povazuje za zbytocny luxus. (asi by sa mu kod s komentarom zdal uz pridlhy)


Riff

Re:Co říkáte na kód bootstrapu?
« Odpověď #5 kdy: 30. 01. 2013, 16:53:24 »
Citace
funguje to ? funguje. tak kde je problem??

Tak účel to plní, o tom žádná. Mám s tím jenom trochu psychologický problém, že ten kód je prostě humus.

pet

Re:Co říkáte na kód bootstrapu?
« Odpověď #6 kdy: 30. 01. 2013, 17:10:32 »
Neviděl bych to tak černě.. Použití guard operatoru je celkem běžné, stejně tak jako defaultu:

Kód: [Vybrat]
function x(type) {
   type = type || 'normal'
}
http://seanmonstar.com/post/707078771/guard-and-default-operators

Vykřičník před definicí funkcí není prefix, ale další možnost jak hned funkci zavolat bez pouziti zavorek:
Kód: [Vybrat]
function() {}() // chyba
(function(){})() // OK ale hodne zavorek
!function(){}() // OK, vyhodnoceno jako vyraz

http://stackoverflow.com/questions/3755606/what-does-the-exclamation-mark-do-before-the-function

Riff

Re:Co říkáte na kód bootstrapu?
« Odpověď #7 kdy: 30. 01. 2013, 17:47:52 »
Jako default to beru, jako náhradu if rozhodně ne(v uvedeném případě ani ta podmínka není potřeba, $.toggleClass má parametr switch). V nepřehledném využití vedlejšího efektu operátoru místo napsání dvou závorek nevidím žádný přínos... Navíc to bylo jenom pár příkladů, našlo by se tam toho víc. Co mě ovšem zaráží nejvíc, je nepoužívání středníků v celém kódu. Je to další zneužití vlastnosti jazyka(Automatic semicolon insertion) a kromě náchylnosti k chybám to nic nepřináší. Samozřejmě to všechno funguje, ale je to nepřehledné. Když si můžu vybrat mezi přehlednějsím kódem a ušetřením jednoho řádku(nebo dokonce jednoho znaku), tak volím první možnost.