Patron de Desarrollo Model View Controller

Arquitectura: El Domo de Roma.
Arquitectura: El Domo de Roma.

En esta ocacion en el podcast de Rock Developer Cesar Reyes y Iaax Page nos hablan sobre el patron de arquitectura Model View Controller. Y como este nos ayuda a desarrollar mejor.

Vinculos del podcast

Este es el episodio Numero 9 del podcast. Estamos trabajando para agregar un mejor feed que les permita descargar los episodios desde el iTunes. Un mejor plugin para el reproductor de MP3 y algunas otras cosas interesantes.

Queremos convertir a RockDeveloper en una mejor comunidad.

Muchas Gracias por su apoyo y no se olviden de hacer click en el boton retweet, en la esquina superior derecha de este post.

Saludos cordiales,

Iaax Page y Cesar Reyes

Ajax y Librerias Javascript

Ajax and Javascript

Ajax y librerias javascript

Ajax: Asynchronous JavaScript and XML, es un desarrollo atribuido en forma original a Microsoft, si bine quiza Microsoft jamas penso en llamarlo de esta manera, si fueron ellos los pioneros en realizar llamadas asincornas que permitian la actualizacion de cirta parte de la informacion en sitios web.

Originalmente, Ajax estaba basado en el consumo de servicios web que devolvian XML. De ahi la X de su nombre. Sin embargo JSON aparecio casi de la nada para convertirse en uno de los formatos mas importantes de nuestros tiempos.

JSON o Java Script Object Notation, como lo mencionames en el podcast de ORMs, fue desarrollado basado en YAML,

Lista de Librerias JS

Nuestras recomendaciones para la seleccion de una libreria JS es basarse en las necesidades especificas de tu desarrollo. Algunas de estas herramientas estan mas orientadas a aplicaciones Web, como lo son ExtJS, YUI y JQuery, mientras que Scriptaculous, y Prototype estan orientadas a funcionalidades esteticas.

Si nuestra necesidades es desarrollar front ends, que permitan el consumo de servicios web y presentar informacion en forma dinamica, quiza JQuery, Ext y YUI sean las mejores opciones para estos fines. Mientras que si el proposito es desarrollar efectos de presentacion, se puede optar por alguna libreria basada en Prototype, como Scriptaculous.

Mas importante que el hecho de utilizar una libreria de JS como las anteriores, es enteder su funcionamiento, para ello, lo mejor es estudiar su API, y sobre todo tener un entendimiento amplio del Document Object Model, definido por la W3C, donde tambien podemos encontrar la definicion de DTD. Es importante recalcar que recomendamos que para nuevos desarrollos se opte por usar los modelos Strict, en lugar de los transitional, ya que estos ultimos son pensados por compatibilidad hacia tecnologias antiguas, de modo tal que en un futuro todas las definiciones de DTDs Transitional quedaran obsoletas.

Herramientas ORM-Object Relational Mapping

A falta de una buena foto del puente de la presa del infiernillo, colocamos aqui una foto del emblematico Golden Gate.

San Francisco Golden Gate
San Francisco Golden Gate

Object Relational Mapping (ORM) es la herramienta que nos sirve para transformar representaciones de datos de los Sistemas de Bases de Datos Relacionales, a representaciones (Modelos) de objetos. Dado a que los RDBMS (Realational Data Base Management Systems) carecen de la fexibilidad para representar datos no escalares, como lo son arreglos, la existencia de un ORM es fundamental para el desarrollo de sistemas de software robustos y escalables.

Las herramientas ORM pues, actuan como un puente que conecta las ventajas de los RDBMS con la belleza de la representacion de estos en un lengujae Orientado a Objetos, o, dicho en otras palabras, nos lleva de la base de datos al lenguaje de programación.

El Podcast

Ventajas de los ORM

  • Ayudan a reducir el tiempo de desarrollo de software.
  • Permiten la produccion de mejor codigo.
  • No hay necesidad de saber SQL
  • Incentivan la portabilidad y escalabilidad de los programas de software.
  • Independencia de la Base de Datos

Desventajas

  • El desempeño esta ligado a la eficiencia del ORM.

Recomendaciones

¿Donde queremos estar? cuano hablamos del uso de ORMs, recomendamos que se tome en cuenta que siempre existiran exepciones, donde la latencia agregada por la libreria o framework al desempeño general del software. Por tal motivo debemos escoger una libreria o framework que nos facilite modos alternativos de acceder a datos.

Vinculos relacionados

