22 de abril de 2013

Útiles herramientas para iniciarse en el Desarrollo Web

Muchas veces tenemos una idea o proyecto web que nos parecería interesante desarrollar nosotros mismos, pero no disponemos del conocimiento, ni los recursos, ni el tiempo para iniciarnos en un aprendizaje formal.

En el mundo del desarrollo web, a diferencia de otras disciplinas, se dispone de amplia gama de alternativas para iniciarse un desarrollo web, y con casi cualquier nivel de conocimiento.
Nota: Este artículo está dirigidos a personas que recién se inician en el Desarrollo Web y desean descubrir un camino rápido para volverse productivos.
Entonces, el desafío está en escoger las herramientas apropiadas a nuestra experiencia y nivel de destrezas adquiridas.
Es sabido, que para iniciarse en el desarrollo web y donde se conoce muy poco o nada del tema, lo normal es tomar un herramienta como Wordpress y comenzar a trabajar con él.
Pero que sucede, si nuestro nivel de conocimiento es un poco mayor, y ya conocemos algo de PHP y hemos trabajado con bases de datos MySQL usando, por ejemplo: phpMyAdmin.
¿Existen buenas alternativas para aprovechar de mejor manera nuestro conocimiento base en PHP y MySQL?... dar un paso más allá en la creación de nuestros proyectos.
Eso es precisamente lo que mostraré en este artículo, de cómo iniciarse en el desarrollo de aplicaciones web.

¿Cómo Iniciarse en el Desarrollo Web?

La idea es convertir en realidad nuestro proyecto web o aplicación web lo más rapidamente posible, en base a nuestro limitado conocimiento de PHP y MySQL.
Pero antes de inciar el proceso, es necesario responder, en una forma lo más general posible, la pregunta: ¿Qué es una Aplicación Web?

¿Qué es una Aplicación Web?

En la mayoría de los casos, una aplicación web se reduce a:
  • Programar un código en el servidor, junto con diseñar una base de datos, que en su conjunto: provean una interfaz al usuario, para que el usuario interactúe con una base de datos subyacente.
Vemos que es una definición muy general, pero sin embargo nos da indicios de que funcionalidades debe apoyar nuestro sistema. Así, las funcionalidades básicas serán:
  • Permitirnos crear una Interfaz de Usuario (con relativa facilidad): Es decir, poder crear la página web con los enlaces y formularios HTML, que permita capturar los requerimientos del usuario.
  • Y facilitarnos la creación de la Lógica para Interactuar con la Base de Datos: Es decir, en este caso, poder hacer las operaciones de: Lectura, Inserción, Edición o Eliminación de registros de la Bases de Datos.
Las operaciónes básicas descritas, son conocidas como operaciones CRUD.

Herramientas básicas para la creación de una Aplicación Web

Entonces, ahora ya se tiene claridad de cuales son las tareas básicas para el desarrollo web, que debemos buscar, al menos en el nivel inicial.
Nuestro proyecto web puede ser tan simple que sólo requiera el uso de unas pocas tablas MySQL, donde es sencillo crearlas usando phpMyAdmin. Sin embargo, siempre será valioso contar con una herramienta de diseño visual de bases de datos y si es gratuíta... aún mejor.

1. Diseño de Base de Datos: MySQL Workbench

MySQL Workbench: nos simplificará enormente el desarrollo web, pues es normal que la base de datos de un proyecto web sufra modificaciones a lo largo de su construcción y también en su ciclo de vida.
Por lo tanto, disponer de un punto centralizado donde manejar toda está tarea, hacen invaluable a un gestor visual de bases de datos como MySQL Workbench.
Descargar desde: MySQL Workbench

2. Diseño de Formularios e Interactuar con la Base de Datos

phpMyEdit: Afortunadamente, estas dos (2) tareas se pueden realizar usando solamente esta herramienta de software. phpMyEdit es un generador de código PHP que permite interactuar directamente con tablas MySQL y entregar la Interfaz de Usuario en HTML, la forma de operar es muy sencilla.
Descargar desde: http://www.phpmyedit.org/,
phpMyEdit es una herramienta Open Source y aunque es muy simple de usar, dispone de un gran número de opciones.
Se debe notar que el generador de código PHP phpMyEdit, opera con cada una de las tablas MySQL de nuestra base de datos, que deben estar creadas previamente.

3. Manejo de Imágenes

Aunque este requerimiento no se desprende de las funcionalidades previemente enunciadas, en la prática será imprescindible de disponer de una forma de administrar las imágenes en casi cualquier aplicación web. Especialmente, en el recorte y redimensionamiento de imágenes, además de facilidades de conversión entre los distintos formatos gráficos.
En este aspecto, una herramiento que resuelve este frecuente problema es Image_Toolbox.
Descargar Image Toolbox: http://image-toolbox.sourceforge.net/ es Open Source y usa la librería GD de PHP. Sus funcionalidades van más allá del redimensionamiento de imágenes, y permite además: Generar texto, Mezclar imágenes entre otras características destacada.

Resumen

Las herramientas mencionadas permiten un inicio rápido en la creación de Aplicaciones Web en PHP y MySQL, con un conocimiento muy básico, no se requiere conocer la Programación Orientada a Objetos u otros temas más específico.
Es un buen punto para iniciar un desarrollo web e ir incrementando el conocimiento usando el lema "Aprender Haciendo".
En la medida que se avance en el aprendizaje, se verá la necesidad de abordar problemas específicos, por ejemplo:
  • ¿Cómo manejar el aspecto de nuestra Aplicación Web de modo centralizado?... aquí es donde se encontrarán con los sistemas de plantillas.
  • ¿Mejorar o enriquecer la interacción del usuario con nuestros formularios?... entonces se investigarán acerca de los editores de texto o imágenes 'on page'. Estos se ejecutan en el navegador y usar el lenguaje Javascript.
  • Gestión de comunicación AJAX.
  • Uso de Frameworks y ORM's.
Esperamos haber resuelto, para los principiantes, la pregunta de: ¿Cómo iniciarse en el desarrollo web?

Otros recursos útiles