SlideShare a Scribd company logo
1 of 11
FRAMEWORK
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.
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.
Framework
Introducción
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. Por ejemplo, un equipo que usa Apache Struts para
desarrollar un sitio web de un banco, puede enfocarse en cómo los
retiros de ahorros van a funcionar en lugar de preocuparse de cómo se
controla la navegación entre las páginas en una forma libre de
errores. Sin embargo, hay quejas comunes acerca de que el uso de
frameworks añade código innecesario y que la preponderancia de
frameworks competitivos y complementarios significa que el tiempo que
se pasaba programando y diseñando ahora se gasta en aprender a usar
los frameworks.
Fuera de las aplicaciones en la informática, puede ser considerado
como el conjunto de procesos y tecnologías usados para resolver un
problema complejo. Es el esqueleto sobre el cual varios objetos son
integrados para facilitar una solución dada.
Arquitectura
Modelo: Este miembro del controlador maneja las operaciones lógicas, y
de manejo de información (previamente enviada por su ancestro), para
resultar de una forma explicable y sin titubeos. Cada miembro debe ser
meticulosamente llamado, con su correcto nombre y en principio, con su
verdadera naturaleza: el manejo de información, su complementación
directa.
Vista: Al final, a este miembro de la familia le corresponde dibujar,
o expresar la última forma de los datos: la interfaz gráfica que
interactúa con el usuario final del programa (GUI). Después de todo, a
este miembro le toca evidenciar la información obtenida hasta hacerla
llegar al controlador. Solo (e inicialmente), nos espera demostrar la
información.
Controlador: Con este apartado podemos controlar el acceso (incluso
todo) a nuestra aplicación, y esto puede incluir: archivos, scripts,
y/o programas; cualquier tipo de información que permita la interfaz.
Así, podremos diversificar nuestro contenido de forma dinámica, y
estática (a la vez); pues, sólo debemos controlar ciertos aspectos
(como se ha mencionado antes).
Estructura
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.
Tipos de framework
Existen varios tipos de frameworks Web: orientados a la interfaz de
usuario, como Java Server Faces, orientados a aplicaciones de
publicación de documentos, como Coocon, orientados a la parte de
control de eventos, como Struts y algunos que incluyen varios
elementos como Tapestry.
La mayoría de frameworks Web se encargan de ofrecer una capa de
controladores de acuerdo con el patrón MVC o con el modelo 2 de
Servlets y JSP, ofreciendo mecanismos para facilitar la integración
con otras herramientas para la implementación de las capas de negocio
y presentación.
Método
 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
Aplicar
Si nuestro archivo se llama Foo (clase), y nuestro otro archivo, bar
(método) tenemos que crear el siguiente archivo dentro de la carpeta
app/.
// app/Foo.php
// -----
class Foo extends Controller {
function foo() {
$this->load('test');
}
function bar() {
echo '<b>Testing</b>';
echo $this->test->does();
}
}
Como resultado al solicitar (por
ejemplo, ?section=foo&name=bar), deberíamos ver el siguiente texto:
Testing
Extender
Podremos extender nuestro sistema con clases, o funciones propias o de
algún 'plugin' o librería ajena. Solo que queremos extenderles sobre
nuestro sistema actual, nuestro objeto básico.
// app/model/Test.php
// -----
class Test extends Model {
function does() {
echo '<ins>Hecho esta!</ins>';
echo $this->view('look', array('my_var' =>
'my_value'));
}
}
Entonces, debemos usar la siguiente sentencia dentro de nuestro programa
Foo:
$this->load($this, 'test') o _load($this, 'test')
Ya con esto, podremos utilizar las llamadas a $this->test->does() dentro
del objeto o clase Foo.
Para mostrar los resultados de todo nuestro computo necesitamos de
vistas, o archivos de inclusión: plantillas, bloques o scripts.
Suponiendo que ya ha sido todo, debemos de visualizarlo:
// app/view/Look.php
// -----
echo 'Variable: ' . $my_var;
Para poder ejecutar esto, se debe llamar a esta sentencia: $this-
>view('look', array ('my_var' =>
'my_value')) obteniendo como resultado:
Variable: my_value
Ver
Urls.

More Related Content

What's hot

Presentación de programacion
Presentación  de programacionPresentación  de programacion
Presentación de programacionlajokito
 
