Alejandro Morales Meza
Diseñador y Desarrollador de Software y Bases de Datos
Soy un profesional en Ingeniería de Sistemas con más de seis años de experiencia en el diseño y desarrollo de software y bases de datos. He trabajado en proyectos de software de pequeño, mediano y alto grado de complejidad para diferentes sectores del mercado. Soy de espíritu proactivo, investigador, creativo e ingenioso que me lleva a brindar soluciones efectivas a cualquier tipo de requerimiento asociado a mi área de desempeño. Realizo mi trabajo con excelencia, calidad y profesionalismo. Tengo un deseo continuo de crecimiento personal y profesional.
25th
FEB
Introducción a Netbeans Platform
Enviado por alejandromoralesmeza bajo Java, Netbeans
En esta entrega examinaremos algunos términos básicos relacionados con el desarrollo de aplicaciones sobre la Plataforma Netbeans y algunas características importantes de esta.
Los temas que trataremos son:
- Cliente Rico
- Framework
- Plataforma de Cliente Rico
- Ventajas de utilizar una Plataforma de Cliente Rico
- La Plataforma Netbeans
Cliente Rico es el término utilizado para referirse a aquellas aplicaciones de software en que la lógica del negocio, es decir, la funcionalidad relacionada con el problema de la vida real que se intenta resolver, se encuentra embebida en ellas y el procesamiento de los datos ocurre localmente en el equipo en que estas residen. En un contexto más amplio, el del software distribuido, cliente rico se refiere a las aplicaciones en que la mayor parte de la lógica del negocio y el procesamiento de datos ocurre principalmente del lado del cliente, y con un mínimo de carga operacional en las otras capas.
En el caso particular de las aplicaciones ricas de dos capas, cliente-servidor, el cliente generalmente es una aplicación de escritorio con una variedad de componentes gráficos que facilitan la interacción con el usuario, partiendo de la captura de datos hasta entrega de informes resultado del procesamiento de los mismos. Dicha aplicación realiza operaciones sobre los datos ingresados por el usuario y, en caso de ser necesario, los hace persistentes mediante el uso de un servidor de base de datos. Es así que el servidor realiza una tarea mínima en comparación con la responsabilidad de la aplicación cliente de proporcionar diferentes funcionalidades al usuario al entregarle resultados correctos.
El término cliente rico es usado la mayoría de las veces para referirse a las aplicaciones de escritorio, aunque esto está cambiando debido a la aparición de tecnologías como Ajax, que transportan a la Web la experiencia del usuario al utilizar las aplicaciones convencionales, por lo cual ya se escucha con frecuencia hablar acerca de Aplicaciones Web Ricas.
Es bien sabido que para el desarrollo de aplicaciones Web existe un conjunto de frameworks que facilitan el trabajo del programador proporcionándole out-of-the-box un conjunto de características que son comunes a todas las aplicaciones y de las cuales el puede disponer a través de ellos con mucha facilidad, permitiéndole enfocarse en resolver los requerimientos relacionados con el dominio del problema y ayudándole a ser más productivo.
En contraste con la variedad de frameworks existentes para el desarrollo Web, hay un conjunto muy reducido de estos para la creación de software de escritorio, entre los cuales se encuentra el Framework de Aplicaciones Swing (SAF del inglés Swing Application Framework), el cual, por cierto, ha dejado de tener soporte desde hace algún tiempo atrás.
El propósito de un framework es proveer una estructura definida mediante la cual el software pueda ser construido de manera organizada de acuerdo a prácticas sanas de programación y a patrones de desarrollo. Normalmente, proporciona un conjunto de APIs y herramientas que ayudan al desarrollador durante la tarea de construcción y creación.
La Plataforma de Cliente Rico es un entorno de administración del ciclo de vida de una aplicación, la cual constituye una base para el desarrollo de aplicaciones de escritorio. Esta se encarga de proveer un framework que brinda al desarrollador un conjunto de características presentes en este tipo de aplicaciones, tales como: menús, barras de herramienta, barras de estado, barras de progreso, persistencia de datos de configuración de la aplicación e internacionalización, entre otras, las cuales pueden ser utilizadas con mucha facilidad.
También, es la Plataforma quien determina un aspecto fundamental de las aplicaciones como lo es la arquitectura. Las aplicaciones desarrolladas sobre una Plataforma de Cliente Rico son escritas en forma de Módulos, lo cual conlleva un sin número de ventajas, entre las cuales podemos mencionar que cada modulo resuelve un problema en particular con o sin ayuda de otros, y el mismo puede ser utilizado por otros módulos para llevar a cabo sus tareas, contribuyendo a la facilidad de integración, un alto grado de cohesión y coherencia, y un muy reducido (o tal vez nulo) nivel de acoplamiento entre los diferentes componentes de nuestra aplicación.
Debido a todo esto, desarrollar sobre una Plataforma de Cliente Rico incrementa la productividad del desarrollador, liberándolo de preocuparse con tareas que tienen poca incidencia sobre la resolución de los requerimientos del dominio del problema y ayudándolo a enfocar sus energías en realizar tareas relacionadas con la lógica del negocio de la aplicación.
VENTAJAS DE UTILIZAR UNA PLATAFORMA DE CLIENTE RICO
Además del enfoque modular provisto por la Plataforma de Cliente Rico, existen otras características ventajosas que motivan su uso. Estas se enumeran a continuación:
- Optimización del tiempo de desarrollo.
- Interfaz de usuario consistente (Usabilidad).
- Facilidad de actualización de la aplicación incluso en tiempo de ejecución.
- Independencia de la plataforma.
- Reusabilidad y fiabilidad.
Habiendo abordado los temas anteriores, enfoquémonos, ahora sí, en lo que es la Plataforma Netbeans, sus características y lo que ella puede hacer por nosotros.
La Plataforma Netbeans es una base para desarrollar aplicaciones de escritorio complejas con un enfoque modular y pensando en características como la extensibilidad y la escalabilidad. El Entorno Desarrollo Integrado de Netbeans (Netbeans IDE) es una muestra del tipo de aplicaciones que se pueden desarrollar utilizando la Plataforma, ya que el mismo está construido sobre ella.
Aparte de las ventajas comunes a toda Plataforma de Cliente Rico, la Plataforma Netbeans ofrece numerosos frameworks y muchas características que pueden ser de gran utilidad a la hora de desarrollar nuestras aplicaciones, entre las cuales podemos resaltar:
- Framework para la creación de interfaces de usuario.
- El editor de datos de Netbeans IDE.
- Interfaz de usuario para la personalización de la aplicación.
- Framework para la creación de asistentes (Wizards).
- Sistema de datos que permite obtener información de diferentes orígenes de datos (FTP, CVS, XML o de una Base de Datos).
- Internacionalización.
- Ayudas del sistema.
- Ayudas contextuales del sistema.
Además de estas existen otras inherentes al uso de la Plataforma, como son: un mejor aprovechamiento del tiempo de desarrollo, una mejor organización de la aplicación basada en estándares y patrones estructurales y de diseño, una arquitectura consistente y robusta, y un mejor rendimiento en cuanto a tiempo de ejecución y optimización de recursos.
Nota: Algunas de estas características serán ampliadas en próximas entregas sobre este tema. Algunos ejemplos de software desarrollado sobre la Plataforma pueden ser encontrados en http://platform.netbeans.org/screenshots.html.
Para finalizar esta entrega, podemos decir que la Plataforma puede ser utilizada con dos propósitos en mente: el primero es extender el Netbeans IDE mediante la creación de nuevos módulos y plugins que se integran con gran facilidad y rapidez, algunos incluso en tiempo de ejecución; y el segundo es el de desarrollar nuestras propias aplicaciones standalone sobre la base que esta proporciona y con todas las ventajas y características que hemos analizado.
Frase del Mes
Frases Favoritas
Blogroll
Categorías
Archivos
- enero 2012 (1)
- septiembre 2010 (1)
- junio 2010 (1)
- mayo 2010 (1)
- febrero 2010 (1)
