CoffeeScript es JavaScript sin dolores de cabeza

  • Edmund Richardson
  • 0
  • 2370
  • 712
Anuncio

Nunca me ha gustado realmente escribir JavaScript ¿Qué es JavaScript y cómo funciona? [Explicación de la tecnología] ¿Qué es JavaScript y cómo funciona? [Explicación de la tecnología] todo eso. Desde el día en que escribí mi primera línea usándolo, siempre me ha molestado que todo lo que escribo siempre parezca una pintura de Jackson Pollock. Blegh.

Sí. A pesar de su poder y flexibilidad, JavaScript no es en absoluto un lenguaje bonito. Lleva la verbosidad al extremo y tiene muchas 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

Sin embargo, no tiene por qué ser así. JavaScript tiene una gran cantidad de herramientas y bibliotecas increíbles, y si usa CoffeeScript, puede crear sitios web y herramientas brillantes sin tratar con la sintaxis que hace que sus córneas sangren. También es el momento de CoffeeScript para brillar, ya que cada vez más principiantes buscan en JavaScript su primer idioma debido a su uso en el desarrollo web cliente y back-end, así como gran parte de HTML5.

Estéticamente, CoffeeScript se ve y se siente como Python o Ruby. Los 5 mejores sitios web para aprender programación de Python Los 5 mejores sitios web para aprender programación de Python ¿Quieres aprender la programación de Python? Estas son las mejores formas de aprender Python en línea, muchas de las cuales son completamente gratuitas. Es genuinamente, asombrosamente hermoso, y adopta ciertas convenciones de lenguaje que hacen que sea fácil de aprender. Realmente se siente más como un Rembrandt que un Pollock. Y, sin embargo, se compila en JavaScript, lo que le permite usarlo en todas partes, incluido el desarrollo front-end y node.js. Incluso puede usarlo con jQuery Tutorial de jQuery - Introducción: conceptos básicos y selectores Tutorial de jQuery - Introducción: 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 algo de código y aprendamos cómo ... .

Obtener 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. La experiencia, sin embargo, 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. El Node Package Manager (npm) es un poco como apt-get o Brew, pero solo se usa realmente para obtener paquetes y bibliotecas de Javascript. Prácticamente, NPM viene con node.js y está disponible para OS X, Windows y todos los sabores de Linux.

Para instalarlo usando NPM, ejecute el siguiente comando como root:

$ npm install -g coffee-script

El disparador '-g' lo instala globalmente, lo que le permite usar CoffeeScript en cualquier lugar de su computadora e invocarlo desde la línea de comando dondequiera que se encuentre. Ahora estás listo para una gran cantidad de diversión con 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 ha tenido la oportunidad de ver la graciosa charla de Gary Bernhardt, 'Wat', sabrá 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 usar CoffeeScript con sus proyectos Node, Angular, Express o Backbone. Además de esto, también puedes usar el motor JavaScript V8 de Google, que es un intérprete muy rápido para Javascript. Sea lo que sea que hagas, puedes estar seguro de que será increíblemente rápido.

Debo confesar que podría ser un poco parcial. Después de haber 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 esto, animo de todo corazón a los desarrolladores novatos y jornaleros a considerarlo como un idioma de partida..

Quizás una de las razones más convincentes por las que estoy tan ansioso por defender las virtudes de CoffeeScript es porque siento 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 sea cual sea el código que escriba, las probabilidades son buenas de que sea bastante legible.

En particular, CoffeeScript exige que sangres todo tu código de una manera lógica y sensata. Cualquiera que sea el código que produzca, debe 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 fue creado claramente con el objetivo de ser realmente expresivo. Sintácticamente, es notablemente similar al inglés simple, aunque con algunos paréntesis y flechas adicionales cuidadosamente esparcidos por el lugar. Una ventaja de esto es que se vuelve trivial expresar verbalmente el flujo de su programa. Útil si eres un programador novato que intenta obtener comentarios sobre tu código de alguien mucho más experimentado o que trabajas para una empresa de desarrollo de software que utiliza ampliamente la programación de pares, como la que yo hago.

Además de sus credenciales amigables para los novatos, en el corto período en que ha existido, CoffeeScript ha logrado desarrollar una comunidad bastante activa y amigable. Los principiantes estancados son más que bienvenidos a abordarlos con preguntas, y en su mayor parte generalmente están felices 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 página en sí y una gran cantidad de publicaciones al respecto, sería difícil encontrarse atrapado durante demasiado tiempo..

Un hermoso lenguaje

Greg Pollack, el fundador de Code School, define un hermoso lenguaje de programación como uno que le permite al desarrollador hacer la mayor cantidad de cosas mientras usa una cantidad mínima de código. Según esta definición, CoffeeScript es un hermoso lenguaje de programación. Desde cero, se siente notablemente bien diseñado.

Quizás una de las elecciones más sensatas que toma es abandonar la forma loca de JavaScript de orientar los objetos. En cambio, se reemplaza con un sistema mucho más elegante que se basa en clases, que será familiar para cualquiera que haya incursionado en algunos de los lenguajes basados ​​en OOP más populares que existen. Esto reduce drásticamente la barrera de entrada para muchos programadores. También lo hace sin descartar por completo sus credenciales funcionales..

El lenguaje en sí también se siente un poco menos pesado. Grandes extensiones de CoffeeScripts a granel se eliminan. 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, lo que le da una cosa menos de qué preocuparse. Alucinantes cosas.

A pesar de su evidente juventud, CoffeeScript ha recibido mucha atención y por muy buenas razones. CoffeeScript se incluyó recientemente de manera 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 comenzado a adoptarlo y han creado una gran cantidad de complementos de CoffeeScript, incluido Sublime Text 2 Pruebe Sublime Text 2 para sus necesidades de edición de código multiplataforma Pruebe 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 ... y Vim. Esto significa que no tiene que prescindir del resaltado de sintaxis y la finalización del código para usar la última tecnología web hipster más brillante.

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 pequeños inconvenientes que restan valor a la experiencia de desarrollar en él, lo que se espera que se solucione en versiones posteriores 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 demasiado obvio dónde está el problema. Luego se le informa de la línea que tiene el código erróneo, rara vez está en el código CoffeeScript que ha creado, sino que está en el JavaScript compilado. Esto significa que tiene que pasar por el proceso irritante de compilar su 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 obtenidos son significativamente más fáciles de leer y contienen números de línea sensibles.

Otra molestia que experimenté personalmente fue cuando leer la documentación está escrita en Javascript, tienes que traducirla mentalmente a CoffeeScript. Si bien esto es inicialmente una causa importante de frustración y molestia, descubrí que esto subsiste cuando comienzas a acostumbrarte al idioma. 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 deslumbrante. CoffeeScript es una hermosa rueda de hecho. ¿Se mudará a CoffeeScript para su desarrollo diario? Házmelo saber en los comentarios.




Nadie ha comentado sobre este artículo todavía.

Sobre tecnología moderna, simple y asequible.
Tu guía en el mundo de la tecnología moderna. Aprenda a usar las tecnologías y los dispositivos que nos rodean todos los días y aprenda a descubrir cosas interesantes en Internet.