kumbia php framework - inicios, presente y futuro

Post on 13-Jun-2015

6.507 Views

Category:

Technology

3 Downloads

Preview:

Click to see full reader

DESCRIPTION

En el desarrollo actual de software, las estructuras de soporte de proyectos denominadas framework, se han vuelto comunes gracias a su facilidad de modelado entre las relaciones generales de las entidades de dominio, en torno a esto y soportando el Modelo Vista Controlador (MVC), nace Kumbia, que pretende ser una solución a cualquier tipo de persona desde el principiante, pasando por el desarrollador que no tiene tiempo para aprender un nuevo framework hasta la empresa de desarrollo de software. Kumbia es innovador y su principal enfoque es desarrollar herramientas que faciliten y hagan más productivos los proyectos y software orientado a la web. Escribir cada componente del framework pensando en que sea fácil de usar para cualquiera que lea su documentación ó simplemente tenga en sus manos un ejemplo de ello. A diferencia de otros frameworks para PHP, Kumbia se enfoca en la sencillez y el pragmatismo, de esta forma se logra resultados impresionantes en pocas líneas de código. Esta presentación busca dar a conocer de la mano de sus creadores el framework PHP Kumbia, que representa actualmente uno de los proyectos de software libre de origen hispano más importante. Se presentaran los inicios, razón de existir, objetivos, a corto, mediano y largo plazo de la herramienta, así como el desarrollo de ejemplos de los componentes, generadores y alcances de la misma, permitiendo a los participantes formular sus inquietudes y dudas a través de un debate conducido por los desarrolladores del Framework.

TRANSCRIPT

Kumbia PHPWeb Framework

Deivinson TejedaAndrés Felipe Gutiérrez

Kumbia en su Nicho:Inicios, Presente y Futuro

Kumbia en sus Iniciosun poco de historia

Qué hace Kumbia?•Define una Filosofía de Trabajo

•Proporciona Librerías y Funciones que deberían hacer la vida del programador más feliz

•Ahorrar trabajo y tiempo

•Producir aplicaciones más fáciles de mantener

•Evitar código duplicado

•Crear Aplicaciones Multi-Capa

Lo más importante:Lo más importante:Hacer Aplicaciones que puedan ser Hacer Aplicaciones que puedan ser usadas por Personas y no solo por usadas por Personas y no solo por

ProgramadoresProgramadores

Como?•Preocuparse por interfaces, lógica y procesos más intuitivos y prácticos para usuarios.

•Usar Kumbia para evitar estar pensando en los “detalles” y facilitar el trabajo.

•Buscar en que manera podría ser más fácil sin que aumente el trabajo considerablemente.

•Atacar necesidades reales y no desarrollar en supuestos de utilidad.

•Ser fanático de la productividad.

Porque Kumbia?• Implementa los mejores patrones de programación orientados a la Web.

• Fomenta la utilización de características Web 2.0 en nuestro software.

• Hace la mayor parte del trabajo y se ocupa de los “detalles”.

• Mantener una aplicación es más fácil.

• Curva de aprendizaje mínima

• Representa nuestro espiritu hispano hablante

Arquitectura Modelo-Vista-Controlador

Browser envía una Petición

Base de Datos

La petición es analizada y enviada al controlador que toma las decisiones lógicas e interactúa con las vistas y los modelos

Los modelos acceden a la información en la base de datos y la envía al controlador

El controlador llama una vista para mostrarle la información al usuario

Kumbia en el Presenteversión 0.5

0.5• Una estructura de directorios que favorece la productividad.

•ActiveRecord mas rápido, consistente y estable.

•Mejoras en el core del framework tales como:

• Velocidad.

• Mayor escalabilidad

• Incorporación de nuevos componentes, (Auth, Filter, Paginator, etc)

• Mejoras de funcionalidades (JavaScript, helpers, etc)

• Soporta casi cualquier motor de base de datos (MySQL, PostgreSQL, Informix, SQLServer, SQLite, etc)

• Mejor soporte para relaciones en ActiveRecord.

•Y mas...

El Poderoso:El Poderoso:ActiveRecordActiveRecord

Active Record

Adaptador Nativo PHP Adaptador PDO

Capa de Abstracción de Datos de Kumbia

Base de Datos Relacionales (MySQL, PostgreSQL, Informix, Oracle, ODBC, etc)

ActiveRecord: Entidades de la Base de Datos tratadas como Clases

