20% OFF OFF FOR NEW LICENSES AND RENEWALS →

¿Qué son RAD, Frameworks e IDE? Entiende la Diferencia entre ellas y cómo podemos utilizarlas para optimizar el desarrollo de software. ¡Vamos allá!

Aquí en la atención de Scriptcase los clientes me preguntan a menudo la diferencia entre RAD, Framework e IDE. Recuerdo la primera vez que me encontré con esa nomenclatura “RAD“, fue precisamente a través de un cliente estadounidense, James Robe, él es especialista en herramientas de desarrollo rápido y también en la metodología LEAN aplicada al desarrollo de software, metodología que se enfoca en la reducción de los desperdicios mejorando así la calidad, disminuyendo el tiempo y los costos de producción. Recuerdo que ese día tuve el placer de tener una “clase” de ese asunto con él, voy a intentar replicar un poco de esa historia aquí.

RAD: Desarrollo rápido de aplicación. No es de hecho un término muy común en Brasil, fue registrado por James Martin en 1961 en Inglaterra y enfatiza un ciclo de desarrollo de 30 a 90 días. La metodología de Martín involucra el desarrollo iterativo y la construcción de prototipos. Más recientemente, el término y su sigla se utilizaron en un sentido más amplio y genérico, que engloba una variedad de técnicas que apuntan al desarrollo de aplicaciones a alta velocidad, tales como el uso de frameworks de aplicación web y otros tipos de frameworks de software.

rad

El proceso de desarrollo en algunos casos puede ser muy largo, dependiendo de la metodología para el desarrollo, ese período puede extenderse de tal forma que en el medio del camino varios cambios de alcance tienen riesgo de ocurrir. La programación RAD permite mucha más agilidad a la hora del desarrollo, el proceso puede ser dividido en 5 fases y en teoría lograría dar mucha más rapidez al desarrollo de una aplicación de cualquier naturaleza.

  • Modelado del Negocio: Todo el análisis de negociación ocurre en esta fase, las dudas y procesos que el sistema va a gestionar son levantados y dibujados aquí;

  • Modelado de Datos: En esta fase se dibuja toda la estructura de datos de la aplicación, en ella se analizan cuestiones relacionadas con la relación de tablas;

  • Modelado de Proceso: En esta fase se dibuja todas las reglas de modificación, alteración, exclusión y cualquier cambio de estado de objetos que se relacionarán;

  • Generación de la aplicación: En esta fase se inicia el proceso de desarrollo en sí. La idea principal del RAD es aprovechar al máximo los componentes ya utilizados para que haya aumentos considerables en materia de tiempo en el proyecto;

  • Pruebas y modificaciones: En esta fase se realizan pruebas de flujo y correcciones cuando sea necesario, como el RAD trabaja sobre la idea de reutilización, muchos componentes ya han sido probados en otro momento y con eso esta fase acaba siendo bastante optimizada.

 

Los enfoques RAD pueden implicar compromisos en funcionalidad y rendimiento, en cambio, permitiendo el desarrollo más rápido y facilitar el mantenimiento de la aplicación, reutiliza componentes de programas ya existentes o crea reutilizables.

Bueno, ya sabemos que RAD se trata básicamente de una metodología. Tenemos entonces herramientas o plataformas de desarrollo que apoyan su concepto en el “Rapid Application Development” como el Scriptcase, por ejemplo. Scriptcase es un entorno de desarrollo rápido de aplicaciones web en PHP. La gama de componentes presentes y ya probados en ScriptCase es muy grande y gracias a ello se considera una herramienta propia para RAD.

Como otras herramientas RAD podemos citar todavía Dataflex, Visual Studio LightSwitch, Embarcadero RAD Studio, WaveMaker .. cada una con sus lenguajes siguiendo el concepto RAD.

Y los frameworks?

En primer lugar vamos a analizar por la terminología en inglés: Framework sería una estructura básica subyacente a un sistema, concepto o texto. ¿Qué puede ser la estructura subyacente de un software? Una colección de bibliotecas diferentes juntas para proporcionar un conjunto de código general reutilizable que entonces se puede personalizar para una aplicación específica.

Bueno, en sistemas de computación, un framework a menudo es una estructura en capas, indicando el tipo de programas que pueden o deben ser construidos y cómo se interrelacionan. Algunas estructuras de sistemas informáticos también incluyen programas reales, especifican interfaces de programación o ofrecen herramientas de programación para utilizar los frameworks.

En el wikipedia encontramos la definición de que framework en desarrollo de software es una abstracción que une códigos comunes entre varios proyectos de software proporcionando una funcionalidad genérica. Un marco puede alcanzar una funcionalidad específica, por configuración, durante la programación de una aplicación. A diferencia de las bibliotecas, es el marco quien dicta el flujo de control de la aplicación, llamado de Inversión de Control.

