El mejor IDE para PHP

23
31

Este articulo lo encontre en SmashingMagazine – The Big PHP IDE Test, me pareció muy interesante saber que IDE (Entorno de Desarrollo Integrado) de PHP es el mejor para trabajar.

Aquí la traducción a español como también algunos aportes que le di.

Porque debemos elegir un buen IDE para Trabajar?

Para ser mas productivo, cometer menos errores, y escribir un buen código, pero todo esto depende de mi ¿o no?.

Si, pero los IDE’s sirven para ayudar a lograr estos objetivos con mucha facilidad. Y la elección de un buen IDE es muy difícil, ya que todos dicen ser los mejores, ya sean open source o licenciados.

Yo creo que la única forma de saber que IDE es el mejor, es probarlo, desarrollar una aplicación real con cada IDE y decidir con que entorno de desarrollo me fue mas productivo y agradable el trabajo.

El proposito de este articulo es ofrecerle los resultados de la experiencia de haber probado los mas populares IDE’s para PHP, explorando sus funciones, y comparandolas en una tabla de resultados donde usted conocera lo que cada IDE podrá ofrecerle y que alguno hasta se adapte a sus necesidades.

Características de un buen IDE

1. El resaltado de sintaxis (Syntax highlighting)

Desarrollar en un simple notepad no es lo mismo que escribir tu código y que el IDE resalte las funciones, comentarios, variables, textos, entre otras cosas en tu aplicación
Esto hara que sea mas legible y reconozca mejor tu código

2. El completado de código (code intelligence)

Esto ayuda mucho ya que evita al desarrollador escribir tanto, incluso si soporta los parametros en los comentarios de tus clases, funciones, variables de PHP (phpDoc), pueden mostrarte la descripcion, tipo de datos que retorna, que tipo de parametros soporta (en caso sean funciones o metodos), y su nivel de visibilidad (public, protected, private).

3. Busqueda de código

En PHP se acostumbra mucho hacer “includes”, ya sean archivos de configuración o funciones para reutilizarlas, y cuando vemos en nuestro código una llamada a una función o metodo ($this->getElementos), queremos ir rapidamente a la definición.
La mayoría de IDE’s buenos soportan el “GoTo Definition”, que busca de donde proviene la función, variable, constante, o clase, y con la ayuda de un botón del teclado( generalmente “control”) se muestra como un link permitiendo ir a la definición de dicho código
Esto nos ahorra un tiempo valioso cuando queremos encontrar una función para corregirla o ver el proceso que realiza.

4. El resaltado de errores y advertencias.

Si cometemos un error de sintaxis como por ejemplo olvidarnos de terminar la línea con punto y coma “;”, algunos IDE’s remarcan la línea de color rojo por lo general, a veces habrá un cuadro de dialogo donde te dira el posible error que tubiste, esta función nos evitaría ciertas molestias de prueba y fallo.

5. Refactorización y generación de código

Refactorización significa optimizar el código, reescribirlo de tal forma que quede mas solido, formateado, y con una nomenclatura estandar.
Actualmente esta función en los IDE’s de PHP es muy simple a comparación de Java y C, pero sigue siendo muy útil.

Las funciones de refactorización básicamente incluyen:

  • Mover: actualiza todos los archivos dependientes con la nueva ruta.
  • renombrado: cambiar el nombre de inclusión en todos los archivos necesarios.
  • eliminación: realiza la inspección de que no afecte a ningún archivo la eliminación de este.
  • Formateo: realiza la corrección de tabulado de código y corrección de apertura y cierre de llaves “{}” según algún estandar seleccionado en el IDE (PHP4, PHP5).

Sobre la generación de código, algunos IDE’s tienen la opción de crear getters y setters para las variables de una clase, y para que tipo de PHP es, por ejemplo: un metodo para PHP4 seria “function get_usuarios()” en cambio con el estandar para PHP5 seria de esta forma “public function getUsuarios()”.
Otra opción serian la generación de código para la conexion a la base de datos, pero esta función para mi opinión, no debería recomendarse, ya que es mejor realizar una clase de abstracción a la base de datos como escribí en mi anterior POST (MVC en PHP).

6. Depuración de código (Debugging)

A veces depuramos nuestro código con el famoso “echo” o si es array “print_r”, pintando las variables en los posibles lugares que creemos que hubo error, esta practica en aplicaciones complejas seria muy engorrosa y podríamos dejar uno que otro “echo” por hay, sin darnos cuenta.
Para esta solución es que se busca un IDE con función de depurar nuestro código PHP con breakpoints (lugares donde hara pausa la depuración), seteo de contenido para las variables, visión general de envio de datos GET, POST, SESSION, etc.

7. Cliente de sistema de control de versiones

Al realizar nuestros proyectos sean grandes, medianos, o chicos, es recomendable usar un sistema de control de versiones sea (CVS, SVN, git, etc).
Un IDE que tenga incorporado un cliente de sistema de control de versiones es un ahorro de tiempo ya que no estariamos abriendo dos programas a la vez y cambiandolo al hacer un checkout, update, commit u otro proceso de estos sistemas, y por consecuencia también ahorrariamos memoria en la PC.
También los sistemas de control de versiones cuentan con una ventana de comparación de versiones remarcando que cosas se cambiaron, borraron, agregaron.

