FRAMEWORK VS Código fuente

Slides:



Advertisements
Presentaciones similares
Desarrollo de aplicaciones en n- capas
Advertisements

Mónica Acosta Yeison Ceballos Carlos Rodallega
Internet y tecnologías web
INGENIERÍA DE SOFTWARE Introducción Arquitectura de Software
Introducción a LAS Bases de Datos
Webquest Diseño IU: Wix.com permite un control total del diseño de la web, pudiendo elegir en cualquier momento que punto modificar o que.
INTRODUCCIÓN A JAVA.
MÉTODOS Y ELEMENTOS DE PROGRAMACIÓN
Arquitectura Orientada a Servicios (SOA)
Introducción a la Programación
Framework Hexápodo PHP fácil, rápido y sin dolor
Índice 1. Introducción, objetivos y justificación del proyecto.
COMPONENTIZACIÓN DE ALGORITMOS GENETICOS Y SU IMPLEMENTACIÓN EN UNA PLATAFORMA ABIERTA PARA APRENDIZAJE COMPUTACIONAL.
GENERACIONES DE LENGUAJES DE PROGRAMACIÓN
Programas Son una serie o secuencia de instrucciones entendibles por los ordenadores que permiten la realización de las acciones o tareas para las que.
Webquest Diseño IU: Wix.com permite un control total del diseño de la web, pudiendo elegir en cualquier momento que punto modificar o que.
Introducción a ASP.NET.
TECNOLOGÍAS PARA LA IMPLEMENTACIÓN DE INTERFACES DE USUARIO
Introducción al Software
El paradigma de la orientación a objetos La programación orientada a objetos genera códigos eficientes y estandariza la metodología de programación, además.
 El termino OO, significa que el software es organizado como una colección de objetos. Un objeto es un paquete de software que contiene datos y procedimientos.
Contexto: Aplicación gráfica.  Siempre que se piensa en separar la funcionalidad de una aplicación de su interacción con el usuario, bien sea una aplicación.
DEPARTAMENTO DE INGENIERÍA INFORMÁTICA
Arquitectura de una aplicación
InfoPath Ventajas y Uso.
Bases de Datos Orientadas a Objetos (BDOO)
Contenido: 1- Que es el .Net Framework 2- Arquitectura en .Net
 Fue en el año 1945 cuando el matemático Jhon Von Neumann, fascinado por las posibilidades del ENIAC, demostró que una computadora podía tener una estructura.
Ciclo de Vida del Software Paradigmas de Desarrollo
J2EE Java Enterprise edition eilin chang Matthew pabon Gabriel vega.
“Diseño de base de Datos Alquicira Jiménez Carolina 303
Lenguajes de programación Web
 Un programa informático es un conjunto de instrucciones que una vez ejecutadas realizarán una o varias tareas en una computadora. Sin programas, estas.
