Desarrollo Agil de Aplicaciones Web

Share Embed Donate


Short Description

Una pequeña introducción al patrón de desarrollo MVC y su aplicación usando frameworks en Perl, Python y Ruby...

Description

Desarrollo ágil de aplicaciones web Perl, Python y Ruby ..

La Web está cambiando constantemente • La tendencia es usar aplicaciones en la "nube" • Es más fácil y más rápido hacer  que una aplicación funcione en el navegador, sin las complicaciones del modelo cliente - servidor 

Es por eso que necesitamos un framework ¿Y qué es un framework?

Framework • Es una estructura de soporte definida en la cual otro  proyecto de software puede ser organizado y desarrollado. • Es una estructura software compuesta de componentes  personalizables e intercambiables para el desarrollo de una aplicación. • En otras palabras, es una aplicación genérica incompleta y  configurable a la que podemos añadirle las últimas piezas  para construir una aplicación concreta.

¿Y para qué sirve un framework? • Desarrollo rápido y estructurado • Mejor reutilización del código • Aprovechamos las herramientas prediseñadas (No reinventar la rueda) • Nos enfocamos en lo que necesitamos que haga la aplicación y no en como lo va a hacer 

Minimizar el esfuerzo en el desarrollo

¡No más código Spaghetti!

El framework necesita un patrón de diseño .. Y en este caso uno que funcione bien en aplicaciones web:

MVC Modelo, Vista y Controlador 

¿Y qué es MVC? Es el patrón de diseño de Software que divide el desarrollo de un proyecto en 3 capas:

Modelo Se refiere a la parte que modela y contiene la lógica del dominio de la aplicación, por lo general la parte de la Base de Datos ..

Vista Se refiere a la parte que contiene y provee la lógica de presentación ..

Controlador Se refiere a la parte que funciona como engranaje entre el modelo y la vista, además de contener la lógica del negocio ..

¿Y que framework puedo usar? Existen muchas opciones, dependiendo del lenguaje de programación:

Perl Catalyst, el Framework Elegante

Catalyst • Todos los componentes están en CPAN o por lo general empaquetados para tu distribución de Linux. • Sigue las "filosofías" de desarrolo: DRY (Don't Repeat Yourself), KISS (Keep It Simple, Stupid). • Se pueden usar distintas herramientas para cada capa: o

Modelo: DBIx::Class, Class::DBI ..

o

Vista: Template::Toolkit, HTML::Template, Mason ..

• El Controlador en este caso se arma usando Perl y la estructura que ofrece Catalyst.

Catalyst La instalación es sencilla: aptitude install libcatalyst-perl libcatalystmodules-perl libcatalyst-devel-perl

Luego, crear una aplicación nueva: catalyst.pl MiAplicacion

Python Django, el entorno de desarrollo web para perfeccionistas con agendas apretadas

Django • Una API de base de datos robusta. • Un sistema incorporado de "vistas genéricas" que ahorra tener que escribir la lógica de ciertas tareas comunes. • Un sistema extensible de plantillas basado en etiquetas, con herencia de plantillas. • Un despachador de URLs basado en expresiones regulares.

Django Para instalarlo: aptitude install python-django

Luego, crear una aplicación nueva: django-admin startproject miaplicacion

Ruby Ruby On Rails, el desarrollo Web que no molesta

Ruby On Rails • Es el padre de los frameworks web MVC • Las clases del Modelo son gestionadas por ActiveRecord • Existen muchas aplicaciones desarrolladas con este Framework, el más popular es Twitter. • Se distribuyen muchas librerías que pueden ser agregadas a la aplicación mediante "Gems" • Convención sobre configuración, lo que permite tener  menos código que escribir.

Rails Para instalarlo: aptitude install rails

Luego, crear una aplicación nueva: rails miaplicacion

Mas información en: • Catalyst: http://www.catalystframework.org/ • Django: http://django.es/ • Ruby on Rails: http://rubyonrails.org/

Contacto: • [email protected] • Twitter: @g013m • Página Web: http://blog.g013m.com.ve

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF