PROGRAMANDO PENSANDO EN SERVICIOS – Parte 1

PROGRAMANDO PENSANDO EN SERVICIOS – PARTE 1
PENSANDO EN SERVICIOS
Como docente de programación, una de las preguntas que los estudiantes realizan con mucha frecuencia es:
¿Cómo empiezo el proyecto?
La mayoría que se inicia en programación, como es lógico, no tiene claro cómo debe iniciar su proyecto, esto se complica aún más cuando su primer profesor le indica que realice una ventana, y para programarla debe hacer doble click en el botón y empiece a programar.
Pienso, que una parte del problema está en que lo primero que se enseña a los futuros programadores es poner el código de la lógica de un requerimiento en el evento click de un botón, por lo tanto, creen que es así como se debe programar todas las ventanas que requiere su aplicación.
Este estilo de programación no creo que sea el más adecuado, tiene muchos problemas, como por ejemplo:
  1. Repites bloques de código en varias partes de tu aplicación, esto dificulta su mantenimiento.
  2. El mantenimiento de la aplicación rápidamente se vuelve complicado, en muy poco tiempo, tu aplicación se parece más al juego de Jenga.
  3. Escalar tu aplicación, por ejemplo, de Cliente-Servidor a Web se hace prácticamente imposible.
  4. Si cuando estas a la mitad de un proyecto, te cambian de motor de base de datos, actualizar el código se hace una tarea muy complicada.
Voy hacer referencia a Danny Thorpe:
Programar sin una arquitectura en mente es como explorar una gruta sólo con una linterna: no sabes dónde estás, dónde has estado ni a dónde vas.
Pienso que primero debemos pensar en una arquitectura, por ejemplo, pensar en dos capas, una capa de servicios (service) donde se implemente la solución del problema a resolver, y una capa para la interfaz de usuario (view).
Pensar en una capa de servicios para implementar la solución de un requerimiento o problema da muchas ventajas, entre las cuales tenemos:
  1. Permite concentrarnos en la solución.
  2. Facilita las pruebas, algo que no debes dejar de hacer.
  3. Tu solución puedes escalarla fácilmente.
  4. El mantenimiento del código es más fácil.
En el siguiente artículo estaré desarrollando un ejemplo ilustrativo.


CODIGO FUENTE
En esta sección te presento un video que una aplicación CLIENTE-SERVIDOR.
Tú tienes acceso al código fuente de esta aplicación, después del video tienes el enlace.



No hay comentarios:

Publicar un comentario