Už podle první kapitoly o závorkách pri volání funkcí je zřejmé, že ten jazyk stojí za prd.
Názory k článku
CoffeeScript: nový jazyk, nové chytáky
Re: CoffeeScript: nový jazyk, nové chytáky
celé vláknoRe: CoffeeScript: nový jazyk, nové chytáky
celé vláknoStojí tak za prd, že mám díky němu mnohem čitelnější a o třetinu kratší zdrojáky.
Vždy, když máte v jazyku nějaké implicitní chování, je nutné vyjímku popsat explicitně. Pokud dokážete vymyslet lepší logiku vynechávání zbytečných závorek, zkuste ji sem, prosím, napsat.
Re: CoffeeScript: nový jazyk, nové chytáky
celé vláknoČitelnější? Když se "foo + 1" liší od "foo +1" tak mně osobně to přijde méně čitelné. Chci programovat a ne si pamatovat esoterická pravidla o všech možnostech jak zapsat volání fuknce a kombinací možných záměn závorek a whitespace.
Re: CoffeeScript: nový jazyk, nové chytáky
celé vláknoO všech těchto esoterických chytácích se dozvídám až z tohoto článku (mimo to závorkování, což ale bohužel lépe udělat nejde - což vím, protože jsem si to zkoušel navrhnout jinou logikou a tam došlo k chybám zase v odlišných situacích). Už jsem v Coffee napsal desítky tříd, plno unit testů a to jak na client-side, tak na server-side a žádnou z chyb jsem ani omylem nepotkal.
Existují 2 časté workflow: foo+bar a foo + bar a obě fungují. Ostatní mě nezajímají. Nicméně dokážu si představit, že někdo bude mít štábní kulturu foo +bar a pak mu bude Coffee vadit (já bych s takovým člověkem třeba pracovat nechtěl).
Já s Coffee píšu čitelnější a kratší kód a jsem produktivnější. Že nepodporuje nějakou obskurní štábní kulturu není důvod, proč bych měl programovat v jazyce, který ji sice podporuje (ale já ji nepoužívám), ale budu v něm psát delší, škaredější zdroják delší dobu.
Re: CoffeeScript: nový jazyk, nové chytáky
celé vláknoPsal jste lépe "čitelný" a nebo lépe "psatený" kód? Nu, až se tento jazyk rozšíří a vám nezbyde než na velkých projektech číst i cizí zdrojáky, uvidíte s kým budete a nebudete chtít pracovat, a jestli se vás na to někdo bude ptát.
Re: CoffeeScript: nový jazyk, nové chytáky
celé vláknoObojí. Čitelný a psatelný.
Pomocí Coffee jsem napsal systém, který pohání IS firmy, která má hodnotu přes 14 miliard korun. Ten zdroják není ani zdaleka trivální. Postupem času jsem si na to nabral dalšího vývojáře. Píšeme testy, děláme všechno, co se v solidním vývoji dělá. A Coffee celou tu dobu nebyl nikdy úzkým hrdlem. Naopak ohromně zrychluje vývoj.
Co se týká toho, s kým budu pracovat, vybírám si sám, jaké lidi najmu, jaký jazyk použiju a jaký framework to bude pohánět.
Re: CoffeeScript: nový jazyk, nové chytáky
celé vláknoVýborně. Pokud jste v pozici kdy si můžete štábní kulturu vynutit, a tím si vlastně vytvořit vlastní zúženou syntaxi jazyka, pak vám to jistě může být jedno.
Zkuste ovšem trochu poodstoupit a pochopíte co je tam za obecný problém - resp. vy to víte, jinak byste nepsal že si vybíráte jenom lidi kteří sdílejí vaši štábní kulturu.
Re: CoffeeScript: nový jazyk, nové chytáky
celé vláknoAhoj Jirko,
nemáš v plánu své zkušenosti nabité na tom projektu někde sepsat? Psal jsi v Coffee client-side i server-side? Co jsi použil jako server-side? Node.js?
Jinak mně osobně se Coffee moc líbí. Je super, jak rychle se dá naučit (5 minut je až až). Snad se časem víc rozšíří a přibude i lepší podpora do editorů.
Re: CoffeeScript: nový jazyk, nové chytáky
celé vláknoNo v server-side jsem napsal jeden e-shop. Použil jsem node.js a Zappa. Ještě jsem to ale nespustil.
Na client-side je těch projektů víc, v podstatě ode dne, co znám coffee, používám ho na všechno.
Re: CoffeeScript: nový jazyk, nové chytáky
celé vláknoNo to potěš koště, prosím o název firmy ať vím, čemu se vyhnout. IS firmy založený na Javascriptu ve mě rozhodně nebudí důvěru.
Re: CoffeeScript: nový jazyk, nové chytáky
celé vláknočo je čitatelnejšie?
tento zápis:
button.click -> alert "Klik"
alebo tento zápis:
button.click(function()
{
return alert("Klik");
});
?
Re: CoffeeScript: nový jazyk, nové chytáky
celé vláknoBez nějakých specifických znalostí 2) a s nimi 1), ale to vynechávání závorek mi přijde vyloženě nešťastné – IMHO to čitelnost snižuje* a lepší by bylo něco jako:
button.click -> alert("Klik");
nebo spíš:
button.click -> { alert("Klik"); };
*) a těch ušetřených pár znaků za to nestojí
Re: CoffeeScript: nový jazyk, nové chytáky
celé vláknomyslím že pre neprogramátora je rozhodne čitateľnejší a prirodzenejší 1. zápis. ale ak preferujete zátvorkové peklo tak potom sú pre vás sú C like jazyky ako stvorené.
Re: CoffeeScript: nový jazyk, nové chytáky
celé vláknoAd „pre neprogramátora“
:-)
Re: CoffeeScript: nový jazyk, nové chytáky
celé vláknoDoporučuji zkusit. Sám jsem byl ze začátku lehce skeptický, ale teď nedám na Coffee dopustit. Od té doby tyhle obhajoby závorkovacích orgií vůbec nechápu.
Strašný jazyk
celé vláknoTak tento jazyk s chutí vynechám.
Jazyk, ve kterém se trikuje namísto píše – je škoda, že to autor vůbec vymýšlel.
Re: Strašný jazyk
celé vláknoJa si naopak myslim, ze Coffee, aj ked na prvy pohlad vypada neprivetivo a akoby hadzalo polena pod nohy (vid. clanok), tak za tu namahu naucit sa ho stoji.
Doba je taka, ze vo webdev sa coraz viac logiky presuva do JS a kazde zlepsenie abstrakcie/syntaxe je len vyhodou.
Re: CoffeeScript: nový jazyk, nové chytáky
celé vláknosyntax CoffeeScriptu je evidentne inšpirovaná jazykmi z rodiny ML pretože rovnaká chyba nastane aj v jazyku F#
let prefix = "#prvok_"
let id1 = prefix + "12" // = "#prvok_12"
let id2 = prefix +"12"
Error 1 This value is not a function and cannot be applied C:\Users\blizzboz\Documents\Visual Studio 2010\Projects\Script1.fsx 3 11 Miscellaneous Files
najlepšie je otvoriť si interaktívnu konzolu http://jashkenas.github.com/coffee-script/ (Try CoffeeScript) a keď narazte na chybu tak si môžete hneď odtestovať aký JS vám z toho vylezie.
Upřesnění
celé vláknoVěta "vyhodnocování operátorů je asociativní zprava" mi vůbec nedává smysl. V uvedeném případě jde spíš o to, že implicitní závorky při volání funkce se ukončují až na konci řádku či bloku.