Tuesday, August 24, 2010

Razones por las cuales usar Netbeans para proyectos PHP

Generalmente los desarrolladores hand-code prefieren no utilizar algún IDE por temas filosóficos, por decirlo así. Y se utilizan varias herramientas como Notepad++, Geany, o simplemente El bloc de notas de Windows o gedit para Linux.

Pero al trabajar en proyectos de mayor embergadura, en los cuales el trabajo se divide en uno o varios equipos, se debe compatibilizar el estilo propio de programación con los demás, y esto puede ocasionar pérdida de tiempo innecesaria.

Incluso si se trabaja remotamente esta situación puede convertirse en un grave problema. Y si a esto agregamos las librerías utilizadas, nomenclaturas, convenciones; se puede tornar difícil de digerir por cada desarrollador.

También tenemos el caso del ingreso de un nuevo desarrollador y si el código no está bien documentado y/o tabulado, puede hacer extensa la curva de aprendizaje.
Sabemos que un buen código debe estar documentado, es más, muy documentado. Siguiendo una lógica con respecto a nomenclaturas, convenciones de nombre, tabulaciones, alcance de variables/funciones/métodos.
Esto podría tomarse como trivial, pero cuando un proyecto crece y luego requiere mantención, si el código es poco legible o no tiene documentación, es más costoso el entendimiento de éste que la modificación.

Es aquí donde entra Netbeans, este IDE posee características que son muy valiosas para los desarrolladores, que se convierten en razones del porqué  lo recomiendo.
A continuación se detallan algunas:

Auto-completado y documentación de funciones PHP:
Rápido acceso a la documentación de PHP, y si se necesita más información se provee el link directo a la función. 



Generador de PHPDoc:

La documentación es un tema muy importante, pero difícil de realizar. Con Netbeans esto se hace fácil: se debe posicionar el cursor en la línea anterior a la declaración de la función, luego escribir /** y presionar [ENTER].



Auto-completado de código propio:

Esto es una consecuencia del punto anterior, al documentar código con el formato esperado, estos serán mostrados como se observa a continuación.



Soporte para CVS, Mercurial, Subversion: (Ejemplo SVN)

Notar la diferencia de colores:
  • Verde: Código agregado
  • Azul: Código modificado
  • Rojo: Código eliminado
Además si se hace click en el cualquiera de estos colores mostrará el código reemplazado. Una gran extensión al [CTRL]+Z.


Atajos de teclado muy útiles:
  • Ordenar y tabular código: [ALT]+[SHIFT]+F
  • Seleccionar el archivo editando en el proyecto: [ALT]+[SHIFT]+1
  • Alternar maximizar ventana: [SHIFT]+[ESC]
  • Ir a siguinte ocurrencia de variable/función/método marcado (el cursor debe estar dentro del nombre)
  • Ir a declaración de variable/funcion/clase: [CTRL]+B ó [CTRL]+(click)
  • Lista de archivos abiertos: [CTRL]+[TAB]
  • Duplicar línea: [CTRL]+[SHIFT]+UP ó [CTRL]+[SHIFT]+DOWN
  • Mover línea: [ALT]+[SHIFT]+UP ó [ALT]+[SHIFT]+DOWN
  • Eliminar línea: [CTRL]+E
  • Comentar: [CTRL]+[SHIFT]+C
  • Renombrar variable/función/clase: [CTRL]+R
  • Ir a declaración: [CTRL]+O
  • Ir a archivo: [SHIFT]+[ALT]+O
Existen muchas más como integración con Xdebug, soporte para Symfony, Zend Framework, Smarty, historia local para archivos, entre otros.