El mejor IDE para PHP

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

También te puede interesar

23 Comments

  1. Bersek
    mar 09, 2009 @ 10:29:23

    Gracias por el articulo, voy a probar ese IDE. Actualmente uso Notepad++ y me gusta mucho.

  2. DavilaCS
    mar 09, 2009 @ 11:20:56

    Genial ;) completo y claro .

  3. k40s
    mar 10, 2009 @ 02:05:14

    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

  4. Victor
    mar 10, 2009 @ 06:58:24

    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,

  5. Incinerator
    mar 10, 2009 @ 07:29:26

    Y yo que aun sigo con mi querido MultiEdit (del año 1999). Un día de estos tengo que probar alguno pero es que mi pereza puede conmigo.

  6. polyphony
    mar 23, 2009 @ 03:19:12

    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.

  7. Nacho
    abr 03, 2009 @ 05:00:48

    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

  8. Obelich
    abr 12, 2009 @ 16:51:48

    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 ^_^

  9. El mejor IDE para PHP - Craftyman Blog « DevEzine
    abr 20, 2009 @ 00:53:15

    [...] See the rest here: El mejor IDE para PHP – Craftyman Blog [...]

  10. Mellileo
    oct 07, 2009 @ 08:45:38

    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.

  11. 10 consejos para el desarrollo de aplicaciones PHP « Conocimiento Libre (o lo que está detrás del Software Libre)
    oct 22, 2009 @ 20:14:15

    [...] 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/ [...]

  12. Tony
    nov 29, 2009 @ 16:10:02

    Está muy bien este POST. Practicamente te dice que el mejor IDE a usar es Eclipse, :-P. Muy útil

  13. 10 Mejores Practicas para PHP
    oct 05, 2010 @ 19:04:47

    [...] 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 [...]

  14. Introducción y desarrollo de Aplicaciones Android
    ene 09, 2011 @ 00:06:14

    [...] desarrollar con Android es necesario tener un IDE de trabajo, el SDK de Android y un plugin que active la creación proyectos Android en el IDE. Podemos [...]

  15. Introduccion al desarrollo de aplicaciones Android « FreeNetikos
    feb 03, 2011 @ 15:13:12

    [...] desarrollar con Android es necesario tener un IDE de trabajo, el SDK de Android y un plugin que active la creación proyectos Android en el IDE. Podemos [...]

  16. Introduccion al desarrollo de aplicaciones Android I | freenetikos - Otro sitio realizado con WordPress
    feb 14, 2011 @ 15:08:13

    [...] desarrollar con Android es necesario tener un IDE de trabajo, el SDK de Android y un plugin que active la creación proyectos Android en el IDE. Podemos [...]

  17. herson
    mar 10, 2011 @ 10:39:25

    Yo simplemente lo hago con gEdit y aun sigo vivo :P
    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)

  18. IDEs PARA PHP | Code Drinks
    abr 30, 2011 @ 16:37:04

    [...] el sitio Craftyman se encuentra un excelente articulo de como eligir un buen IDE de [...]

  19. IDEs PARA PHP | Codedrinks
    jul 17, 2011 @ 19:19:24

    [...] el sitio Craftyman se encuentra un excelente articulo sobre las caracteristicas que debe tener un buen IDE de [...]

  20. ADAD
    jul 27, 2011 @ 15:41:32

    viva netbeans, realmente lo mejor…

  21. Personaliza Google+ como quieras (Chrome) | Tecnologia, Desarrollo Web, Posicionamiento Web SEO
    ago 17, 2011 @ 09:44:41

    [...] El mejor IDE para PHP [...]

  22. Android supera a Blackberry como plataforma más popular en Smartphones | Tecnologia, Desarrollo Web, Posicionamiento Web SEO
    ago 17, 2011 @ 09:46:53

    [...] El mejor IDE para PHP [...]

  23. desarrollo aplicaciones android »
    oct 15, 2011 @ 16:00:44

    [...] desarrollar con Android es necesario tener un IDE de trabajo , el SDK de Android y un plugin que active la creación proyectos Android en el IDE. Podemos [...]