🔥 ▷ Roma: ¿La Mejor Herramienta para Javascript jamás creada?

4 minuto(s) de lectura

Roma: La herramienta perfecta para Javascript creada por el equipo del Framework React de Facebook

Roma es una cadena de herramientas JavaScript experimental. Incluye un compilador, linter, formateador, bundler, marco de prueba y más. Su objetivo es ser una herramienta integral para todo lo relacionado con el procesamiento del código fuente de JavaScript.

Roma no es una colección de herramientas existentes. Todos los componentes son personalizados y no utilizan dependencias de terceros.

Roma es experimental y en desarrollo activo. Está abierto para contribuyentes y aquellos interesados en herramientas experimentales. No está listo para su uso en producción. La única forma de usarlo es construir desde la fuente.

Roma pretende ser un reemplazo para muchas herramientas JavaScript existentes. Sin embargo, ofreceremos integraciones para componentes en otras herramientas. Por ejemplo, usar el compilador de Roma como complemento para otro paquete.

👨‍💻 Los mejores libros para Aprender Javascript y más, en español 💻

Publicada por Ciberninjas en Martes, 3 de marzo de 2020

Historia

Roma fue iniciada por Sebastian McKenzie , el autor de Babel and Yarn.

Roma es un proyecto del equipo React Native de Facebook.

Roma recibe su nombre de proverbios como “Todos los caminos llevan a Roma”, “Roma no se construyó en un día” y “Cuando en Roma, haga lo que hacen los romanos”. Esto se refiere al alcance expansivo y al deseo de conformidad en todo el proyecto. Comenzó como una broma en la oficina.

Roma tiene el logotipo de un casco espartano griego antiguo. No es muy relevante ya que no es romano, pero se ve más genial que una Galea.

Codebase

Roma está escrito completamente en TypeScript con un uso moderado de tipos sueltos.

Roma es un monorepo con paquetes internos para delinear los límites del código.

Roma es autohospedada y se compila con una versión antigua.

Roma admite el procesamiento de JSX, así como el código anotado Flow y TypeScript .

Empezando

Para configurar Roma en un proyecto, todo lo que necesita es un rome.jsonarchivo.

$ mkdir hello-world 
$ cd hello-world 
$ echo  ' {} '  > rome.json

Este archivo se utiliza para configurar Roma e indica los límites de su proyecto.

Consulte Primeros pasos para obtener más instrucciones de uso.

Filosofía

Esta lista incluye el carácter general que debe cumplir el proyecto. Esta lista no es completa. Algunos de estos son obvios pero se declaran completos.

Gestión de proyectos

  • Establecer expectativas claras. Haga conocer la intención y las decisiones del proyecto con suficiente antelación. Nada debería ser una sorpresa.
  • Transparencia. Sin gestión de proyectos de canal posterior. La conversación y las decisiones del proyecto se llevarán a cabo solo en foros públicos como GitHub, Roma Discord y Twitter. La única excepción a esto son las decisiones de moderación que se harán estrictamente en privado.

Técnico

  • Sin dependencias externas. Esto nos permite desarrollarnos más rápido y proporcionar una experiencia más coherente al integrar las bibliotecas internas de manera más estrecha y compartir conceptos y abstracciones. Siempre existen oportunidades para tener una mejor experiencia al tener algo especialmente diseñado.
  • Los errores deben sugerir correcciones y sugerencias cuando sea posible. Deben inferirse y filtrarse del uso para reducir la aparición de mensajes irrelevantes e inútiles.
  • Mensajes de error únicos y específicos. No hay mensajes de error genéricos. Esto no solo ayuda a los usuarios a comprender qué salió mal, sino que también debe proporcionar a los encargados de mantenimiento un sitio de llamadas único y la información necesaria para depurar.
  • Minimizar API. Cuestionar la existencia de todas las opciones y banderas. ¿Son necesarios? ¿Se pueden combinar? ¿Cómo podemos reducir la ramificación de código?
  • Reduce la jerga. No asuma que los usuarios comprenderán la terminología específica. Esforzarse por proporcionar un significado claro para expertos y principiantes. Por ejemplo, use “carácter” donde tradicionalmente usaría “token” cuando produzca errores de analizador.
  • Utilice la verbosidad al nombrar comandos y banderas. No hay abreviaturas innecesarias y confusas.
  • Use terminología inclusiva. Usa pronombres neutros en cuanto al género. Sin insultos capaces. No se utilizan términos que puedan considerarse insensibles.
  • Construir para clientes genéricos. No asuma que la salida solo será consumida por un terminal y utilizando códigos ANSI. Utilice abstracciones que se puedan generalizar para ver en un IDE, navegador u otros entornos.
  • Usa tipos fuertes. No use tipos sueltos como any. Donde sea posible, refine y valide la entrada. Apunta a los tipos de sonido.
  • La salida del terminal no debe ser ambigua. Al diseñar la salida del terminal, no confíe únicamente en las señales de formato como el color. Siempre use una combinación de formato, símbolos y espaciado. Si se eliminan todos los códigos ANSI, toda la salida aún debe entenderse.

Licencia

Roma tiene licencia del MIT y el proyecto se gestiona bajo el Código de Conducta del Pacto del Colaborador. Fuente: Repositorio de Github

Relacionados

🥇 ▷ Cómo APRENDER a Programar GRATIS cualquier Lenguaje de Programación en 2020

▷ Las 15 Mejores Lenguajes de Programación para Aprender en 2020

👨‍💻 Los mejores libros para Aprender Javascript y más, en español 💻

Publicada por Ciberninjas en Martes, 3 de marzo de 2020