Ejemplo arquitectura 3 capas con access
Ejemplo arquitectura 3 capas con accessEjemplo arquitectura 3 capas con access
Ejemplo arquitectura 3 capas con accessuniv of pamplona
 
Explicacion metodologia 3 capas y base de datos, proyecto de ejemplo jsp
Explicacion metodologia 3 capas y base de datos, proyecto de ejemplo jspExplicacion metodologia 3 capas y base de datos, proyecto de ejemplo jsp
Explicacion metodologia 3 capas y base de datos, proyecto de ejemplo jspBoris Salleg
 
6-Unidad 2: Diseños de Vista-2.3 Introducción Web Services-Conceptos Básicos
6-Unidad 2: Diseños de Vista-2.3 Introducción Web Services-Conceptos Básicos6-Unidad 2: Diseños de Vista-2.3 Introducción Web Services-Conceptos Básicos
6-Unidad 2: Diseños de Vista-2.3 Introducción Web Services-Conceptos BásicosLuis Fernando Aguas Bucheli
 
Modelo vista controlador vas Programacion por n capas
Modelo vista controlador vas Programacion por n capasModelo vista controlador vas Programacion por n capas
Modelo vista controlador vas Programacion por n capasAlex Uhu Colli
 
FMK Capa de Presentacion
FMK Capa de PresentacionFMK Capa de Presentacion
FMK Capa de Presentacionkaolong
 
Documentacion struts2 laura.palma
Documentacion struts2 laura.palmaDocumentacion struts2 laura.palma
Documentacion struts2 laura.palmaLaura Palma
 
Diapositivas de n capas en visual net 2017
Diapositivas de n capas en visual net 2017Diapositivas de n capas en visual net 2017
Diapositivas de n capas en visual net 2017TAPIA SILVA EVELINA
 

What's hot (19)

Framework
FrameworkFramework
Framework
 
Presentación de programacion
Presentación  de programacionPresentación  de programacion
Presentación de programacion
 
Framework
FrameworkFramework
Framework
 
Tarea 1
Tarea 1Tarea 1
Tarea 1
 
Framework
FrameworkFramework
Framework
 
Programacion
ProgramacionProgramacion
Programacion
 
Ejemplo arquitectura 3 capas con access
Ejemplo arquitectura 3 capas con accessEjemplo arquitectura 3 capas con access
Ejemplo arquitectura 3 capas con access
 
Explicacion metodologia 3 capas y base de datos, proyecto de ejemplo jsp
Explicacion metodologia 3 capas y base de datos, proyecto de ejemplo jspExplicacion metodologia 3 capas y base de datos, proyecto de ejemplo jsp
Explicacion metodologia 3 capas y base de datos, proyecto de ejemplo jsp
 
Jerarquia estricta
Jerarquia estrictaJerarquia estricta
Jerarquia estricta
 
Aplicaciones n capas en visual net
Aplicaciones n capas en visual netAplicaciones n capas en visual net
Aplicaciones n capas en visual net
 
5-Unidad 2: Diseños de Vista-2.2 Para Web
5-Unidad 2: Diseños de Vista-2.2 Para Web5-Unidad 2: Diseños de Vista-2.2 Para Web
5-Unidad 2: Diseños de Vista-2.2 Para Web
 
6-Unidad 2: Diseños de Vista-2.3 Introducción Web Services-Conceptos Básicos
6-Unidad 2: Diseños de Vista-2.3 Introducción Web Services-Conceptos Básicos6-Unidad 2: Diseños de Vista-2.3 Introducción Web Services-Conceptos Básicos
6-Unidad 2: Diseños de Vista-2.3 Introducción Web Services-Conceptos Básicos
 
Modelo vista controlador vas Programacion por n capas
Modelo vista controlador vas Programacion por n capasModelo vista controlador vas Programacion por n capas
Modelo vista controlador vas Programacion por n capas
 
APLICACIONES N-CAPAS EN VISUAL NET
APLICACIONES N-CAPAS EN VISUAL NETAPLICACIONES N-CAPAS EN VISUAL NET
APLICACIONES N-CAPAS EN VISUAL NET
 
FMK Capa de Presentacion
FMK Capa de PresentacionFMK Capa de Presentacion
FMK Capa de Presentacion
 
Documentacion struts2 laura.palma
Documentacion struts2 laura.palmaDocumentacion struts2 laura.palma
Documentacion struts2 laura.palma
 
