Framework
Upcoming SlideShare
Loading in...5
×
 

Framework

on

  • 212 views

FRAMEWORK

FRAMEWORK

Statistics

Views

Total Views
212
Views on SlideShare
178
Embed Views
34

Actions

Likes
0
Downloads
3
Comments
0

1 Embed 34

http://karencarbache.blogspot.com 34

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Framework Framework Presentation Transcript

    •  En informática, y específicamente en el desarrollo de software, un marco es una estructura lógica de los medios en los que un software puede ser diseñado e implementado. En la base de un marco siempre hay un conjunto de bibliotecas de código que se pueden utilizar con uno o más lenguajes de programación, a menudo acompañada de una serie de herramientas para apoyar el desarrollo de software, tales como un IDE, depurador, y otras herramientas diseñado para aumentar la velocidad de desarrollo del producto acabado.  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.
    • 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 deframeworks 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.
    • El propósito de un marco es para guardar el desarrollador de la reescritura de código ya escrito anteriormente para tareas similares. Esta circunstancia se ha producido más a menudo como interfaces de usuario que se han convertido en cada vez más complejo, o, más en general, como que ha aumentado la cantidad de software con una funcionalidad similar secundaria. El marco Inglés plazo por lo que se puede traducir como un marco o estructura, que es precisamente su función, hacer hincapié en que el programador sólo queda crear el contenido real de la "aplicación. Un marco se define por un conjunto de clases abstractas y las relaciones entre ellos. Instancias de un marco de medios que proporcionan una implementación de las clases abstractas. El conjunto de clases concretas, heredando el marco definido, hereda las relaciones entre las clases, se obtiene de esta manera un conjunto de clases de concreto con un conjunto de relaciones entre las clases.
    •  Un marco puede ser vista como (y en algunos casos es) un super conjunto o una adición a las bibliotecas de tiempo de ejecución de un idioma. Para dar algunos ejemplos:  El C + +, además de la biblioteca estándar de C + +, su propio marco no es gráfica, la Biblioteca de plantillas estándar (STL), sin embargo, existen numerosos marcos que amplían o, en parte, sustituir el STL, incluyendo el Active Template Library (ATL) y Microsoft Foundation Classes (MFC) de Microsoft, Qt de Trolltech, y wxWidgets. Microsoft también ha desarrollado una aplicación de C + + (ahora estándar ECMA C + + / CLI), que es totalmente compatible con el. NET Framework.  La biblioteca C tiene su propio tiempo de ejecución, la biblioteca estándar de C, también conocida como libc (en Unix) o CRT (en Microsoft, C Run-Time), pero hay varios marcos de C, incluyendo el kit de herramientas GIMP (GTK).  Para C #, que no tenga su propia biblioteca de tiempo de ejecución. NET Framework también realiza esta función. Lo mismo se aplica a. NET de Visual Basic, que ha sido diseñado de una manera similar.  Todo el software escrito en Borland Delphi se basa en la Biblioteca Visual Component (VCL), también por Borland, hizo esta biblioteca es una estructura, ya que se ocupa de una gran cantidad de servicios no esenciales, software (incluyendo, por supuesto, la gestión de la interfaz gráfica). Al igual que con el Microsoft C + +, Borland ha hecho también una versión de Delphi que se inclina. NET Framework.
    • Dentro de este aspecto, podemos basarnos en el modelo MVC (Controlador => Modelo => Vista), ya que debemos fragmentar nuestra programación. Tenemos que contemplar estos aspectos básicos en cuanto a la implementación de nuestro sistema: 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).
    • 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.
    • 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
    • // 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']);
    • 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
    • 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