Modelos Almacenan información lógica de datos,

atributos y relacional usando ActiveRecord

Sin Active Record

Código en PHP Tradicional: <?php

$nit = ‘808111827-2’ ;$q = mysql_query(“select count(*) from clientes where nit = ‘$nit”);$fila = mysql_fetch_array($q);if($fila[0]==0){

mysql_query(“insert into clientes values (‘$nit’, ‘EMPRESA DE TELECOMUNICACIONES ETB’”);} else {

mysql_query(“update clientes set razon_social = ‘EMPRESA DE TELECOMUNICACIONES ETB’ where nit = ‘$nit’”);}

?>

Con Active Record

Código en PHP usando ActiveRecord:

<?php

$Clientes->nit = ‘808111827-2’;$Clientes->razon_social = ‘EMPRESA DE TELECOMUNICACIONES ETB’;$Clientes->save();

?>

Ventajas del ActiveRecord

Se trabajan las entidades del Modelo más Naturalmente como objetos.

Las acciones como Insertar, Consultar, Actualizar, Borrar, etc. de una entidad del Modelo están encapsuladas así que se reduce el código y se hace más fácil de mantener.

Código más fácil de Entender y Mantener.

Reducción del uso del SQL en un 80%, con lo que se logra un altoporcentaje de independencia del motor de base de datos.

Menos “detalles” más practicidad y utilidad

Generadores de Formularios:Generadores de Formularios:

Producción en SerieProducción en Serie

Generadores de Formularios

Generadores de Formularios- Generación de Formularios prácticos, configurables y útiles en la mayor parte de casos

- Generación Inmediata de Formularios CRUD (Create, Read, Update, Delete) sobre entidades de la base de datos

-Validación Automática de Tipos de Datos (Numéricos, Texto, Fechas, E-Mails y Tiempo)

- Validación de Integridad Relacional (Llaves Únicas, Llaves Foráneas, y Valores de Dominio)

- Generación de Reportes PDF y HTML basados en la información del formulario

- Integración con AJAX y Servicios Web

Ventajas Generadores de Formularios

- Hacen la mayor parte del trabajo Generación de la Interfaz Validaciones de Datos e Integridad Flujo de Entrada de Datos Presentación de Información- Se pueden adaptar fácilmente a necesidades especificas- Se produce resultados más rápido sin efectos sobre la calidad ni en trabajo para el programador

Desventajas Generadores de Formularios

- No hacen todo el Trabajo.- No se puede depender completamente de ellos.- La lógica está encapsulada y hace difícil modificar ciertos comportamientos de los formularios.

Como?

<?php

class Clientes extends StandardForm {

public static $scaffold = true;

}

Una clase con el nombre de la tabla (Clientes) en la base de datos, la propiedad scaffold (andamiaje) hace que Kumbia lea la información de atributos de esta tabla y genere un formulario del tipo de la Clase Padre, en este caso StandardForm.

AplicacionesAplicacionesWeb 2.0Web 2.0

+ Aplicaciones Web 2.0• La Web 2.0 es la transición que se ha dado de aplicaciones tradicionales hacia aplicaciones que funcionan a través del Web enfocadas al usuario final.  

• Nuestros proyectos tienen que renovarse y evolucionar.  El Web 2.0 no es precisamente una tecnología, sino es la actitud con la que debemos trabajar para desarrollar en Internet.

+ Efectos Visuales+ AJAX+ Aplicaciones orientadas al Usuario+ Interfaces Intuitivas y Prácticas

+ Aplicaciones Multiplataforma

Aplicaciones creadas con Kumbia PHP Framework corren en cualquierPlataforma tanto en Servidor como Usuario de laAplicación

Kumbia en el Futuropensando en la versión 0.6

Futura versión 0.6• Refactoring del código adopción de nuevos estandard.

• Manejo avanzado de Vistas, Template y Layout.

• Mas rápido el core.

• Reescritura del componente StandardForm.

• Migración de Prototype a JQuery.

• Y mas...

Kumbia PHP Framwork es Software Libre!

¿Porqué?

Porque las buenas ideas deben ser libres, así todos podemos sacar el

mejor provecho de ellas!

Gracias...www.kumbiaphp.com

Deivinson Tejeda (deivinsontejeda@kumbiaphp.com)Gutierrez Andres (gutierrezandres@kumbiaphp.com)

top related