Diapositivas de n capas en visual net 2017
Diapositivas de n capas en visual net 2017Diapositivas de n capas en visual net 2017
Diapositivas de n capas en visual net 2017
 
Proyecto
ProyectoProyecto
Proyecto
 
Documentacion struts2
Documentacion struts2Documentacion struts2
Documentacion struts2
 

Viewers also liked

Pruebas Unitarias - Uso de NUnit dentro de proyectos .NET
Pruebas Unitarias - Uso de NUnit dentro de proyectos .NETPruebas Unitarias - Uso de NUnit dentro de proyectos .NET
Pruebas Unitarias - Uso de NUnit dentro de proyectos .NETLa Red DBAccess
 
# 24 el ministerio de cristo en el santuario celestial
# 24 el ministerio de cristo en el santuario celestial# 24 el ministerio de cristo en el santuario celestial
# 24 el ministerio de cristo en el santuario celestialEsther Iza Cer
 
Seminario Gestión de Proyectos: Comparativa de Frameworks PMBOK, PRINCE2 e IS...
Seminario Gestión de Proyectos: Comparativa de Frameworks PMBOK, PRINCE2 e IS...Seminario Gestión de Proyectos: Comparativa de Frameworks PMBOK, PRINCE2 e IS...
Seminario Gestión de Proyectos: Comparativa de Frameworks PMBOK, PRINCE2 e IS...netmind
 
Java Script Frame Works
Java Script Frame WorksJava Script Frame Works
Java Script Frame Workshectorguedea
 
Framework para desarrollo de apps móviles
Framework para desarrollo de apps móvilesFramework para desarrollo de apps móviles
Framework para desarrollo de apps móvilesIván Campaña Naranjo
 
Principios de diseño de la arquitectura del software
Principios de diseño de la arquitectura del softwarePrincipios de diseño de la arquitectura del software
Principios de diseño de la arquitectura del softwareJose Patricio Bovet Derpich
 

Viewers also liked (10)

Pruebas Unitarias - Uso de NUnit dentro de proyectos .NET
Pruebas Unitarias - Uso de NUnit dentro de proyectos .NETPruebas Unitarias - Uso de NUnit dentro de proyectos .NET
Pruebas Unitarias - Uso de NUnit dentro de proyectos .NET
 
Framework
FrameworkFramework
Framework
 
# 24 el ministerio de cristo en el santuario celestial
# 24 el ministerio de cristo en el santuario celestial# 24 el ministerio de cristo en el santuario celestial
# 24 el ministerio de cristo en el santuario celestial
 
Framework deber
Framework deberFramework deber
Framework deber
 
Framework
FrameworkFramework
Framework
 
Seminario Gestión de Proyectos: Comparativa de Frameworks PMBOK, PRINCE2 e IS...
Seminario Gestión de Proyectos: Comparativa de Frameworks PMBOK, PRINCE2 e IS...Seminario Gestión de Proyectos: Comparativa de Frameworks PMBOK, PRINCE2 e IS...
Seminario Gestión de Proyectos: Comparativa de Frameworks PMBOK, PRINCE2 e IS...
 
Framework
FrameworkFramework
Framework
 
Java Script Frame Works
Java Script Frame WorksJava Script Frame Works
Java Script Frame Works
 
Framework para desarrollo de apps móviles
Framework para desarrollo de apps móvilesFramework para desarrollo de apps móviles
Framework para desarrollo de apps móviles
 
Principios de diseño de la arquitectura del software
Principios de diseño de la arquitectura del softwarePrincipios de diseño de la arquitectura del software
Principios de diseño de la arquitectura del software
 

Similar to Framework by Marcos Acosta (20)

Framework
FrameworkFramework
Framework
 
Framework
FrameworkFramework
Framework
 
Framework
FrameworkFramework
Framework
 
Framework
FrameworkFramework
Framework
 
Framework
FrameworkFramework
Framework
 
Framework
FrameworkFramework
Framework
 
Framework
FrameworkFramework
Framework
 
Framework 02
Framework 02Framework 02
Framework 02
 
Framework
FrameworkFramework
Framework
 
Programacion
ProgramacionProgramacion
Programacion
 
Programacion
ProgramacionProgramacion
Programacion
 
Programacion Basica
Programacion Basica Programacion Basica
Programacion Basica
 
Framework
FrameworkFramework
Framework
 
