CoffeeScript es JavaScript sin los dolores de cabeza
Nunca me ha gustado mucho escribir JavaScript ¿Qué es JavaScript y cómo funciona? [Tecnología explicada] ¿Qué es JavaScript y cómo funciona? [Tecnología explicada] Leer más todo eso mucho. Desde el día en que escribí mi primera línea usándolo, siempre me ha molestado que todo lo que escribo en él termine pareciéndose a un cuadro de Jackson Pollock. Blegh.
Sí. A pesar de su potencia y flexibilidad, JavaScript no es de ninguna manera un lenguaje bonito. Lleva la verbosidad a un extremo y tiene tantas peculiaridades e idiosincrasias, incluso el libro más famoso sobre el lenguaje de programación JavaScript asiente a su maldad inherente con su título 'JavaScript: The Good Parts'.
Un mejor JavaScript
Aunque no tiene que ser así. JavaScript tiene una gran cantidad de increíbles herramientas y bibliotecas, y si usa CoffeeScript, puede crear sitios web y herramientas brillantes sin tener que lidiar con la sintaxis, lo que hace que sus córneas sangren. También es el momento de brillar de CoffeeScript, ya que cada vez más principiantes buscan en JavaScript su primer idioma debido a su uso en el desarrollo web de clientes y back-end, así como en gran parte de HTML5..
Estéticamente, CoffeeScript se ve y se siente como Python o Ruby. Los 5 mejores sitios web para aprender a programar en Python Los 5 mejores sitios web para aprender a programar en Python ¿Quieres aprender a programar en Python? Estas son las mejores maneras de aprender Python en línea, muchas de las cuales son completamente gratuitas. Leer más Es genuinamente, sorprendentemente hermoso, y adopta ciertas convenciones del lenguaje que lo hacen fácil de aprender. Realmente se siente más como un Rembrandt que un Pollock. Y, sin embargo, se compila a JavaScript, lo que le permite usarlo en cualquier lugar que lo use, incluido el desarrollo de front-end y node.js. Incluso puede usarlo con jQuery Tutorial de jQuery - Primeros pasos: conceptos básicos y selectores Tutorial de jQuery - Primeros pasos: conceptos básicos y selectores La semana pasada, hablé sobre la importancia de jQuery para cualquier desarrollador web moderno y por qué es increíble. Esta semana, creo que es hora de que nos ensuciemos las manos con algún código y aprendamos cómo ... Leer más .
Obtener una copia de CoffeeScript es fácil. Hay varias formas de instalarlo. En primer lugar, si está utilizando una versión reciente de Ubuntu Linux, puede instalarla utilizando el administrador de paquetes incorporado. Sin embargo, la experiencia me dice que es probable que la versión en sus repositorios sea una versión anterior..
Como resultado, probablemente sea una buena idea tomarlo con el Administrador de paquetes de nodos. Node Package Manager (npm) es un poco como apt-get o Brew, pero solo se usa para obtener paquetes y bibliotecas de Javascript. Prácticamente, NPM viene con node.js y está disponible para OS X, Windows y todas las versiones de Linux.
Para instalarlo usando NPM, ejecute el siguiente comando como root:
$ npm install -g coffee-script
El disparador '-g' lo instala globalmente, permitiéndole usar CoffeeScript en cualquier parte de su computadora, y invocarlo desde la línea de comandos donde sea que esté. Ahora estás listo para una gran cantidad de diversión de CoffeeScript.
“Es solo JavaScript”
Es importante recordar que la regla de oro de CoffeeScript es “Es solo JavaScript”. Esto es tanto una ventaja como también una desventaja. Si has tenido la oportunidad de ver la divertida charla de Gary Bernhardt, 'Wat', sabrás que JavaScript tiene su parte de verrugas y rarezas. En su mayor parte, CoffeeScript comparte estos. Después de todo, es esencialmente una abstracción de JavaScript..
Sin embargo, esto no es del todo malo. En primer lugar, le permite utilizar CoffeeScript con sus proyectos Node, Angular, Express o Backbone. Además de esto, también puedes utilizar el motor de JavaScript V8 de Google, que es un intérprete muy rápido para Javascript. Independientemente de lo que haga, puede estar seguro de que se derretirá rápidamente..
Debo confesar que podría ser un poco parcial. Habiendo tenido la oportunidad de pasar los últimos meses escribiendo una gran cantidad de CoffeeScript en mi trabajo diario, puedo dar fe de lo encantador que es. De hecho, dada mi exposición previa a él, animo sinceramente a los desarrolladores novatos y expertos a considerar como un lenguaje de partida.
Quizás una de las razones más convincentes por las que estoy tan ansioso por abrazar las virtudes de CoffeeScript es porque creo que ha adoptado algunas opciones de diseño de lenguaje increíblemente innovadoras que exigen buenas prácticas de desarrollo de software. Esto significa que cualquiera que sea el código que escriba, es muy probable que sea bastante legible..
En particular, CoffeeScript obliga a sangrar todo su código de una manera lógica y sensata. Cualquiera que sea el código que produzca, tiene que seguir una jerarquía lógica. Si no lo hace, el compilador de CoffeeScript le grita y se niega a ejecutar su código. Esto comenzará a sentirse demasiado familiar si alguna vez ha escrito algún código en Python.
He observado que CoffeeScript se creó claramente con el objetivo de ser realmente expresivo. Sintácticamente, es muy similar al inglés simple, aunque con algunos paréntesis y flechas adicionales dispersos cuidadosamente alrededor del lugar. Una ventaja de esto es que se vuelve trivial para expresar verbalmente el flujo de su programa. Práctico si usted es un programador novato que intenta obtener retroalimentación sobre su código de alguien mucho más experimentado, o que trabaja para una compañía de desarrollo de software que hace uso extensivo de la programación en pares, como la que yo hago..
Además de aumentar sus credenciales para principiantes, en el corto período en el que existe, CoffeeScript ha logrado desarrollar una comunidad bastante activa y amigable. Los principiantes atascados son más que bienvenidos para abordarlos con preguntas, y en general están contentos de responder. Además de una fuerte presencia en Stack Overflow, un sitio web oficial que contiene un intérprete de CoffeeScript dentro de la propia página y muchas publicaciones al respecto, le resultará muy difícil quedarse atascado durante demasiado tiempo..
Un lenguaje hermoso
Greg Pollack, el fundador de Code School, define un hermoso lenguaje de programación como uno que le permite al desarrollador obtener el máximo rendimiento al usar una cantidad mínima de código. Por esta definición, CoffeeScript es un hermoso lenguaje de programación. Desde el principio, se siente muy bien diseñado..
Tal vez una de las opciones más sensatas que realiza es abandonar la forma insípida de JavaScript de hacer orientación de objetos. En su lugar, se reemplaza con un sistema mucho más elegante que se basa en las clases, que será familiar para cualquiera que haya incursionado en algunos de los idiomas basados en OOP más populares que existen. Esto reduce drásticamente la barrera de entrada para muchos programadores. También hace esto mientras no descarta por completo sus credenciales funcionales..
El lenguaje en sí se siente un poco menos pesado, también. Se extirpan enormes franjas de CoffeeScripts a granel. Las variables no se declaran usando 'var'. Los paréntesis y las llaves son casi tan raros como un tigre de Bengala. Ni siquiera necesita paréntesis para pasar parámetros a una función. Cada función devuelve algo, dándole una cosa menos de qué preocuparse. Cosas alucinantes.
A pesar de su evidente juventud, CoffeeScript ha recibido mucha atención y por muy buenas razones. CoffeeScript se incluyó recientemente de forma predeterminada en Ruby on Rails, el marco web que impulsa sitios como Github y Groupon. No son solo las empresas las que acuden en masa, ya que los desarrolladores han empezado a aceptarlo y han creado una gran cantidad de complementos de CoffeeScript, incluso para Sublime Text 2 Probar Sublime Text 2 para sus necesidades de edición de código multiplataforma Probar Sublime Text 2 Para sus necesidades de edición de código multiplataforma Sublime Text 2 es un editor de código multiplataforma del que he oído hablar recientemente, y debo decir que estoy realmente impresionado a pesar de la etiqueta beta. Puede descargar la aplicación completa sin pagar un centavo ... Leer más y Vim. Esto significa que no tienes que prescindir del resaltado de sintaxis y la finalización del código para utilizar la última y brillante tecnología web inconformista..
Conclusión
CoffeeScript es un soplo de aire fresco, y es una adición bienvenida a cualquier kit de herramientas para desarrolladores. Sin embargo, hay pocas perturbaciones que restan valor a la experiencia de desarrollar en ella, lo que se espera que se solucione en las últimas iteraciones del producto ...
En primer lugar, a pesar de que el manejo de errores es maravillosamente explícito sobre el problema que ha encontrado, no siempre es tan obvio dónde se encuentra el problema. Luego se le informa de la línea que tiene el código erróneo, rara vez se encuentra en el código de CoffeeScript que ha creado, sino en el JavaScript compilado. Esto significa que tienes que pasar por el proceso irritante de compilar tu código en JavaScript para depurarlo. Increíblemente inútil.
Desde entonces, he aprendido que si compila su código y luego lo canaliza a 'nl -ba', los resultados resultantes son mucho más fáciles de leer y contienen números de línea razonables..
Otra molestia que experimenté personalmente fue que cuando la documentación está escrita en Javascript, mentalmente debes traducirla a CoffeeScript. Si bien esta es inicialmente una de las principales causas de frustración y molestia, descubrí que esto subsiste cuando empiezas a acostumbrarte al lenguaje. Es solo una cuestión de persistencia..
CoffeeScript reinventa la rueda. No hay duda de eso. Sin embargo, reinventa la rueda, y luego la convierte en una rueda brillante, deslumbrada y deslumbrada. CoffeeScript es una hermosa rueda de hecho. ¿Se mudará a CoffeeScript para su desarrollo diario? Házmelo saber en los comentarios.
Explorar más sobre: JavaScript, programación, desarrollo web.