NETBEANS
“Netbeans es un IDE (Integrated Development Environment) o entorno de desarrollo
integrado, que es gratuito y de código abierto. Si quieres saber qué es Netbeans,
en primera instancia, se debe destacar que sirve para el desarrollo de aplicaciones
web, corporativas, de escritorio y móviles que utilizan plataformas como Java y
HTML5, entre otras.” (Fantino, 2021)
Pero para saber en concreto qué es Netbeans, debemos aclarar cómo se define un
IDE como Netbeans. Es sencillo. Un IDE es una aplicación que tiene como función
principal la optimización del desarrollo de software por parte de los programadores.
Se trata de un editor de código fuente, junto con recursos de construcción
automáticos y un depurador. Igualmente, brinda la función de autocompletado
inteligente de código o IntelliSense. Y en el caso de la plataforma de Netbeans IDE,
ofrece un compilador y un intérprete.
“Es un entorno de desarrollo integrado que como su mismo nombre lo dice es un
entorno de programación que ha sido empaquetado como un programa de
aplicación esto quiere decir que consta de un editor de código, de un compilador,
de un depurador y de un constructor de interfaz gráfica.” (DiazG, 2019)
Los IDE pueden funcionar con distintos lenguajes de programación algunos de ellos
serían C++, PHP, Python, Java, C#, Delphi, Visual Basic, etc. Un IDE debe de tener
las siguientes características:Multiplataforma (Esto quiere decir que debe de ser
funcional completamente en cualquier sistema operativo), soporte de diversos
lenguajes de programación, integración con sistemas de control de versiones,
reconocimiento de sintaxis, extensiones y componentes para el IDE, depurador,
múltiples idiomas y manual de usuarios y ayuda.
Un IDE debe de tener los siguientes componentes: Editor de texto, compilador,
intérprete, herramientas de automatización, depurador, ofrecer un sistema de
control de versiones y factibilidad para ayudar en la construcción de interfaces
gráficas de usuarios. En este caso en el IDE en el que vamos a trabajar será en
NetBeans ya que es un software libre en el cual es muy fácil aprender a programar,
el manejo de la memoria se hace automáticamente, la plataforma es fácil de instalar
y lo mejor de todo es que es muy cómodo para los programadores.
NetBeans es un entorno de desarrollo integrado libre, hecho principalmente para el
lenguaje de programación Java. Existe además un número importante de módulos
para extenderlo. NetBeans es un producto libre y gratuito sin restricciones de uso.
NetBeans es un proyecto de código abierto de gran éxito con una gran base de
usuarios, una comunidad en constante crecimiento, y con cerca de 100 socios en
todo el mundo. MicroSystems fundó el proyecto de código abierto NetBeans en junio
de 2000 y continúa siendo el patrocinador principal de los proyectos (Actualmente
Microsystems es administrado por Oracle Corporation).
NetBeans IDE es una herramienta muy útil para desarrollarar aplicaciones para
internet, dispositivos móviles, soluciones de negocios, animaciones, etc. usando
lenguajes de programación como Java, PHP, C++, JavaScript, Groovy y Ruby.
NetBeans permite desarrollar aplicaciones para sistemas operativos como
Windows, Mac, Linux y Solaris. NetBeans es un proyecto público que consiste en
un IDE (Integrated Development Enviroment) de código abierto y una plataforma de
aplicación. El código abierto IDE es gratuito. Cualquier persona interesada puede
obtener sin costo todas las herramientas necesarias para desarrollo profesional de
software. La versión más reciente de NetBeans IDE 6.9 ha introducido la plataforma
JAvaFX es una ramificación de aplicaciones JAva para crear programas y
soluciones de escritorio o multimedia. La intención principal de JavaFX es crear
interfases con cualidades de animación gráfica. Para más información sobre Java
FX recomiendo visitar [Link].
Crear aplicaciones con NetBeans IDE parece ser mucho más fácil de lo que te
podrías imaginar. Por supuesto que el conocimiento de los lenguajes de
programación, como del uso de las opciones de Netbeans IDE son de gran ayuda
para crear, depurar, probar y ejecutar diversas aplicaciones de manera rápida y
efectiva. Afortunadamente, gracias a una gran cantidad de programadores
aficionados y profesionales es muy fácil hallar tutoriales para aprender a programar.
Historia de Netbeans
NetBeans comenzó como un proyecto estudiantil en Republica Checa
(originalmente llamado Xelfi), en 1996 bajo la tutoría de la Facultad de Matemáticas
y Física en la Universidad de Charles en Praga. La meta era escribir un entorno
integrado de desarrollo (IDE) para Java parecida a la de Delphi. Xelfi fue el primer
entorno integrado de desarrollo escrito en Java, con su primer pre-release en 1997.
Xelfi fue un proyecto divertido para trabajar, ya que las IDEs escritas en Java eran
un territorio desconocido en esa época. El proyecto atrajo suficiente interés, por lo
que los estudiantes, después de graduarse, decidieron que lo podían convertir en
un proyecto comercial. Prestando espacios web de amigos y familiares, formaron
una compañía alrededor de esto. Casi todos ellos siguen trabajando en NetBeans.
“Tiempo después, ellos fueron contactados por Roman Stanek, un empresario que
ya había estado relacionado con varias iniciativas en la Republica Checa. Él estaba
buscando una buena idea en que invertir, y encontró en Xelfi una buena
oportunidad. Ellos se reunieron, y el negocio surgió.” (V.T.M., s.f.)
El plan original era desarrollar unos componentes JavaBeans para redes. Jarda
Tulach, quien diseñó la arquitectura básica de la IDE, surgió con la idea de llamarlo
NetBeans, con el fin de describir lo que ellos harían. Cuando las especificaciones
de los Enterprise JavaBeans salieron, ellos decidieron trabajar con este estándar,
ya que no tenía sentida competir con él, sin embargo, el nombre de NetBeans se
quedó. En la primavera de 1999, Netbeans DeveloperX2 fue lanzado, soportando
Swing. Las mejoras de rendimiento que llegaron con el JDK 1.3, lanzado en otoño
de 1999, hicieron a NetBeans una alternativa realmente viable para el desarrollo de
herramientas. En el verano de 1999, el equipo trabajó duro para rediseñar a
DeveloperX2 en un NetBeans más modular, lo que lo convirtió en la base de
NetBeans hoy en día.
Algo más paso en el verano de 1999. Sun Microsystems quería una mejor
herramienta de desarrollo de Java, y comenzó a estar interesado en NetBeans. En
otoño de 1999, con la nueva generación de NetBeans en Beta, el acuerdo fue
realizado.
Ventajas
• Lenguaje Multi-plataforma: El código que es escrito en java es leído por un
intérprete, por lo que su programa andará en cualquier plataforma.
• Manejo automático de la memoria. (para los que vienen de C/C++). El
manejo de la memoria se hace automáticamente y utilizando el garbage
collector.
• ¡Es Gratis!
• Desarrolla aplicaciones web dinámicas.
• Desarrollar aplicaciones de servidor para foros en línea, almacenes,
encuestas, procesamiento de formularios HTML y mucho más.
Desventajas
• Por su lentitud a la hora de ejecutar las aplicaciones (aunque ha mejorado
con el tiempo)
• Requiere un intérprete.
• Algunas implementaciones y librerías pueden tener código rebuscado.
• Una mala implementación de un programa en java, puede resultar en algo
muy lento.
• Algunas herramientas tienen un costo adicional (blogspot, s.f.)
Características
Soporte JavaScript
1. Sintaxis Resaltada
2. Completación de Código y Análisis de Tipeo
3. Soluciones Rápidas (Quick Fixes) y Verificación de Sintaxis
4. Refactorización
Mejoras en el Desempeño
1. Inicio hasta 40% más rápido
2. Promociones más inteligentes, así que la completación de código es más
rápida
3. Menor consumo de memoria
Soporte de Estructuras Spring
1. Agregado de la librería Spring Framework 2.5
2. Asistentes para configuración de archivos XML y controladores Spring Web
MVC
3. Completación de Código de nombres bean y clases y propiedades Java
Soporte de entorno Spring Web MVC en proyectos web.
1. Nuevo Soporte MySQL en Exploración de Bases de Datos
2. Registro de servidores MySQL
3. Ver, crear y borrar bases de datos
4. Fácil lanzamiento de la herramienta de administración para MySQL
Soporte Java Beans
1. Modelos Bean en el Navegador
2. Generador de Propiedades Bean
3. Editor BeanInfo
4. Generador JSF CRUD
5. Generador de aplicaciones JavaServer Faces CRUD a partir de clases de
entidades.
Soporta todo tipo de relaciones de entidades (uno-a-uno, uno-a-varios,
varios-a-uno y varios-a-varios).
1. Soporta todo tipo de claves principales (columna simple, compuesta y
generada).
Soporte Ruby/JRuby
1. Mejoras en el editor, incluyendo nuevas sugerencias y soluciones
2. Soporte de depuración rápida en JRuby
3. Administrador de Plataforma
4. Mejoras en la integración de servidores y bases de datos en proyectos Rails
Completación de Código Javadoc
1. Soporte de etiquetas (tags) estándares: @param, etc.
2. Completación de Código para parámetros, excepciones, etc.
Soporte para los Web APIs Más Usados
1. Fácil creación de aplicaciones remezcladas (mashup)
2. Operaciones de Arrastrar y soltar dentro del entorno POJO, Servlet, JSP y
servicios web RESTful para que NetBeans IDE genera todo el código para
acceder a los servicios
3. Soporte de web APIs tales como Google, Facebook, Yahoo y YouTube
Soporte RESTful Web Service
1. Compilación de servicios JSR 311-compliant RESTful Web utilizando
Jersey
2. Pruebe sus aplicaciones con el nuevo REST Test Client
3. Use asistentes para crear servicios REST a partir de clases de entidades
JPA y para generar aplicaciones de resumen (stubs) clientes JavaScript a
partir de WADL
Compartir Proyectos (Librerías Compartidas AKA)
1. Especificación de dependencias de librerías usando direcciones de librerías
relativas (por defecto Java, Web y todos los proyectos tipo Java EE)
2. Compartir proyectos mas fácilmente con otros miembros de su equipo,
cuando por ejemplo use un sistema de control de versión
3. Habilite compilaciones no finalizadas en sus proyectos
4. Librerías Compartidas, Haga click para ampliar
5. Nuevas Extensiones (Plugins)
6. Control de versión ClearCase
7. Soporte AXIS
8. Soporte SOAPUI
9. Soporte Hibernate Framework
Java Mobility (Aplicaciones para Móviles)
1. Emulador Mpowerplayer MIDP para aplicaciones MIDP en Mac OS X
(disponible en el centro de extensiones)
2. Estructurador SVG (SVG Composer) para Componentes SVG de Uso
Frecuente (SVG Custom Components)
3. Documentación y estabilidad mejoradas
4. Vista Previa de las Características Post-6.1
Soporte de Edición para PHP:
1. Completación de código, sintaxis resaltada, navegación, depuración y
mucho más
2. Depurador JavaScript
3. Extensión JavaFX
La Ventana Estándar.
Cada vez que inicie Netbeans, posiblemente vea algo así:
“Projects: permite tener a mano todos los proyectos en que uno está trabajando
actualmente o en los que ha trabajado en el último tiempo. A través de la expansión
o colapso de los nodos en el árbol uno puede ir navegando a través de los elementos
que conforman el proyecto. Sugiero hacer clic derecho sobre el proyecto y revisar
la ventana de propiedades.” (Girardi, 2009)
Files: permite navegar a través de las carpetas del proyecto. A veces algunos
elementos pueden no aparecer en el árbol del proyecto en “Proyects”, pero si en
“Files”. Por ejemplo, los archivos de salida al ejecutar o debugear un proyecto.
Servicies: maneja conexiones a algunos servicios. Los más comunes son los de
Bases de datos. Son una ayuda sumamente útil si uno realiza proyectos que
interactúan con servidores de base de datos. Navegador: despliega los miembros
de una clase. Se sugiere revisar su funcionamiento ya que puede ser de suma
utilidad.
Ejemplo del Desarrollo de un Proyecto.
Creación.
Puede presionar el botón o el menú File -> New Proyect.
Elija el tipo de proyecto. Para el ejemplo elegiremos un “Java Desktop Application”
(aplicación con GUI), que es más interesante a modo pedagógico que una por
consola.
Hacemos click en Next.
Elegimos el nombre del proyecto y la carpeta donde guardarlo (intente ser
ordenado). Si queremos, podemos cambiar el nombre de la clase main que se
sugiere o elegir si setear como proyecto principal o no (main proyect, es el que se
ejecutará o debugeará por defecto si uno presiona algunos botones
correspondientes). Sobre el “shell”, para este ejemplo seleccionaremos una
aplicación básica.
Presionamos el botón “Finish”.
Veremos algo así:
Editando el Form (GUI)
Agreguemos un área de texto y un botón.
Ahora creemos una acción a ejecutarse cuando hagamos clic en el botón “Saludar”.
Una forma de hacer esto es hacer click en la tarjeta “Events” que aparece en la
ventana “Properties” (En el dibujo está abajo a la izquierda).
Esta tarjeta muestra una serie de eventos que pueden ser disparados por el botón.
En este caso, el que nos interesa es “actionPerformed”, el cual está al inicio de la
lista. Podríamos setear el método invocado cuando ocurra un evento
actionPerformed disparado por el botón, pero es más fácil si simplemente hacemos
doble-click sobre el campo de texto que aparece a la derecha de “actionPerformed”
y que dice “<none>”. Esto nos creará el método automáticamente e incluso, nos
llevará a su definición una vez que el campo de texto pierda el foco ¡De seguro ya
se están dando cuenta de las bondades de IDEs como esta!
En la última imagen podemos ver la declaración del método y también están
resaltados dos botones en la esquina superior izquierda: “Source” y “Design”. Estos
nos permiten ver el código de la clase o la representación gráfica de su Form (como
lo veíamos antes). “Source” nos muestra el código y “Design” nos muestra la
representación gráfica. Claramente sólo las clases que tienen una representación
gráfica tienen estos botones.
Agregando Código.
Vamos a la definición del método que acabamos de crear (¿No sabes cómo ir a la
definición? Recuerda el “Navigator” o también puedes ir al evento “actionPerformed”
del botón en “Properties”).
Agrega el código que aparece en la imagen. ¡Como podrás suponer, este código
hace que cada vez que se haga click en el botón se agregue la línea “Hello World!”
en el área de texto de nuestro Form.
Corriendo el Programa
En este ejemplo, para correr el programa, basta con hacer clic en el botón:
Esto hará que el programa se compile (no compilará si no se han hecho cambios
desde la última compilación) y lo ejecutará.
Deberíamos ver algo así al hacer click en el botón “Saludar”.
Debugeando.
Para debugear haremos algo muy similar a lo hecho al ejecutar, pero si queremos
ver resultados debemos poner un punto de quiebre (breakpoint) en alguna parte del
código que vaya a ser “alcanzada”.
Como ejemplo, ponga un breakpoint al inicio del código del método llamado al
dispararse el evento actionPerformed del botón. Esto se hace haciendo clic una vez
sobre el número de la línea donde desea poner el breakpoint. Si no ve los números,
es porque tiene configurado para que estos estén ocultos. Puede buscar entre las
opciones de configuración la forma de mostrarlos. En todo caso, de no estar los
números de las líneas, basta que presione justo encima del borde izquierdo al lado
de la línea. Debería aparecer la siguiente imagen.
La imagen aparece en casos de un breakpoint sobre la línea de declaración de
un método y se “alcanzan” cuando se entra en el método. Otros breakpoints tienen
la imagen y la línea se cubre con rojo. Estos breakpoints se “alcanzan” cuando
se está a punto de ejecutar la línea de código.
Ahora presione el botón
Se ejecutará la aplicación al igual que antes, pero esta vez, cuando haga click
sobre el boton “Saludar” la ejecución se detendrá sobre el breakpoint.
Puede ver que la línea que se ha “alcanzado” (aquella que se ejecutará a
continuación) está mercada en verde.
Netbeans le permite hacer una infinidad de cosas en el modo de debugeo. Solo por
citar algunas: ejecutar paso a paso, saltar hasta el curso, poner un “watch” sobre
una variable, ver la fila de eventos (Event Queue), ver las hebras, ver variables
locales, etc.
Una explicación de las ventanas que posiblemente esté viendo:
Lo invito a navegar por las distintas ventanas del modo de debugeo y “jugar” un
poco.