Upload
noe-rivera
View
221
Download
0
Embed Size (px)
DESCRIPTION
DESARROLLO DE HABILIDADES DIGITALES Entregable 2 - Documento PDF
Citation preview
Noé Rivera Hernández Framework
1
Framework
Un Framework es una estructura conceptual
y tecnológica de soporte definido,
normalmente con artefactos o módulos de
software concretos, con base a la cual otro
proyecto de software puede ser más
fácilmente organizado y desarrollado.
Típicamente, puede incluir soporte de
programas, bibliotecas, y un lenguaje
interpretado, entre otras herramientas, para
así ayudar a desarrollar y unir los diferentes
componentes de un proyecto.
Representa una arquitectura de software
que modela las relaciones generales de las
entidades del dominio, y provee una
estructura y una especial metodología de
trabajo, la cual extiende o utiliza las
aplicaciones del dominio.
Modelo Vista Controlador Los frameworks están basados en el Modelo
Vista Controlador (MVC), un patrón de
diseño que separa las aplicaciones en tres
componentes (Figura 1):
Modelo: son los datos o la
información que se manejan en la
aplicación.
Vista: normalmente representada
por una interfaz de usuario, presenta
el modelo en un formato elegido.
Controlador: es la capa intermedia.
Se encarga de gestionar las
peticiones recibidas desde la vista,
interactuando con la capa de
modelo.
Existen Frameworks para la gran mayoría de
lenguajes utilizados en el desarrollo de
aplicaciones. Algunos de los más conocidos
son Spring (Figura 2) o Struts para
aplicaciones en Java; ASP.NET para C# o Zend
para PHP.
Figura 1
Ventajas Básicamente las que se derivan de utilizar un
estándar:
El programador no necesita plantearse una
estructura global de la aplicación, sino que el
framework le proporciona un esqueleto que
hay que "rellenar".
Facilita la colaboración. Cualquiera que haya
tenido que "pelearse" con el código fuente
de otro programador (¡o incluso con el
propio, pasado algún tiempo!) sabrá lo difícil
que es entenderlo y modificarlo; por tanto,
todo lo que sea definir y estandarizar va a
ahorrar tiempo y trabajo a los desarrollos
colaborativos.
Es más fácil encontrar herramientas
(utilidades, librerías) adaptadas al framework
concreto para facilitar el desarrollo.
Noé Rivera Hernández Framework
2
Figura 2
Desventajas Existen algunas desventajas, como la
posibilidad de generación de código
innecesario para nuestra aplicación, ya que
los frameworks tienden a generalizar la
funcionalidad de los componentes,
provocando una demanda de recursos
computacionales innecesaria.
El aprendizaje puede ser costoso, el tiempo
que se gana en dejar de programar puede
perderse en aprender el Frameworks si no se
va a utilizar para otros proyectos.
También existe una alta dependencia del
código fuente de la aplicación con respecto
al Framework. Además, cada Frameworks
tiene su propia convención de código, por lo
que no resulta sencillo cambiar de
Frameworks.
Si una librería falla, la depuración es más
complicada al no conocer el programador el
código. Por eso es importante utilizar
frameworks y módulos en versiones
avanzadas.
Conclusión La utilización de un framework en el
desarrollo de una aplicación implica un cierto
costo inicial de aprendizaje, aunque a largo
plazo es probable que facilite tanto el
desarrollo como el mantenimiento.
Existen multitud de frameworks orientados a
diferentes lenguajes, funcionalidades, etc.
Aunque la elección de uno de ellos puede ser
una tarea complicada, lo más probable que a
largo plazo sólo los mejor definidos (o más
utilizados, que no siempre coinciden con los
primeros) permanezcan. Y si ninguno de ellos
se adapta a las necesidades de desarrollo,
siempre es mejor definir uno propio que
desarrollar "al por mayor".