Paso 3: Sinatra toma el escenario!
Hay muchas maneras para crear sitios web y servicios web. De idiomas con el apoyo de web de programación bibliotecas, marcos completa, puede ser confuso y difícil de elegir uno para este trabajo.
He utilizado y jugó con un buen número de tecnologías de aplicación web y encontrar que Sinatra es ideal para la construcción de servicios web y sitios web pequeños. En particular, cuando construir un servicio web para apoyar un gadget de Arduino, Sinatra es una muy buena opción.
¿Qué es Sinatra, ¿por qué es una buena opción? Me alegro de que le!
Sinatra es un lenguaje para el desarrollo rápido de aplicaciones web. Es construir sobre Ruby, un lenguaje de scripting de propósito general muy popular y expresivo. Usted podrá escuchar a Sinatra siendo referido como un "DSL", un lenguaje específico de dominio. El dominio aquí es la Web. Las palabras clave (palabras) y la sintaxis creada para Sinatra es tal que resulta fácil y rápido para personas que crear aplicaciones web.
En un momento donde son super populares llamados "opinionated" Marcos para el desarrollo de aplicaciones web Ruby on Rails y Django , Sinatra captura el extremo opuesto del espectro. Mientras Ruby on Rails y Django requiere al programador seguir un convenio específico y la manera de hacer las cosas (que, a su vez, implica una curva de aprendizaje empinada y larga), Sinatra no hace tales requisitos.
Sinatra es conceptualmente mucho más simple que los rieles y Djangos del mundo. Puede obtener ya en funcionamiento con una aplicación web que puede interactuar con tu Arduino dentro de minutos.
Demuestro con un ejemplo. Aquí es lo que parece una aplicación de web mínimo de Sinatra (acabo de leer el siguiente para ahora, realmente no esta en su computadora porque probablemente todavía no tienes el programa de instalación de requisitos previos para ello):
En un solo archivo, vamos a llamarlo my_app.rb, agrega este texto:
requieren a 'sinatra'
get ' /' hacer
¡ Hola, mundo!
final
En la línea de comandos, inicie la aplicación como este:
my_app.rb Ruby
Comenzará su aplicación, y usted verá este texto en la consola:
Pedro rubí my_app.rb
A partir de Puma 2.8.1...
* Hilos de rosca del min: 0, hilos máximo: 16
* Medio ambiente: desarrollo
* Escucha en tcp://localhost:4567
== Sinatra/1.4.4 ha tomado el escenario en 4567 para el desarrollo con el respaldo de Puma
La aplicación está ahora lista para recibir a un cliente las solicitudes. Abra un navegador, punto a http://localhost:4567, y esto es lo que ves (ver adjunto captura de pantalla).
Es cuatro simples líneas de código en un solo archivo. En cambio, rieles hubiera requerido más de un centenar de archivos, genera simplemente para satisfacer los requerimientos de marco. No me malinterpreten, me encanta los carriles, pero realmente?...
Así, Sinatra es simple y rápido de ejecutar. Voy a suponer que no sabes nada sobre Ruby, Sinatra e implementación de aplicaciones a la nube, por lo que en la siguiente sección te llevaré paso a paso desde cero para el despliegue de su servicio de web de Arduino a la nube.