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:

  1. Cliente Rico
  2. Framework
  3. Plataforma de Cliente Rico
  4. Ventajas de utilizar una Plataforma de Cliente Rico
  5. La Plataforma Netbeans

CLIENTE RICO

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.

Regresar

FRAMEWORK

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.

Regresar

PLATAFORMA DE CLIENTE RICO

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.

Regresar

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:

  1. Optimización del tiempo de desarrollo.
  2. Interfaz de usuario consistente (Usabilidad).
  3. Facilidad de actualización de la aplicación incluso en tiempo de ejecución.
  4. Independencia de la plataforma.
  5. Reusabilidad y fiabilidad.

Regresar

LA PLATAFORMA NETBEANS

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:

  1. Framework para la creación de interfaces de usuario.
  2. El editor de datos de Netbeans IDE.
  3. Interfaz de usuario para la personalización de la aplicación.
  4. Framework para la creación de asistentes (Wizards).
  5. Sistema de datos que permite obtener información de diferentes orígenes de datos (FTP, CVS, XML o de una Base de Datos).
  6. Internacionalización.
  7. Ayudas del sistema.
  8. 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.

Regresar

¿Te pareció interesante? Entonces recomienda esta entrega a tus amigos y colegas.

Comentarios del Lector

  1. Shadonwk |

    saludos que buen materia, gracias por compartir el conocimiento, al igual que tú ami tambien me gusta compartir mis conocimientos, y dejo una liga para que complemente tu articulo:

    http://robertoleon.com.mx/java-tutoriales-netbeans-mis-primeros-pasos/

  2. Omar |

    Sin duda el aporte de la plataforma netbeans nos ayuda a realizar aplicaciones de escritorio rápidamente. Con la facilidad de integrar diversos frameworks para el desarrollo de nuestras aplicaciones (Swing, SwingX, AWT, OpenGL, entre otras), sin embargo, considero que este IDE requiere de conocimientos previos de programación. Es decir, un programador novel al realizar el drag & drop de un componente Swing (JButton) al área de diseño y pasa al de vista código, se da cuenta de que el IDE le creó una gran cantidad de líneas de código, por lo tanto, esto lo puede confundir.

    Sobre esta situación considero que el IDE en conjunto con su plataforma ayuda al rendimiento en costo y tiempo de las aplicaciones de escritorio.

    Gracias por el aporte que brindas en tu blog, espero sigas publicando temas relacionados con la plataforma de Netbeans…

    Saludos Cordiales.

  3. Hernán |

    Hola Alejandro. Muy buen post. Clarísimo y bien redactado sobre lo que es importante en las plataformas de cliente rico, y más precisamente Netbeans. Muchas gracias

  4. Ronie |

    me ha sido bastante de ayuda…para que empiece… pero tengo una duda al ejecutar un module platform (run ) tiene una interfaz por defecto que te lo carga con toolbar y menu bar yo quisiera saber si es posible que no se cargue esta opciones de ambos o que yo las pueda ddeshabilitar para que yo pueda personalizar estos campos…. tal vez podrias orientarme acerca de esto gracias…

Escribe un comentario