El andamiaje , tal como se utiliza en informática, se refiere a una de dos técnicas:
Es una técnica relacionada con el acceso a bases de datos en algunos marcos modelo-vista-controlador .
Es una técnica apoyada por diversas herramientas de programación.
El andamiaje es una técnica que admiten algunos marcos de trabajo de modelo-vista-controlador , en los que el programador puede especificar cómo se puede utilizar la base de datos de la aplicación. El compilador o el marco de trabajo utiliza esta especificación, junto con plantillas de código predefinidas, para generar el código final que la aplicación puede utilizar para crear, leer, actualizar y eliminar entradas de la base de datos, tratando efectivamente las plantillas como un " andamio " sobre el que construir una aplicación más potente.
El andamiaje es una evolución de los generadores de código de base de datos de entornos de desarrollo anteriores, como CASE Generator de Oracle y muchos otros productos de desarrollo de software cliente-servidor 4GL .
El andamiaje se hizo popular gracias al framework Ruby on Rails . Se ha adaptado a otros frameworks de software, incluidos OutSystems Platform , Express Framework , Blitz.js, Play framework , Django , web2py , MonoRail , Brail, Symfony , Laravel , CodeIgniter , Yii , CakePHP , Phalcon PHP , Model-Glue, PRADO , Grails , Catalyst , Mojolicious , Seam Framework , Spring Roo , JHipster , ASP.NET Dynamic Data , KumbiaPHP y los Metadata Template Helpers del framework ASP.NET MVC .
El andamiaje puede ocurrir en dos fases diferentes del ciclo de vida del programa : tiempo de diseño y tiempo de ejecución . El andamiaje en tiempo de diseño produce archivos de código que luego pueden ser modificados por el programador para personalizar la forma en que se utiliza la base de datos de la aplicación. Sin embargo, para aplicaciones a gran escala, este enfoque puede ser difícil de mantener debido a la gran cantidad de archivos producidos y al hecho de que el diseño de los archivos se fijó en gran medida cuando se generaron o se copiaron de las plantillas originales. Alternativamente, el andamiaje en tiempo de ejecución produce código sobre la marcha. Permite que los cambios en el diseño de las plantillas se reflejen inmediatamente en toda la aplicación. Pero modificar el diseño de las plantillas puede ser más difícil o poco práctico en el caso del andamiaje en tiempo de ejecución.
Cuando se agrega la línea a un controlador , Rails generará automáticamente todas las interfaces de datos apropiadas en tiempo de ejecución. Dado que la API se genera sobre la marcha, el programador no puede modificar fácilmente las interfaces generadas de esta manera. Este tipo de estructura simple se utiliza a menudo para crear prototipos de aplicaciones e ingresar datos de prueba en una base de datos.scaffold :model_name
El programador también puede ejecutar un comando externo para generar código Ruby para el andamiaje con antelación: . El script producirá archivos de código Ruby que la aplicación puede usar para interactuar con la base de datos. Es un poco menos conveniente que el andamiaje dinámico, pero le da al programador la flexibilidad de modificar y personalizar las API generadas.rails generate scaffold model_name
generate
Nota: A partir de Rails 2.0, el andamiaje dinámico ya no se almacena.
Las técnicas de andamiaje basadas en la base de datos de la aplicación suelen implicar marcos del lado del servidor . Los marcos web del lado del servidor suelen realizar operaciones directamente contra las entradas de la base de datos, y la generación de código para estas operaciones puede considerarse como andamiaje del lado del servidor . Alternativamente, el desarrollo del lado del cliente suele utilizar marcos que realizan operaciones de transporte de datos en lugar de acceder directamente a la base de datos. Por tanto, el enfoque del andamiaje del lado del cliente se centra más en generar una plantilla de inicio para la aplicación en su conjunto, en lugar de generar código para acceder a una base de datos.
Algunos frameworks web del lado del cliente, como Meteor , permiten al cliente realizar operaciones de base de datos de una manera similar a los frameworks del lado del servidor. En este caso, las técnicas de andamiaje pueden ir más allá de simplemente generar una plantilla de inicio. Pueden realizar un andamiaje en tiempo de ejecución de formularios web en el lado del cliente para crear, leer, actualizar y eliminar entradas de la base de datos. Un ejemplo de esto lo proporciona un complemento de Meteor llamado aldeed:autoform. [1]
Los proyectos de software complejos suelen compartir ciertas convenciones sobre la estructura y los requisitos del proyecto. Por ejemplo, suelen tener carpetas separadas para el código fuente , los binarios y las pruebas de código , así como archivos que contienen acuerdos de licencia , notas de la versión e información de contacto. Para simplificar la creación de proyectos siguiendo esas convenciones, las herramientas de "andamiaje" pueden generarlos automáticamente al comienzo de cada proyecto. Dichas herramientas incluyen Yeoman , Cargo y Ritchie CLI. Para los proyectos .NETdotnet
, , la herramienta de línea de comandos incluida con el .NET SDK, se puede utilizar para crear el andamiaje de nuevos proyectos.