Recursos

Existen muchos recursos en la web que dan un valiosa ayuda en el desarrollo de aplicaciones web. Por tal razón, muchas veces resulta una tarea abrumadora crear una lista lo más breve posible.

He realizado una selección de los recursos online que han sido valiosos en mi trabajo, y he procurado organizar de un modo que le sea útil a otros desarrolladores iniciándose en la plataforma web o móvil. EN la organización de la selección he comenzado por los temas básicos, relativos a filosofías de diseño y lenguajes de programación.

Nuestra Selección de Recursos...

En cualquier desarrollo web, independiente de su tamaño y/o alcance, necesitamos tener un manejo en los tema de: HTML, CSS, Javascript, SQL, Diseño Orientado a Objetos, y al menos un lenguaje de servidor (PHP o Javascript en el servidor).

Por lo tanto, iniciamos la lista de recursos (un Bookmarks), separadas en las siguientes temáticas:

Recursos Base para el Desarrollo Web

Frameworks y ORM's para Desarrollo Web Backend:

Muchas veces necesitamos aumentar la eficiencia en el desarrollo web, una manera de hacerlo es mediante el uso de framework o herramientas de abstracción de la base datos.

Dependiendo del lenguaje de desarrollo, hay una amplia variedad de opciones, tales como:

No recomendaría iniciar un Proyecto Web tradicional sin un buen ORM, a excepción que la carga de recursos adicionales usados por el ORM comprometan significativamente el rendimiento de la aplicación, un caso uno en un millón.

Una popular opción de ORM para PHP es Doctrine.

CMS's de valor:

Cuando no necesitamos la flexibilidad en el desarrollo que nos provee un Framework, especialmente en aplicaciones web relativamente simples, una buena alternativa son el uso de CMS's. Dentro de los CMS de nivel empresarial Open Source, que podemos recurrir a:

Otros buenos CMS's empresariales, aunque de pago (al menos en sus versiones robustas), son Expression-Engine y EZ Publish.

Frameworks Frontend:

La labor del diseño de interfaces web, en particular para programar el comportamiento de la interfaz con el usuario, se ve facilitada por populares frameworks para Javascript:

Además, es interesante ver las proyectos iniciados en jQuery.org

Herramientas para Integración Contínua en PHP

Phing es una versión de Apache Ant para PHP, se puede leer una breve intro en http://phpmaster.com/using-phing/.

Herramientas para el Desarrollo Móvil:

Migrar desde una aplicación web (HTML5) hacia una aplicación movil, es facilitado por:

Utilerías y librería de clases:

Existe un amplio repositorio de recursos en internet, aunque no siempre la buena calidad sea una constante. En especial, cuando buscamos clases (o bibliotecas) que colaboren en nuestro código para soportar requerimiento específicos.

Buenas repositorios de código (PHP o Perl) son:

Utilerías que aceleran escritura de código:

Para manejar las discrepancias de renderización del código en los navegadores, utiles recursos son:

Frameworks y Utilerias para desarrollo movil:

Otros recomendables recursos para agilizar el desarrollo de aplicaciones móviles son:

Trabajando con Expresiones Regulares (RegEx)

Es innegable, que el manejo de expresiones regulares es una tarea que se da con cierta frecuencia en el desarrollo web. Útiles recursos en este tema son:

Herramientas para Automatización

La automatización de procesos es un concepto muy general, en administración de sistema Perl es un lenguaje muy útil en este campo, por tal razón se agregan algunos enlaces a útiles recursos para aprender el lenguaje Perl.

Automatizando el proceso de testeo de aplicaciones web.

Populares Servicios de Hosting:

Donde alojar nuestra aplicación web, hoy en día existen muchos servicios de hosting. Sin embargo, entre todos ellos, destacan algunos en popularidad por ofrecer buenas características de calidad, precio y escalabilidad:

Lista de recursos no clasificados:

Además de nuestra clasificación anterior, no podemos dejar de considerar una serie de artículos que han colaborado de algún modo en desarrollo de páginas web dinámicas:

Recursos CSS:

Bases de Datos:

Misceláneos:

Más temprano que tarde, nos veremos en la necesidad de llevar a cabo tareas del tipo: Capturar información desde la web sin una API establecida (uso de cURL), o configurar un stack de servicios web (Apache, MySQL), o procesado imágenes programáticamente (ImageMagick). Sobre temas de ese tipo encontramos:

POO significa Programación Orientada a Objetos.

Zend Framework:

Popular Framework PHP, que usan como base varios sistemas de clase empresarial, como es el caso de Magento:

Lenguaje Perl:

El lenguaje Perl sigue ocupando un lugar destacado, tanto como el automatización de tareas en la administración de sistemas Unix, o en el desarrollo web:

Curiosidades