1. Framework es un marco de aplicación o conjunto de
bibliotecas orientadas a la reutilización a muy gran escala de
componentes software para el desarrollo rápido de
aplicaciones. La palabra inglesa "framework" (marco de
trabajo) define, en términos generales, un conjunto
estandarizado de conceptos, prácticas y criterios para enfocar
un tipo de problemática particular que sirve como
referencia, para enfrentar y resolver nuevos problemas de
índole similar.
Framework no es más que una base de programación que
atiende a sus descendientes (manejado de una forma
estructural y/o en cascada), posibilitando cualquier respuesta
ante las necesidades de sus miembros, o en secciones de una
aplicación (web), satisfaciendo así las necesidades más
comunes del programador
2. En el desarrollo de software, un framework o
infraestructura digital, es una estructura conceptual y
tecnológica de soporte definido, normalmente con artefactos
o módulos de software concretos, que puede servir de base
para la organización y desarrollo de software.
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.
3. Son diseñados con la intención de facilitar el desarrollo
de software, permitiendo a los diseñadores y
programadores pasar más tiempo identificando
requerimientos de software que tratando con los tediosos
detalles de bajo nivel de proveer un sistema funcional.
El término framework tiene una acepción más amplia, en
donde además de incluir una biblioteca de componentes
reutilizables, es toda una tecnología o modelo de
programación que contiene máquinas
virtuales, compiladores, bibliotecas de administración de
recursos en tiempo de ejecución y especificaciones de
lenguajes. Tal es el caso del framework Microsoft .NET.
4. 1. El desarrollo rápido de aplicaciones. Los componentes
incluidos en un framework constituyen una capa que libera
al programador de la escritura de código de bajo nivel.
2. La reutilización de componentes software al por mayor.
Los frameworks son los paradigmas de la reutilización.
3. El uso y la programación de componentes que siguen
una política de diseño uniforme. Un framework orientado a
objetos logra que los componentes sean clases que
pertenezcan a una gran jerarquía de clases, lo que resulta
en bibliotecas más fáciles de aprender a usar.
Otra ventaja de los frameworks, es la portabilidad de
aplicaciones de una arquitectura a otra.
5. 1. La dependencia del código fuente de una aplicación
con respecto al framework. Si se desea cambiar de
framework, la mayor parte del código debe reescribirse.
2. La demanda de grandes cantidades de recursos
computacionales debido a que la característica de
reutilización de los frameworks tiende a generalizar la
funcionalidad de los componentes. El resultado es que
se incluyen características que están "de
más", provocando una sobrecarga de recursos que se
hace más grande en cuanto más amplio es el campo de
reutilización.
6. Dentro del controlador, modelo o vista podemos manejar
lo siguiente: datos. Depende de nosotros como interpretar
y manejar estos 'datos'. Ahora, sabemos que el único
dato de una dirección estática web es: conseguir un
archivo físico en el disco duro o de internet, etc. e
interpretado o no, el servidor responde.
El modelo, al igual que el controlador y la vista, maneja
todos los datos que se relacionen consigo (solo es el
proceso medio de la separación por capas que ofrece la
arquitectura MVC). Y sólo la vista, puede demostrar
dicha información. Con lo cual ya hemos generado la
jerarquía de nuestro programa: Controlador, Modelo y
Vista.
7. Al parecer, debemos inyectar ciertos objetos dentro de sus parientes
en esta aplicación, solo así compartirán herencia y coherencia en su
aplicación.Rápidamente, para una aplicación web sencilla debemos
establecer estos objetos:
• Una base (MVC)
• Controlador: éste debe ser capaz de manejar
rutas, archivos, clases, métodos y funciones.
• Modelo: es como un script habitual en el servidor, solo que
agrupado bajo un 'modelo' reutilizable.
• Vista: como incluyendo cualquier archivo en nuestra
ejecución, muy simple.
• Un sistema
• Ruteador: con él podemos dividir nuestras peticiones sin tantas
condicionales.
• Cargador
8. Ejemplo:
// Index.php
// -----
// ------ Clases ------
class Base {}
class Controller extends Base {
function load($name) {
require_
$this->$name =& new $name();
}
}
class Model extends Controller {
function view($name, $data) {
extract($data);
include "app/view/" . $name . ".php";
}
}
// ------ Router & Loader ------
function _route($controller, $model) {
if (is_file("app/$controller.php")) {
require_once "app/" . $controller . ".php";
$object = new $controller();
$object->$model();
}
}
// ----- Rutina -----
_route($_GET['section'], $_GET['name']);