Я думаю, что создание языка, который компилируется на другой язык, кажется плохой идеей с самого начала, вместо того, чтобы правильно изучать javascript с самого начала. Посмотрите на Дуглас Крокфордс Хорошие запчасти, и тогда вы зацепили. И JavaScript не сложен - писать хороший код сложно, независимо от языка! Если вы пишете дерьмовый код на javascript, то вы, вероятно, напишите дрянной код на coffeescript или lattescript, или каков будет вкус дня. И сказать, что синтаксис coffeescript прекрасен, проходит мимо меня. Мне нравятся мои фигурные скобки и синтаксис C - и я бы предпочел работать на таком языке (извините, VB!). И больше игрушек, языков и рамок для того, чтобы делать одно и то же снова и снова, для меня больше не похоже на прогресс!
источник
Ответы:
CoffeeScript - это в основном другой синтаксис поверх JavaScript.
Если вы понимаете JavaScript и действительно понимаете JavaScript, то вы можете использовать CoffeeScript, если вы говорите, предпочитаете пробелы и
->
Я считаю, что разница между JS и CS такая же, как спор о
(последний лучше. Любой, кто делает первый, должен быть застрелен).
В любом случае, основная проблема coffeescript заключается в том, чтобы люди заходили в него (в основном с рельсов), а затем писали coffeescript, не зная javascript.
Поэтому у coffeescript есть все те же недостатки, что и у jQuery. Они просто плохие точки зрения для плохих программистов, которые пишут больше плохого JavaScript. Нам действительно нужно как-то решать качество кода.
источник
the latter is better. Anyone who does the former should get shot
- это зависит от языка - мне нравится первый стиль, но он не совместим с JS, который является моим основным языком;)it depends on the language.
Я думаю, что он имел в виду в отношении JavaScript.Существует неправильное представление о JavaScript как о «игрушечном» языке. Это заставляет людей воспринимать это как нечто, с чем можно поиграть, а не использовать для чего-то существенного. Добавьте это к низкому барьеру для входа (т. Е. У вас уже есть браузер и текстовый редактор, так что вы можете начать писать JavaScript), и вы получите массу людей, которые не понимают язык, пишущий огромное количество кода, и потаскать имя «JavaScript».
Там является более высоким (абсолютным) количеством плохих JS , чем другие языки из - за эту повышенную видимость. Вредные привычки становятся обычным явлением, поскольку плохой код распространяется по всей сети, и люди просматривают источники на страницах, которые не проверялись на предмет точности или надлежащей практики, а JavaScript в результате приводит к дурному имени из-за этого.
По этим причинам люди чувствуют необходимость создавать более привычные (более «настоящие») языки, которые переходят на JavaScript. Они хотят комфорта классического ОО, статической типизации и других функций, которые появляются на других языках. Они видят чудовищности, созданные неопытными программистами, использующими JS, и думают, что это должно быть результатом "фундаментальных недостатков" (по словам Google) в языке.
</ Декламация>
В любом случае, используйте то, что вы хотите. Я буду придерживаться своих объектных литералов, динамической типизации и прототипов OO, спасибо.
источник
class
: - /Я думаю, что преимущество (отказ от ответственности: я не использовал CoffeeScript, кроме игры с примером на веб-сайте), заключается в том, что он делает JavaScript немного более интуитивным для толпы, которой он занимается: то есть для людей из Ruby / Python.
Лично я не вижу необходимости в CoffeeScript, так как мне нравится синтаксис JavaScript. Однако я вижу, как это может быть полезно.
источник
->
и=>
синтаксиса) , так как я использовал Ruby / Python немного, но я думаю , что мы не должны пытаться спрятаться JavaScript из - за того , как вездесущий это. Да, некоторые из них неуклюжи, но изучение «чистого» JavaScript - это IMO - лучшая окупаемость инвестиций благодаря распространению «чистого» JavaScript в дикой природе.Нравится ли вам синтаксис или нет, но дело в том, что CofeeScript заботится о некоторых раздражающих бородавках JavaScript. Конечно, до сих пор неясно, стоит ли вводить новый язык и справляться с этапом компиляции.
источник