Je pense que construire une langue qui se compile dans une autre langue semble être une mauvaise idée dès le départ, au lieu d'apprendre javascript correctement dès le départ. Examinez les bonnes pièces de Douglas Crockfords, puis vous êtes accro. Et javascript n'est pas difficile - écrire du bon code est difficile quelle que soit la langue! Si vous écrivez du code merdique en javascript, alors vous écrirez proprement du code merdique en coffeescript ou lattescript ou quelle sera la saveur du jour. Et dire que la syntaxe coffeescript est belle me passe. J'aime mes accolades et ma syntaxe C - et travaillerais de préférence dans un langage qui est comme ça (désolé VB!). Et plus de jouets et de langages et de cadres pour faire la même chose encore une fois ne me semblent plus comme un progrès!
la source
Réponses:
CoffeeScript est principalement une syntaxe différente en plus de JavaScript.
Si vous comprenez JavaScript et comprenez vraiment JavaScript, alors vous êtes autorisé à utiliser CoffeeScript si vous dites, préférez les espaces blancs et
->
Je considère que la différence entre JS et CS est la même que celle de discuter
(ce dernier est meilleur. Quiconque fait le premier devrait se faire tirer dessus).
Quoi qu'il en soit, le principal problème avec coffeescript est de faire venir des gens (principalement des rails), puis d'écrire coffeescript sans connaître javascript.
Coffeescript a donc tous les mêmes défauts que jQuery. Ce sont juste plus de points d'entrée pour que les mauvais programmeurs écrivent plus de mauvais JavaScript. Nous devons vraiment résoudre la qualité du code d'une manière ou d'une autre.
la source
the latter is better. Anyone who does the former should get shot
- cela dépend de la langue - j'aime le premier style, mais ce n'est pas compatible avec JS, qui est ma langue principale;)it depends on the language.
Je pense qu'il voulait parler de JavaScript.Il y a une idée fausse de JavaScript en tant que langage "jouet". Cela amène les gens à le considérer comme quelque chose à jouer avec, plutôt que utilisé pour quelque chose de substantiel. Ajoutez cela à la barrière inférieure pour l'entrée (c'est-à-dire que vous avez déjà un navigateur et un éditeur de texte, afin que vous puissiez commencer à écrire JavaScript), et vous vous retrouvez avec des masses de gens qui ne comprennent pas la langue écrivant des quantités massives de code, et souillant le nom "JavaScript".
Il y a une quantité plus élevée (absolue) de mauvais JS que les autres langues en raison de cette visibilité accrue. Les mauvaises habitudes deviennent courantes à mesure que le mauvais code se propage sur le Web et que les gens consultent la source sur des pages qui n'ont pas été vérifiées pour l'exactitude ou les bonnes pratiques, et JavaScript se retrouve avec un mauvais nom à cause de cela.
Pour ces raisons, les gens ressentent le besoin de créer des langages plus familiers (plus "réels") qui se transposent en JavaScript. Ils veulent le confort de l'OO classique, de la frappe statique et d'autres fonctionnalités qui apparaissent dans d'autres langues. Ils voient les monstruosités créées par des programmeurs inexpérimentés utilisant JS, et pensent que cela doit être le résultat des "défauts fondamentaux" (pour citer Google) dans la langue.
</rant>
Quoi qu'il en soit, utilisez ce que vous voulez. Je m'en tiendrai à mes objets littéraux, typage dynamique et OO prototypique, merci.
la source
class
Je pense que l'avantage (avertissement: je n'ai pas utilisé CoffeeScript au-delà de jouer avec l'exemple sur le site Web) est qu'il rend JavaScript un peu plus intuitif pour la foule à laquelle il s'adresse: à savoir les personnes Ruby / Python.
Personnellement, je ne vois pas la nécessité de CoffeeScript, car j'aime la syntaxe JavaScript. Cependant, je vois comment cela pourrait être utile.
la source
->
et=>
) car j'ai un peu utilisé Ruby / Python, mais je pense que nous ne devrions pas essayer de cacher JavaScript en raison de son omniprésence. Oui, certains d'entre eux sont maladroits mais apprendre le JavaScript "pur" est un meilleur retour sur investissement de l'OMI en raison de la prolifération du JavaScript "pur" dans la nature.Que vous aimiez la syntaxe ou non est subjectif, cependant le fait est que CofeeScript s'occupe de quelques verrues JavaScript ennuyeuses. Bien sûr, on ne sait toujours pas s'il vaut la peine d'introduire un nouveau langage et de faire face à l'étape de compilation.
la source