En una biblioteca de clases, por ejemplo, cada clase es única e independiente de las otras en un framework, las dependencias / colaboraciones están incrustadas (con conexión a Internet) con biblioteca, las aplicaciones crean las colaboraciones. Un framework impone un modelo de colaboración (el resultado del análisis y el diseño) al que usted debe adaptarse. Al recibir un framework, el trabajo consiste en proveer los pedazos que son específicos para su aplicación. El framework captura la funcionalidad común a varias aplicaciones.

Tomando los términos técnicos y simplificando la explicación, frameworks es básicamente un montón de bibliotecas, funciones, clases y objetos reutilizables que ayudan a ahorrar tiempo. Como Frameworks podemos citar: Laravel, Zend framework, Cakephp, CodeIgniter, Symfone, jQuery, Prototype y etc.

Como ejemplo simple de framework “puro” usado por Scriptcase tenemos el “prod” (entorno de producción), que es un área administrativa del sistema publicada por Scriptcase, donde se definen los datos de conexión y otras configuraciones. Un entorno de producción incluye un conjunto de bibliotecas comunes utilizadas por las aplicaciones desarrolladas por Scriptcase. Incluye características como: PDF, programación, XLS (Excel), base de datos (Access Layer), procesamiento de imágenes y bibliotecas de JavaScript. El entorno de producción de Scripcase es compatible con las siguientes plataformas: Windows, Linux, IBM I5 / OS400, FreeBSD, Solaris y Mac OS

¿Por qué tantos desarrolladores usan frameworks? No hay ningún problema “pros y contras”, simplemente hacen la vida de un programador mucho más fácil!

Finalmente, vamos a analizar el concepto de IDE:

¿Qué es lo primordial para el desarrollo de software? Sí, un editor de texto. Pero el editor de texto no ofrece ninguna otra ventaja como autocorrección, auto-completar inteligente o plantillas. De ahí viene el IDE – que es una sigla en inglés: Integrated Development Environment – un editor de texto con soporte adicional para el desarrollo, compilación y depuración de aplicaciones. Históricamente, un IDE es simplemente una evolución (monstruosamente mutada) de un editor de texto mismo.

IDEs modernos también incluyen (muchas muchas) otras herramientas. Para ser considerado un IDE, el ambiente debe al menos incluir un editor de texto (para escribir el programa), alguna herramienta de gestión de proyecto y compilación permitiendo ejecutar el programa sin dejar el IDE. También debe incluir herramientas de depuración, cobertura de código, administración de versiones, menús automatizados y herramientas de documentación, editores gráficos, refactorización, asistentes y muchas, muchas otras herramientas útiles.

Aún es posible escribir programas sin IDE, aunque no es más común. De cualquier forma sería necesario usar un puñado de programas separados: un compilador, un editor de texto, un generador de archivos, etc, etc …

Un IDE o un entorno integrado de desarrollo es un conjunto de aplicaciones, típicamente consistentes en un editor de código, un compilador, un depurador y una interfaz gráfica que puede o no ofrecer un entorno amigable a un framework. Como ejemplos tenemos: Delphi, Dreamweaver, Frontpage, HTML 5 Builder, Eclipse, Visual Studio, NetBeans e IntelliJ., Y etc.

Dentro del Scriptcase podemos citar la Aplicación Blank como ejemplo de un IDE, esta aplicación está integrada con el ambiente de desarrollo del Scriptcase. Dentro de ella es posible escribir código PHP, Javascript, HTML, CSS … Además de acceder macros y bibliotecas internas del Scriptcase, documentación, etc. La ventaja de utilizar este tipo de aplicación en lugar de crear un programa PHP manualmente, fuera del Scriptcase o con otro IDE, es la posibilidad del uso de las herramientas disponibles, así como la integración nativa con el control de acceso de los sistemas creados dentro del ambiente del Scriptcase.

En resumen, y por lo tanto, tenemos, RAD como una metodología que puede ser usada por varios entornos de desarrollo (de ahí el término “herramientas RAD”), o sea herramientas que se basan en el concepto de desarrollo rápido (como el Scriptcase); Frameworks que son un conjunto bibliotecas, funciones, clases y objetos reutilizables que ayudan a ahorrar tiempo y organizar el desarrollo y las IDEs que simplemente traen un conjunto de aplicaciones para integrar todo lo necesario para el desarrollo.

You might also like…

PROCESAMIENTO AJAX EN SCRIPTCASE

Ajax en los formularios de Scriptcase puede usarse para recargar un campo de tipo de select basado e...

IMPORTAR IMAGENES DE LA BASE DE DATOS Y UTILIZAR CLASES DE BOOSTRAP

Como muchas personas ya saben, Bootstrap es una biblioteca de front-end libre y de código abierto p...

TENDENCIAS DE DESARROLLO WEB PARA 2017

Usted verá en este post tendencias para 2017 en Diseño Web, en el medio digital y en el desarrollo...

Comment this post

Get new posts, resources, offers and more each week.

We will use the information you provide to update you about our Newsletter and Special Offers. You can unsubscribe any time you want by clinck in a link in the footer of any email you receive from us, or by contacting us at sales@scriptcase.net. Learn more about our Privacy Police.