Framework
FrameworkFramework
Framework
 
Framework
FrameworkFramework
Framework
 
Framework
FrameworkFramework
Framework
 
Framework
FrameworkFramework
Framework
 
Framework
FrameworkFramework
Framework
 
Framework
FrameworkFramework
Framework
 
Framework
FrameworkFramework
Framework
 

Framework by Marcos Acosta

  • 2. 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. 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. Framework
  • 3. Introducción 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. Por ejemplo, un equipo que usa Apache Struts para desarrollar un sitio web de un banco, puede enfocarse en cómo los retiros de ahorros van a funcionar en lugar de preocuparse de cómo se controla la navegación entre las páginas en una forma libre de errores. Sin embargo, hay quejas comunes acerca de que el uso de frameworks añade código innecesario y que la preponderancia de frameworks competitivos y complementarios significa que el tiempo que se pasaba programando y diseñando ahora se gasta en aprender a usar los frameworks. Fuera de las aplicaciones en la informática, puede ser considerado como el conjunto de procesos y tecnologías usados para resolver un problema complejo. Es el esqueleto sobre el cual varios objetos son integrados para facilitar una solución dada.
  • 4. Arquitectura Modelo: Este miembro del controlador maneja las operaciones lógicas, y de manejo de información (previamente enviada por su ancestro), para resultar de una forma explicable y sin titubeos. Cada miembro debe ser meticulosamente llamado, con su correcto nombre y en principio, con su verdadera naturaleza: el manejo de información, su complementación directa. Vista: Al final, a este miembro de la familia le corresponde dibujar, o expresar la última forma de los datos: la interfaz gráfica que interactúa con el usuario final del programa (GUI). Después de todo, a este miembro le toca evidenciar la información obtenida hasta hacerla llegar al controlador. Solo (e inicialmente), nos espera demostrar la información. Controlador: Con este apartado podemos controlar el acceso (incluso todo) a nuestra aplicación, y esto puede incluir: archivos, scripts, y/o programas; cualquier tipo de información que permita la interfaz. Así, podremos diversificar nuestro contenido de forma dinámica, y estática (a la vez); pues, sólo debemos controlar ciertos aspectos (como se ha mencionado antes).
  • 5. Estructura 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.
  • 6. Tipos de framework Existen varios tipos de frameworks Web: orientados a la interfaz de usuario, como Java Server Faces, orientados a aplicaciones de publicación de documentos, como Coocon, orientados a la parte de control de eventos, como Struts y algunos que incluyen varios elementos como Tapestry. La mayoría de frameworks Web se encargan de ofrecer una capa de controladores de acuerdo con el patrón MVC o con el modelo 2 de Servlets y JSP, ofreciendo mecanismos para facilitar la integración con otras herramientas para la implementación de las capas de negocio y presentación.
  • 7. Método  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. Aplicar Si nuestro archivo se llama Foo (clase), y nuestro otro archivo, bar (método) tenemos que crear el siguiente archivo dentro de la carpeta app/. // app/Foo.php // ----- class Foo extends Controller { function foo() { $this->load('test'); } function bar() { echo '<b>Testing</b>'; echo $this->test->does(); } } Como resultado al solicitar (por ejemplo, ?section=foo&name=bar), deberíamos ver el siguiente texto: Testing
  • 9. Extender Podremos extender nuestro sistema con clases, o funciones propias o de algún 'plugin' o librería ajena. Solo que queremos extenderles sobre nuestro sistema actual, nuestro objeto básico. // app/model/Test.php // ----- class Test extends Model { function does() { echo '<ins>Hecho esta!</ins>'; echo $this->view('look', array('my_var' => 'my_value')); } } Entonces, debemos usar la siguiente sentencia dentro de nuestro programa Foo: $this->load($this, 'test') o _load($this, 'test') Ya con esto, podremos utilizar las llamadas a $this->test->does() dentro del objeto o clase Foo.
  • 10. Para mostrar los resultados de todo nuestro computo necesitamos de vistas, o archivos de inclusión: plantillas, bloques o scripts. Suponiendo que ya ha sido todo, debemos de visualizarlo: // app/view/Look.php // ----- echo 'Variable: ' . $my_var; Para poder ejecutar esto, se debe llamar a esta sentencia: $this- >view('look', array ('my_var' => 'my_value')) obteniendo como resultado: Variable: my_value Ver
  • 11. Urls.