{"id":132,"date":"2020-10-28T22:15:28","date_gmt":"2020-10-28T22:15:28","guid":{"rendered":"https:\/\/scriptcase.es\/store\/?p=132"},"modified":"2020-10-29T10:04:39","modified_gmt":"2020-10-29T10:04:39","slug":"rad-frameworks-e-ide-conoce-las-diferencias","status":"publish","type":"post","link":"https:\/\/scriptcase.es\/store\/rad-frameworks-e-ide-conoce-las-diferencias\/","title":{"rendered":"RAD, Frameworks e IDE conoce las diferencias"},"content":{"rendered":"\n<p><strong>\u00bfQu\u00e9 son RAD, Frameworks e IDE?<\/strong> <\/p>\n\n\n\n<p>Quiz\u00e1s no conozcas la diferencia entre ellas y c\u00f3mo puedes utilizarlas para optimizar el desarrollo de software.<\/p>\n\n\n\n<p>El proceso de desarrollo en algunos casos puede ser muy largo, dependiendo de la metodolog\u00eda para el desarrollo, ese per\u00edodo puede extenderse de tal forma que en el medio del proyecto nos encontremos con cambios dr\u00e1sticos, es por ello que desde hace tiempo podemos encontrar herramientas que nos facilitan el d\u00eda a d\u00eda en la creaci\u00f3n y gesti\u00f3n de nuestros proyectos, estas herramientas son una ayuda con la que reducir el tiempo de desarrollo, haciendo que los proyectos puedan ser m\u00e1s competitivos logrando mantener la rentabilidad, hoy vamos a centrarnos en 3 tres tipos de herramientas RAD, Frameworks e IDE.<\/p>\n\n\n\n<p><br><strong>RAD<\/strong>: Desarrollo r\u00e1pido de aplicaci\u00f3n. No es de hecho un t\u00e9rmino muy com\u00fan, fue registrado por&nbsp;<a href=\"https:\/\/en.wikipedia.org\/wiki\/James_Martin_(author)\">James Martin<\/a>&nbsp;en 1961 en Inglaterra y enfatiza un ciclo de desarrollo de 30 a 90 d\u00edas. La metodolog\u00eda de Mart\u00edn involucra el desarrollo iterativo y la construcci\u00f3n de prototipos. M\u00e1s recientemente, el t\u00e9rmino y su sigla se utilizaron en un sentido m\u00e1s amplio y gen\u00e9rico, que engloba una variedad de t\u00e9cnicas que apuntan al desarrollo de aplicaciones a alta velocidad, tales como el uso de frameworks de aplicaci\u00f3n web y otros tipos de frameworks de software.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img src=\"https:\/\/www.scriptcaseblog.com.br\/wp-content\/uploads\/2017\/02\/rad.jpg\" alt=\"\"\/><\/figure><\/div>\n\n\n\n<p><br>La programaci\u00f3n RAD permite m\u00e1s agilidad a la hora de desarrollar, el proceso puede ser dividido en 5 fases, logrando as\u00ed dar mucha m\u00e1s rapidez al desarrollo de una aplicaci\u00f3n de cualquier naturaleza.<\/p>\n\n\n\n<ul><li><strong>Modelado del Negocio:<\/strong> Todo el an\u00e1lisis de negociaci\u00f3n ocurre en esta fase, las dudas y procesos que el sistema va a gestionar son expuestos y mostrados.<\/li><li><strong>Modelado de Datos:<\/strong> En esta fase se dibuja toda la estructura de datos de la aplicaci\u00f3n, se analizan cuestiones relacionadas con la relaci\u00f3n de tablas.<\/li><li><strong>Modelado de Proceso:<\/strong> En esta fase se dibuja todas las reglas de modificaci\u00f3n, alteraci\u00f3n, exclusi\u00f3n y cualquier cambio de estado de los objetos que se relacionar\u00e1n.<\/li><li>&nbsp;<strong>Generaci\u00f3n de la aplicaci\u00f3n:<\/strong> En esta fase se inicia el proceso de desarrollo en s\u00ed. La idea principal del RAD es aprovechar al m\u00e1ximo los componentes ya utilizados para que haya disminuciones considerables en materia de tiempo en el proyecto.<\/li><li>&nbsp;<strong>Pruebas y modificaciones:<\/strong> En esta fase se realizan pruebas de flujo y correcciones cuando sea necesario, como el RAD trabaja sobre la idea de reutilizaci\u00f3n, muchos componentes ya han sido probados en otro momento y con eso esta fase acaba estando muy optimizada.<\/li><\/ul>\n\n\n\n<p>Los enfoques RAD pueden implicar compromisos en funcionalidad y rendimiento, en cambio, permitien el desarrollo m\u00e1s r\u00e1pido y facilitan el mantenimiento de la aplicaci\u00f3n, reutilizado componentes de programas ya existentes o crear reutilizables.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" width=\"421\" height=\"482\" src=\"https:\/\/scriptcase.es\/store\/wp-content\/uploads\/2020\/10\/rocket-steps-es.png\" alt=\"\" class=\"wp-image-135\" srcset=\"https:\/\/scriptcase.es\/store\/wp-content\/uploads\/2020\/10\/rocket-steps-es.png 421w, https:\/\/scriptcase.es\/store\/wp-content\/uploads\/2020\/10\/rocket-steps-es-262x300.png 262w, https:\/\/scriptcase.es\/store\/wp-content\/uploads\/2020\/10\/rocket-steps-es-416x476.png 416w\" sizes=\"(max-width: 421px) 100vw, 421px\" \/><\/figure><\/div>\n\n\n\n<p>Bueno, ya sabemos que RAD es b\u00e1sicamente de una metodolog\u00eda. Tenemos entonces herramientas o plataformas de desarrollo que apoyan su concepto en el \u201cRapid Application Development\u201d como el Scriptcase, por ejemplo. Scriptcase es un entorno de desarrollo r\u00e1pido 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.<\/p>\n\n\n\n<p>Existen otras herramientas RAD, podemos citar: Dataflex, Visual Studio LightSwitch, Embarcadero RAD Studio, WaveMaker .. cada una con sus lenguajes siguiendo el concepto RAD.<\/p>\n\n\n\n<p><strong>Y los<\/strong> <strong>frameworks?<\/strong><\/p>\n\n\n\n<p>En primer lugar vamos a analizar la terminolog\u00eda en ingl\u00e9s: Framework ser\u00eda una estructura b\u00e1sica subyacente a un sistema, concepto o texto. <br><\/p>\n\n\n\n<p>\u00bfQu\u00e9 puede ser la estructura subyacente de un software?&nbsp;<br><\/p>\n\n\n\n<p><strong>Una colecci\u00f3n de bibliotecas diferentes juntas para proporcionar un conjunto de c\u00f3digo general reutilizable que entonces se puede personalizar para una aplicaci\u00f3n espec\u00edfica.<\/strong><\/p>\n\n\n\n<p>Bueno, en sistemas de inform\u00e1ticos, un framework a menudo es una estructura de capas, indicando el tipo de programas que pueden o deben ser construidos y c\u00f3mo se interrelacionan. Algunas estructuras de sistemas&nbsp;inform\u00e1ticos&nbsp;tambi\u00e9n incluyen programas reales, especifican interfaces de programaci\u00f3n o ofrecen herramientas de programaci\u00f3n para utilizar los frameworks.<\/p>\n\n\n\n<p>En el wikipedia encontramos la definici\u00f3n de que&nbsp;<a href=\"https:\/\/es.wikipedia.org\/wiki\/Framework\">framework<\/a>&nbsp;en desarrollo de software, es una abstracci\u00f3n que une c\u00f3digos comunes entre varios proyectos de software proporcionando una funcionalidad gen\u00e9rica. Un marco puede alcanzar una funcionalidad espec\u00edfica, por configuraci\u00f3n, durante la programaci\u00f3n de una aplicaci\u00f3n. A diferencia de las bibliotecas, es el marco quien dicta el flujo de control de la aplicaci\u00f3n, llamado de Inversi\u00f3n de Control.<\/p>\n\n\n\n<p>En una biblioteca de clases, por ejemplo, cada clase es \u00fanica e independiente de las otras, en un framework las dependencias \/ colaboraciones est\u00e1n incrustadas (con conexi\u00f3n a Internet) con biblioteca, las aplicaciones crean las colaboraciones. Un framework impone un modelo de colaboraci\u00f3n (el resultado del an\u00e1lisis y el dise\u00f1o) al que debe adaptarse el proyecto. Al recibir un framework, el trabajo consiste en proveer los fragmentos que son espec\u00edficos para su aplicaci\u00f3n. El framework engloba la funcionalidad com\u00fan de varias aplicaciones.<\/p>\n\n\n\n<p>Tomando los t\u00e9rminos t\u00e9cnicos y simplificando la explicaci\u00f3n, frameworks es b\u00e1sicamente un mont\u00f3n 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.<\/p>\n\n\n\n<p>Como ejemplo simple de framework \u201cpuro\u201d usado por Scriptcase tenemos el \u201cprod\u201d (entorno de producci\u00f3n), que es un \u00e1rea administrativa del sistema publicada por Scriptcase, donde se definen los datos de conexi\u00f3n y otras configuraciones. Un entorno de producci\u00f3n incluye un conjunto de bibliotecas comunes utilizadas por las aplicaciones desarrolladas por Scriptcase. Incluye caracter\u00edsticas como: PDF, programaci\u00f3n, XLS (Excel), base de datos (Access Layer), procesamiento de im\u00e1genes y bibliotecas de JavaScript. El entorno de producci\u00f3n de Scripcase es compatible con las siguientes plataformas: Windows, Linux, IBM I5 \/ OS400, FreeBSD, Solaris y Mac OS<\/p>\n\n\n\n<p>\u00bfPor qu\u00e9 tantos desarrolladores usan frameworks? No hay ning\u00fan problema \u201cpros y contras\u201d, simplemente hacen la vida de un programador mucho m\u00e1s f\u00e1cil!<\/p>\n\n\n\n<p><strong>Finalmente, vamos a analizar el concepto de IDE:<\/strong><\/p>\n\n\n\n<p>\u00bfQu\u00e9 es lo primordial para el desarrollo de software? S\u00ed, un editor de texto. Pero el editor de texto no ofrece ninguna otra ventaja como autocorrecci\u00f3n, auto-completar inteligente o plantillas. De ah\u00ed viene el IDE  que es una sigla en ingl\u00e9s:&nbsp;<strong>Integrated Development Environment<\/strong>, un editor de texto con soporte adicional para el desarrollo, compilaci\u00f3n y depuraci\u00f3n de aplicaciones. Hist\u00f3ricamente, un IDE es simplemente una evoluci\u00f3n de un editor de texto.<\/p>\n\n\n\n<p>Los IDE&#8217;s modernos tambi\u00e9n incluyen otras herramientas. Para ser considerado un IDE, la soluci\u00f3n debe al menos incluir un editor de texto (para escribir el programa), alguna herramienta de gesti\u00f3n de proyecto y compilaci\u00f3n permitiendo ejecutar el programa sin dejar el IDE. Tambi\u00e9n debe incluir herramientas de depuraci\u00f3n, cobertura de c\u00f3digo, administraci\u00f3n de versiones, men\u00fas automatizados y herramientas de documentaci\u00f3n, editores gr\u00e1ficos, refactorizaci\u00f3n, asistentes y muchas, muchas otras herramientas \u00fatiles.<\/p>\n\n\n\n<p>A\u00fan es posible escribir programas sin IDE, aunque no es lo m\u00e1s com\u00fan. De cualquier forma ser\u00eda necesario usar un pu\u00f1ado de programas separados: un compilador, un editor de texto, un generador de archivos, etc, etc \u2026<\/p>\n\n\n\n<p>Un IDE o un entorno integrado de desarrollo es un conjunto de aplicaciones, t\u00edpicamente consistentes en un editor de c\u00f3digo, un compilador, un depurador y una interfaz gr\u00e1fica 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.<\/p>\n\n\n\n<p>Dentro del Scriptcase podemos citar la Aplicaci\u00f3n Blank como ejemplo de un IDE, esta aplicaci\u00f3n est\u00e1 integrada con el ambiente de desarrollo del Scriptcase. Dentro de ella es posible escribir c\u00f3digo PHP, Javascript, HTML, CSS \u2026 Adem\u00e1s de acceder macros y bibliotecas internas del Scriptcase, documentaci\u00f3n, etc. La ventaja de utilizar este tipo de aplicaci\u00f3n 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\u00ed como la integraci\u00f3n nativa con el control de acceso de los sistemas creados dentro del ambiente del Scriptcase.<\/p>\n\n\n\n<p>En resumen, y por lo tanto, tenemos, RAD como una metodolog\u00eda que puede ser usada por varios entornos de desarrollo (de ah\u00ed el t\u00e9rmino \u201cherramientas RAD\u201d), o sea herramientas que se basan en el concepto de desarrollo r\u00e1pido (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.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u00bfQu\u00e9 son RAD, Frameworks e IDE? Quiz\u00e1s no conozcas la diferencia entre ellas y c\u00f3mo puedes utilizarlas para optimizar el desarrollo de software. El proceso de desarrollo en algunos casos puede ser muy largo, dependiendo de la metodolog\u00eda para el desarrollo, ese per\u00edodo puede extenderse de tal forma que en el medio del proyecto nos [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[38,37],"tags":[],"_links":{"self":[{"href":"https:\/\/scriptcase.es\/store\/wp-json\/wp\/v2\/posts\/132"}],"collection":[{"href":"https:\/\/scriptcase.es\/store\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/scriptcase.es\/store\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/scriptcase.es\/store\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/scriptcase.es\/store\/wp-json\/wp\/v2\/comments?post=132"}],"version-history":[{"count":4,"href":"https:\/\/scriptcase.es\/store\/wp-json\/wp\/v2\/posts\/132\/revisions"}],"predecessor-version":[{"id":151,"href":"https:\/\/scriptcase.es\/store\/wp-json\/wp\/v2\/posts\/132\/revisions\/151"}],"wp:attachment":[{"href":"https:\/\/scriptcase.es\/store\/wp-json\/wp\/v2\/media?parent=132"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/scriptcase.es\/store\/wp-json\/wp\/v2\/categories?post=132"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/scriptcase.es\/store\/wp-json\/wp\/v2\/tags?post=132"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}