CONCEPTOS BÁSICOS Diseño de Sistemas.
CURSO STRUTS 2 RESUMEN Resumen de lo visto en este primer módulo de INTRODUCCIÓN al framework Struts 2 Debes tener los conceptos muy claros sobre: Framework.
Ingeniería en Sistemas de Información Diseño de Sistemas (3K1)
Son la base para la búsqueda de soluciones o problemas comunes en el desarrollo de software y otros ámbitos referentes al diseño de interacción o interfaces.
INTRODUCCIÓN A JAVA. Índice ¿Qué es Java? La plataforma Java 2 La Máquina Virtual de Java Características principales ¿Qué ventajas tengo como desarrollador?
Ingeniería de Software
MÓDULO 1: Introducción al framework Struts 2
Universidad Central de Venezuela Facultad de Ciencias Postgrado en Ciencias de la Computación Sistemas Distribuidos Albany Márquez.
Modelo-Vista-Controlador Este patrón fue descrito por primera vez por Trygve Reenskaug en 1979, y la implementación original fue realizada en Smalltalk.
Introducción a la tecnología Realizado por: Miguel Ángel Arias.
IS2Objetos Distribuidos - J2EE,RMI1 Ingeniería del software II Ingeniería Web.
COMPUTO III Ing. Jimmy Ojeda Arnica.
INTRODUCCIÓN A LA INGENIERÍA DEL SOFTWARE
Lenguajes de programación
Olimpiadas 2mil Francisco Huertas Gonzalo Ortiz Alicia Pérez Laura Reyero Gabriela Ruíz Rubén Tarancón.
Una plantilla es una forma de dispositivo que proporciona una separación entre la forma o estructura y el contenido. Es un medio o un aparato que permite.
Construcción de Sistemas Colaborativos (Arquitectura y construcción)
Metodología de la programación
CONTRATOS DE CLIENTES Orlando Sedamano Cornejo Marco Bustinza
SOFTTEK INTERNAL © Copyright All Rights Reserved. Valores Corporativos Softtek S.A. de C.V. Struts Academia Java.
SOFTWARE Se conoce como software al equipamiento lógico o soporte lógico de un sistema informático, que comprende el conjunto de los componentes lógicos.
DISEÑO CURRICULAR Presentado por: Cesar Augusto Sáenz María Alejandra Hernández 1.contenidos curriculares de competencia.
BASE DE DATOS.
Luis Ponce Cabello.  Primera Parte : JSF  Segunda Parte : Facelets  Tercera Parte : Icefaces.
Titular: Ing. Miguel Ángel Espericueta Alumnos:
Guadalupe Andrade Mociño.  Significa Modelo Vista Controlador  Es un patrón de diseño  Esta compuesto por tres grandes capas: modelo, vista y controlador.
Navarro Hernández Nadia Samantha. Preescolar 1º. B.
Gestión de proyectos fin de carrera
UNIVERSIDAD DE VIÑA DEL MAR SEDE SANTIAGO AREA INFORMATICA Marco de Trabajo para un Acceso Multimedia Universal Mediante Patrones Modelo-Vista-Controlador.
Tendencia De Los Sistemas Operativos
DISEÑO DE COMPONENTES Y DESARROLLO BASADO EN COMPONENTES
Harware Software Yuneidy moreno 7-2 Tecnología i. E. devora Arango.
Servicios Web Conjunto de aplicaciones o de tecnologías con capacidad para interoperar en la Web. Estas aplicaciones o tecnologías intercambian datos entre.
Fundamentos de Programación Unidad I Conceptos Básicos.
Autores: Myriam Montes, Iván Viera, Carlos Caizaguano, José Sancho
SYMFONY Información del Framework. Síntesis de Symfony  Es un framework diseñado para optimizar el desarrollo de aplicaciones web creado con PHP5. 
Negocios Electrónicos Unidad 3 – Análisis de Portales de Negocio Exitosos.
Transcripción de la presentación:

FRAMEWORK VS Código fuente

Framework Con el término framework, nos estamos refiriendo a una estructura software compuesta de componentes personalizables e intercambiables para el desarrollo de una aplicación. En otras palabras, un framework se puede considerar como una aplicación genérica incompleta y configurable a la que podemos añadirle las últimas piezas para construir una aplicación concreta

MVC El patrón Modelo-Vista-Controlador es una guía para el diseño de arquitecturas de aplicaciones que ofrezcan una fuerte interactividad con usuarios.

Código Fuente Es el código de programación antes de ser interpretado por el compilador, el cual lo traduce a lenguaje maquina. El código fuente es denominado un lenguaje de alto nivel. El código fuente es un lenguaje creado para escribirlo y entenderlo de una manera mucho más sencilla que un lenguaje de máquina y ensambladores.

Tipos de framework Web 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.

Características de los Framework Descripción Abstracción de URLs y sesiones. No es necesario manipular directamente las URLs ni las sesiones, el framework ya se encarga de hacerlo. Acceso a datos. Incluyen las herramientas e interfaces necesarias para integrarse con herramientas de acceso a datos, en BBDD, XML, etc.. Controladores. La mayoría de frameworks implementa una serie de controladores para gestionar eventos, como una introducción de datos mediante un formulario o el acceso a una página. Estos controladores suelen ser fácilmente adaptables a las necesidades de un proyecto concreto. Autentificación y control de Acceso Incluyen mecanismos para la identificación de usuarios mediante login y password y permiten restringir el acceso a determinas páginas a determinados usuarios.

Ventajas 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. La reutilización de componentes software al por mayor. Los frameworks son los paradigmas de la reutilización. Base pre-estructurada lista para empezar a crear la aplicación. Promueve buenas practicas de desarrollo. Utilizacion de componentes, helpers.

Desventajas 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. 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. Si el framework utilizado en la aplicación es conocido se puede tener problemas de vulnerabilidad.

¿Y si no necesito o no quiero utilizar un framework? Crear toda una aplicación sin seguir ningún framework conocido; puede que sea tan pequeña que no lo considere necesario, que no conozca ninguno que se adapte a sus necesidades, o simplemente no desee dedicar tiempo a seleccionar y utilizar uno. Sin embargo, a medida que la aplicación crece, un programador competente procurará seguir unas determinadas pautas que le faciliten su trabajo de desarrollo y mantenimiento: separación de presentación y lógica, una sintaxis coherente, etc. La evolución natural será hacia que, de algún modo, se construirá su propio framework.

Conclusiones La utilización de un framework en el desarrollo de una aplicación implica un cierto coste 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”.