En términos simples, ¿qué hace Rake? ¿Qué fines tiene? Entiendo que es una herramienta de construcción, pero estoy buscando un poco más de detalle. (Para un simplón.)
Respuestas:
Pruebe el artículo de Martin Fowler sobre Rake para obtener más información:
http://martinfowler.com/articles/rake.html
Su preámbulo es:
Rake es un lenguaje de construcción, similar en propósito a make y ant. Al igual que make y ant, es un lenguaje específico de dominio, a diferencia de esos dos, es un DSL interno programado en el lenguaje Ruby. En este artículo presento rake y describo algunas cosas interesantes que surgieron de mi uso de rake para construir este sitio web: modelos de dependencia, tareas sintetizadas, rutinas de compilación personalizadas y depuración del script de compilación.
También hay más información disponible o vinculada desde la página de inicio del proyecto:
Estas respuestas asumen que sabe qué es un DSL o está familiarizado con Make o Ant. Si ese no es el caso, aquí hay una (quizás una respuesta muy simplificada):
Rake es una herramienta que puede usar con proyectos Ruby . Le permite utilizar código ruby para definir "tareas" que se pueden ejecutar en la línea de comandos.
Rake se puede descargar e incluir en proyectos ruby como una gema ruby.
Una vez instalado, define las tareas en un archivo llamado " Rakefile " que agrega a su proyecto.
Lo llamamos una "herramienta de compilación" porque Rake viene con algunas bibliotecas que facilitan la realización de tareas que son comunes durante el proceso de compilación / implementación, como operaciones de archivos (crear, eliminar, renombrar y mover archivos), publicar sitios a través de FTP. / SSH y pruebas en ejecución .
Para obtener más información, aquí está la documentación del proyecto: http://rake.rubyforge.org/
Rake es una implementación de programación declarativa basada en dependencias en el lenguaje de programación Ruby . Básicamente, Rake es para Ruby lo que Make es para C, con la notable diferencia de que Make es un DSL externo , mientras que Rake es un DSL interno.
Rake te permite ejecutar código Ruby a través de una agradable API de espacio de nombres. Un ejemplo es rake db: migrate. Puede ejecutar tareas automáticamente antes y después de otras tareas. Eso es todo.