Producido por: Iaax Page y Cesar Reyes, para RockDeveloper.com

Si te gusto este capitulo. Recuerda escuchar la serie sobre Extreme Programming en Rock Developer.

Extreme Programming Parte 3 de 3

Extreme programming parte 3 de 3
Extreme programming parte 3 de 3

Esta es la ultima entrega en nuestra serie de programacion extrema. Esperamos hayan disfrutado el contenido y sigan regresando pora mas sobre desarrollo de software en RockDeveloper, el podcast.

Programacion Extrema Parte 3 de 3

Para saber mas sobre programacion extrema no te olvides de visitar

XP Org

Y si no has escuchado los podcast anteriores de la serie, hazlo ahora en

Programacion Extrema Parte 1 de 3 y Programacion Extrema Parte 2 de 3

El podcast es producido por

Iaax Page y Cesar Reyes

Extreme Programming Parte 2 de 3

Moto Cross Super Man
Moto Cross Super Man

Día de elecciones en México, prometí no meterme en politica en este espacio, así que no lo haré.

Solo dire que hubo un monton de cosas gratis para los que si votamos. El problema es que me acabo de enterar. 😀

Lo prometido es deuda, y dejamos con ustedes la segunda entrega de la serie Extreme Programming.

XP Parte 2

Empezamos haciendo un brevario del articulo anterior: Extreme Programming Parte 1 de 3, y entonces partimos hacia la definición de Martin Fowler,  Continous Integration (Integración Continua), para despues seguir con mas de XP. Esperamos que les guste.

Y si te sientes con flojera de ir al post anterior. Aqui te dejamos los vinculos del show!

Presentado por

Cesar ReyesIaax Page para RockDeveloper.com

Actualizacion: La ultima entrega de la serie esta aqui en Extreme Programming Parte 3

Extreme Programming Parte 1 de 3

Extreme

Siguiendo con nuestras charlas sobre desarrolllo de software, estaremos hablando en esta ocasion sobre Extreme Programming (Programacion Extrema) Una descripcion breve de lo que es y sus procesos.

El podcast

Extreme Programming: A gentle introduction

La wikipedia sobre Programacion Extrema

JetBrains Team City (Continuous Integration Server)

CruiseControl (Continuous Integration Server)

Ant (Build Tool para Java)

NAnt (Build Tool para .Net)

Presentado por

Cesar Reyes y Iaax Page para RockDeveloper.com

Actualizacion:  Ya esta disponible la segunda parte de esta serie Extreme Programming Parte 2

Actualizacion: La ultima entrega de la serie esta aqui en Extreme Programming Parte 3

El futuro de Java en la industria del software.

Java. Uno los lenguajes de programación mas antiguos aun vigentes en el mercado se convirtio, en la apuesta mas grande de Oracle, que los llevo a invertir $7, 400 MDD en SUN y su negocio poco rentable.

Muchas alertas rojas empesaron a sonar en el momento en el que la noticia se dio a conocer. Estaremos presenciando el fin de una era, se posiciona en el pensamiento colectivo. Pero hay luz al final del tunel.

Bienvenidos a la entrega numero dos Rock Developer – El Podcast.

El Futuro de Java

Rod Johnson. Habla sobre el futuro de Java.
Rod Johnson. Habla sobre el futuro de Java.

Vinculos a twitter

No te olvides de promover el podcast usando las herramientas sociales al final de este post. Comparte con tus amigos en twitter, facebook, agreganos a digg o a delicious. Ayudanos a hacer crecer el podcast para llegar a más gente.

Los vinculos a las tecnologías:

SpringSource http://www.springsource.org/
Spring Roo http://www.springsource.org/roo
Grails http://grails.org/
Groovy http://groovy.codehaus.org/
Hibernate http://hibernate.org/
Forza http://forzaframework.org/ En construccion
  1. Spring Source
  2. Spring Roo
  3. Grails
  4. Groovy
  5. Hibernate
  6. Forza –En construccion
  7. Apache Harmony

Rock Developer. El podcast

Metodologia Agile de Desarrollo de Software

Colibri azul en vuelo
Desarrollo Agil.

Agile Development. Es un grupo de metodologias, que fueron definidas en el 2001 en el Agile Manifesto.

Invitamos a Cesar Reyes a conversar un poco sobre lo que es Agile, y que ventajas puede traer a nuestra vida, claro que no pude evitar hablar un poco de Alan Cooper y de interaccion.

Sin mas preambulos les presentamos el primero de los programas del podcast rock developer.

El Podcast