8. cliente FTP / SFTP

Tener un programa para subir archivos por FTP es necesario siempre, y tenerlo integrado en el IDE es mucho mejor todavía, ya que tendríamos el control de descarga y subida en el mismo entorno.

Como elijo uno bueno?

Cada IDE tiene muchas características, algunas muy útiles como también a veces no necesarias, aquí algunas pautas para elegir al mejor IDE.
No necesariamente el software libre trae menos cosas, pero si puede comenzar con ellos para acostumbrarse al manejo de un IDE.
Asegurarse que las características que tiene el IDE son las que usted necesita y comprobar que funcionan correctamente.
Una vez elegido el IDE, tendrá que practicar con el durante algunos dias antes de realizar un proyecto.

IDE’s basados en Eclipse

PDT (PHP Developer Toolkit), Zend Studio 6, Aptana PHP y Aptana Studio Pro se basan en la plataforma Eclipse.
Eclipse se caracteriza por sus miles de plugins para nuevas funcionalidades. Si no encuentra alguna característica en el IDE por defecto, lo mas probable es que se encuentre como un plugin.

NetBeans

Es el nuevo y novedoso IDE ahora con soporte para PHP (principalmente era para trabajar con Java). Tiene la mayoría de las características de otros IDE’s y ha logrado evolucionar de manera rapida. En la pagina oficial de este NetBeans se encuentran las características mas detalladamente.

Conclusiones

Si aun no utiliza un IDE puede que este perdiendo tiempo valioso, pruebelo y en unos dias vera la diferencia.
PDT y NetBeans son muy buenos. Si necesita una gran cantidad de funcionalidades, Eclipse seria su mejor opción. Si la herramienta de edición de código es mas importante le recomiendo Netbeans.

Comercial VS Software libre

A veces los Software comerciales no tienen mucho mas ventajas que los Software libres, pero en este caso comparando Zend Studio con PDT 2.0 es el rendimiento, la detección de errores, el autocompletado quien diferencia a los dos.

Nota: Esta es solo lista con características que ustedes tienen que tomar en cuenta a la hora de evaluar que IDE sera el indicado. Prueben todos los IDE’s y verán que todos tienen sus particularidades.

Veamos la tabla de comparación con los IDE’s testeados

Tabla en Google Docs (versión no editable)

Recursos

23 COMMENTS

  1. Yo uso PHPDesigner, que la verdad que esta muy bien (en mi modesta opinion ya que lo he usado aun poco). La unica pega que no es gratuito

  2. En mi opinión, ocupe Eclipse PDT mucho tiempo, y hace un mes atras mas o menos, empezé a probar Aptana Studio, mas que nada por que esta hecho para quienes desarrollamos en ambientes web.
    Saludos,

  3. Después de probar unos cuantos me he quedado con Netbeans. Tiene un editor muy potente e incluye todas las funcionalidades necesarias como la integración con SVN. Además lo actualizan constantemente, hace poco le añadieron soporte para PHPUnit.

  4. Muy buenas,
    Yo le daría una opcion a Aptana. Aunque es un plugin de Eclipse, también tiene un standalone.
    Símplemente hay que instalar el plugin php del aptana y lo tienes funcionando.
    Yo es el que uso normalmente.
    Saludos

  5. Hola pues yo aconsejo el aptana studio tanto para Gnu/Linux como para Windoes yo lo utilizo en las dos plataformas y trabajs muy comodo no te consume muchos recursos, autocompletado eficiente, mucho mejor que el del aptana por sierto, tambien te dice por ejemplo en CSS si te funcionara con Iexploter o firefox, en php el autoacompletado esta de perlas tambien y con el uso de subvercion funciona perfecto, lo unico que creo que le falta mejorar es lo de los CSS el de Netbeans esta mucho mas practico pero me sigo quedando con Aptana Studio heheh sale ^_^

  6. Hola.
    Estoy por iniciar un proyecto perqueño y quería saber que IDE existen y cuál se adaptaría mejor a mis requerimientos. Este artículo me ha dado luces sobre lo que debos hacer…. Me ha interesado el Eclipse con su plugin PDT y el Aptana, pues he leido mucho al respecto.
    Paso a seguir: Probar los dos IDE desarrollando el mismo proyecto de manera paralela. Sé que no es la mejor práctica, pero no tengo limitaciones de tiempo.
    Saludos.

  7. […] 2.-Utiliza algun IDE para programar IDE (Integrated Development Environments) es un programa para mejorar la calidad de nuestro desarrollo, permitiéndonos tener facilidades para alguna función común o procesos que se repiten debes en cuando. Si utilizas uno y quieres saber que tan efectivo es, puede ver el post de comparativa de IDES para PHP. –>http://tednologia.com/el-mejor-ide-para-php/ […]

  8. Yo simplemente lo hago con gEdit y aun sigo vivo 😛
    ya que los IDE me parecen demasiado pesados y con un lenguaje facil como php no son necesarios (aunque con lenguajes como java sirven bastante)

Comments are closed.