ruby-on-rails - usos - zafiro violeta
¿Qué se utiliza el rubí para los carriles BESIDES? (18)
Ruby on Rails se ha convertido en una nueva cara competitiva en la industria de programación de servidores, junto con php, asp.net, jsp, python y algunos otros. Pero, ¿se usa el rubí para algo además de los rieles? ¿Debe todo su éxito al marco de los rieles? Más preguntas aquí están etiquetadas como ruby-on-rails que ruby. Sin embargo, supongo que PHP no se usa para mucho fuera del servidor,
pensamientos?
Pero, ¿se usa el rubí para algo además de los rieles?
Oh, Dios mío, sí. Mira a RubyForge , que es anterior a Rails y RAA aún más antiguo para ver ejemplos de cosas que no son Rails. En el trabajo, además de las inevitables aplicaciones de intranet basadas en Rails, uso ActiveRecord independiente para trabajo de base de datos, copias de seguridad programadas, análisis de XML, descargas de FTP, análisis de CSV, manipulación de libros de Excel y casi cualquier otro trabajo de creación de scripts ad hoc que aparezca. Pero soy viejo, comencé a jugar con Ruby antes de que Rails fuera una manzana en el ojo de DHH .
En casa, he hecho todo tipo de cosas extrañas, algunas con éxito, otras algo menos. Todos, sin embargo, fueron divertidos y muy pocos estaban relacionados con Rails.
¿Debe todo su éxito al marco de los rieles?
No. Algunos, pero no todos. También es cierto que Rails le debe gran parte de su éxito a Ruby, sin el cual sería una bestia diferente.
Indudablemente, Rails ha aumentado la aceptación de Ruby, llevándolo a un tipo de masa crítica en la que una proporción lo suficientemente grande de desarrolladores, independientemente de su opinión, ahora han oído hablar del lenguaje y tienen alguna idea de las cosas para las que se puede utilizar.
Y sí, se mece.
Aplicaciones web, scripting, algunos juegos, cualquier cosa que se pueda imaginar. Un amigo mío estaba trabajando en un compilador de rubí a as3: D
Bio medicina
Jules J. Berman, PhD, MD escribió un libro de 378 páginas sobre cómo usar ruby para resolver las tareas de cómputo más comunes en el campo de la biomedicina. Por lo que sé, este libro no menciona a Rails.
Como han dicho otros, scripting general. La razón por la que lo prefiero para las secuencias de comandos generales (sobre Python) es simple: expresiones regulares en línea. Lamentablemente, el soporte de expresiones regulares de Python es incómodo, y para las secuencias de comandos, las expresiones regulares son bastante importantes.
Ni siquiera creo que deba mencionar por qué le gana a Perl.
En primer lugar, PHP fue creado para ser un lenguaje de servidor, en primer lugar. Esa es una de las razones principales por las que no se usa para otra cosa que no sean aplicaciones web: no está diseñada para eso y, por lo tanto, no puede cumplir con los requisitos de, por ejemplo, una aplicación de escritorio con script.
Ruby fue diseñado como un lenguaje de scripting de propósito general, y por lo tanto tiene un amplio soporte para varias aplicaciones diferentes. Se ha utilizado de forma generalizada para todo, desde aplicaciones web, hasta servidores web, bibliotecas gráficas inteligentes, motores de reconocimiento de imágenes, servidores de bases de datos con hilos, hasta utilidades de sistemas de bajo nivel. Tiene un amplio espectro de uso a lo largo de la computación.
Sin duda, Rails ha incrementado la popularidad de Ruby en gran medida, lo ha puesto a la vanguardia de los lenguajes de scripting, generando más de 40 libros, 18 conferencias, distribución con casi todos los principales sistemas operativos y ¡7 implementaciones diferentes para arrancar!
Para empezar, todos los componentes internos de Rails están escritos en el propio Ruby, pero todos los Rubygems, bibliotecas, fragmentos o cualquier otra cosa que utilizan los desarrolladores de Rails también están escritos en Ruby, y lo más probable es que estén diseñados para funcionar fuera de los Rails. apilar.
Dicho esto, el popular marco web no es la razón por la que Ruby es popular. Claro, ha ayudado a prestar mucha atención al lenguaje, pero no es la razón por la que la gente lo usa día a día. Se usa para todo, desde aplicaciones web hasta aplicaciones de escritorio GUI debido a su sintaxis simple y elegante, es una biblioteca estándar limpia, sensible y completa, es un amplio ecosistema de código de comunidad, soporte y cadenas de herramientas.
Rubí se usa porque mece.
Ruby era realmente un lenguaje boutique antes de que saliera Rails. Satisface la misma necesidad que Perl y Python. En el espacio de scripting, Perl reina supremo con Python ganando mucha popularidad en los últimos 10 años. Ruby fue poco utilizado o escuchado entre personas que escribían programas de Perl y Python. Cuando salió Rails fue muy atractivo para las personas que realizan el desarrollo web (normalmente en PHP), por lo que muchos programadores web eligieron a Ruby, mientras que otros no vieron ninguna razón para cambiar sus cómodos entornos de Perl y Python.
La mayoría de la gente todavía lo usa solo para Rails, pero su mayor exposición ha llevado a que más personas lo usen "en la naturaleza" para tareas que no sean de Internet. La mayoría de los lugares ya tienen muchos programas escritos en Perl o Python y no hay razón para cambiar. La mayoría de las distribuciones de Linux se envían con Perl y Python preinstaladas, pero no con Ruby. Ruby tampoco tiene tantos módulos de terceros disponibles.
RubyDNS: un servidor dns escrito en ruby
Rubystein - Clon del juego Wolfenstein usando la biblioteca Gosu :)
Se utiliza como base para DSLs. Es perfecto para este propósito ya que su gramática es muy flexible. Por ejemplo, hay un reemplazo de marca llamado Rake.
Se utiliza para escribir todo tipo de aplicaciones. A menudo se utiliza para escribir pequeñas aplicaciones de script como Python.
Echa un vistazo a la RubyForge
Shoes es un conjunto de herramientas GUI multiplataforma escrito en Ruby.
También se puede usar para secuencias de comandos tanto de forma independiente (con un intérprete) como en muchos otros programas. Google Sketchup (para modelado 3D) viene a la mente ...
Tareas de scripting.
Por ejemplo, una vez usé Ruby para raspar el contenido de un sitio web completo (cientos de páginas) en un archivo separado por comas. Lo hizo para migrar el sitio web de html estático de alguien a un dinámico, basado en bases de datos. Sólo a granel inserta el csv. Hacer eso a mano hubiera sido imposible.
Todas las herramientas de aprovisionamiento (automatización) ampliamente utilizadas como Puppet , Chef , Capistrano están escritas en Ruby. La elección del idioma no es aleatoria, por ejemplo, Chef utiliza Ruby también para todas las declaraciones de configuración porque el lenguaje es expresivo, simple y fácil de leer. Puppet tiene su propio DSL (lenguaje específico de dominio) que fue diseñado para ser accesible a los administradores de sistemas. Ruby facilita la interpretación de este lenguaje de configuración.
También Vagrant - la herramienta para crear y probar imágenes del sistema está escrita en Ruby. Bundler sería otro ejemplo de una buena aplicación de Ruby para administrar dependencias de gemas.
El framework Metasploit se usa para probar problemas de seguridad y ayuda con las pruebas de penetración. Se ha reescrito completamente en Ruby (escrito anteriormente en Perl) en 2007.
Una herramienta de empaquetado fpm que simplifica el proceso de creación de paquetes (deb, rpm, gema, módulos python, paquetes de nodos, pear, ...) también está escrita en Ruby.
Ruby es un lenguaje de scripts general (a diferencia de php) que puede usarse para escribir scripts. Puede escribir un analizador de archivos de texto simple con expresiones regulares en muy pocas líneas sin la necesidad de buscar en Google todo porque la sintaxis es simple y fácil de aprender.
Ruby on Rails es definitivamente el más popular y atrajo mucha atención al lenguaje Ruby (lo cual es genial) pero hay muchas otras aplicaciones y seguramente surgirán otras nuevas.
Varios escenarios de prueba. WATIR y RSPEC como ejemplos.
El framework Metasploit fue escrito en Ruby y los modules para él también están escritos en Ruby. Esto se ha convertido en un método comúnmente utilizado para escribir exploits de seguridad y para la investigación de seguridad.
Homebrew , un gestor de paquetes de código abierto para Mac OSX, está escrito en su totalidad en Ruby, y es uno de los proyectos más populares en github