Comparte en Facebook Twitter Google+

IDEs PHP

Para tener éxito al desarrollar usando el lenguaje PHP es necesario contar con un buen entorno. Una de las principales herramientas que debemos tener es un editor de texto o IDE adecuado, con el cual podamos escribir código más rápido y con menor esfuerzo. En este artículo conocerás algunas de las opciones disponibles para desarrollar con PHP para que puedas escoger la mejor para ti.

Lo primero que debes tomar en cuenta es que no existe el editor de texto ni IDE perfecto, sino que hay una gran variedad de alternativas: de código libre o con licencia comercial, con características especiales, etc. Por tanto, te enfrentas al problema de decidir qué usar y la respuesta dependerá de con cuál te sientas más a gusto; según tus preferencias y necesidades como desarrollador y del proyecto en sí.

Además es necesario saber diferenciar entre un editor de texto y un Entorno de Desarrollo Integrado (IDE, del inglés Integrated Development Environment).

Un editor de texto, como su nombre lo dice, es para crear y editar texto pero está especialmente diseñado para editar código fuente de un lenguaje de programación pues tiene características como resaltado de sintaxis, identación, entre otros.

En cambio, un IDE es un software que contiene un grupo de herramientas que soportan el desarrollo de código tales como editor de texto con soporte para auto-completado inteligente de código, compilador y/o intérprete, depurador, herramientas de construcción automática, integración con un sistema de control de versiones, entre muchas otras características.

La finalidad de un IDE es tener todas las herramientas necesarias para desarrollar en un lenguaje de programación instaladas por defecto o configuradas con pocos pasos. Por todo lo que, usualmente, es más “pesado” que un editor de texto pero nos da la gran ventaja de tener todo listo para empezar a trabajar en un proyecto.

Por su parte, los editores de texto nos dan la flexibilidad de poder configurar el entorno de desarrollo de la mejor manera para que se adapte a las necesidades. Actualmente, los editores de texto más populares cuentan con su propio catálogo de extensiones o plugins que permiten configurarlo con las herramientas necesarias para permitir el desarrollo de una manera más eficiente, a pesar de no tener todas las capacidades de un IDE.

Escoger un IDE o editor de texto puede resultar una tarea ardua cuando vemos las opciones disponibles y por otro lado, las características que se desean que tenga. Un IDE perfecto para un desarrollador puede no serlo para otro.

Por ello, conocer, comprender y priorizar aquellas características que son importantes es el siguiente punto a tomar en cuenta para elegir el mejor. A continuación puede ver algunas de las características que puede ofrecer un IDE:

  • Auto-completado de código (“code completion”, “code hinting”): son sugerencias de código relevantes para el contexto, información de parámetros, con las que puede completar el código que estás escribiendo de manera automática.
  • Resaltado de sintaxis: (syntax highlighting): el código es mostrado en diferente colores de acuerdo con la categoría de los términos, para así facilitar la lectura.
  • Refactorización (Refactoring): permite mejorar el diseño del código ya existente: mover, extraer, copiar, eliminar o renombrar parte del código. Como por ejemplo, extraer un fragmento de código y convertirlo en un nuevo método.
  • Integración con Git: es la visualización dentro del editor de texto de los cambios en el código, cuando esté está regido por un sistema de control de versiones como Git.
  • Linter: herramienta que permite analizar el código que escribimos para detectar errores de sintaxis y señalar las posibles fallas, esto sin necesidad que se ejecute el código. Puede ejecutarse mientras se escribe (on the fly), cuando guardamos el archivo o antes de subirlo a un repositorio.
  • Code sniffer: herramienta parecida a Linter con la diferencia que ésta evalúa la manera en que está escrito el código para que cumpla con los estándares del lenguaje de programación. En PHP se tiene la herramienta http://pear.php.net/package/PHP_CodeSniffer encargada de detectar y arreglar el código según el conjunto de estándares de código definidos.
  • Gestión y edición de base de datos desde el IDE.
  • Navegación inteligente (mapping o go to declaration) permite acceder a la definición de un método o clase de una manera rápida.
  • Soporte de frameworks y CMS de PHP.
  • Entre muchas otras.

Ahora a continuación te presentamos una lista de IDEs y editores de textos con los que puedes trabajar con PHP, en orden alfabético:

IDEs

Codelobster PHP Edition

Web: http://www.codelobster.com/
Plataforma: Windows
Soporta: hasta PHP 7.*
Licencia Comercial pero se puede usar una versión libre que contiene PHP Editor (resaltado de sintaxis, autocompletado, ayuda dinámica, etc Puedes ver los detalles en: http://www.codelobster.com/php_editing.html y PHP Debugger.
Otras características destacadas: es portable, refactorización de código, control de versiones, SQL manager, posee plugins para los principales frameworks y CMS de PHP, disponibles para su versión profesional.

Ecplise

Web: http://www.eclipse.org/ide/
Plataforma: Windows, macOS, Linux
Soporta: PHP 7.*
Licencia: Código abierto. Licencia pública de Eclipse
Características: Es un IDE que contiene un módulo exclusivo para PHP: PHP Development Tools (PDT) https://www.eclipse.org/pdt/ Las principales características que ofrece se encuentra descritas en: https://eclipse.org/pdt/#docs

Komodo IDE

Web: https://www.activestate.com/komodo-ide
Plataforma: Multiplataforma (Windows, macOS, Linux)
Soporta: desde PHP 4.4 hasta PHP 7
Licencia: Comercial.
Características: Incluye soporte para HTML5, CSS, JavaScript, Laravel Blade, Zend Framework, Drupal y más. Además de debug visual, pruebas unitarias y control de versiones. Puedes ver otras características que ofrece en: https://www.activestate.com/komodo-ide/php-editor

NetBeans IDE

Web: https://netbeans.org/
Plataforma: Windows, macOS, Linux
Soporta PHP 5 y 7
Licencia: Open Source.
Características: A pesar que está principalmente desarrollado para Java tiene soporte para PHP. Posee editor de código con autocompletado, refactorización, fácil navegación en el código, generación de snippets, debugger con xdebug, testing con PHPUnit, análisis del código, soporte para frameworks como Symfony y Zend, entre otros. Puedes conocer más detalles en https://netbeans.org/features/php/index.html

PhpStorm

Web: https://www.jetbrains.com/phpstorm/
Plataforma: Windows, macOS, Linux
Soporta: PHP 5.3/5.4/5.5/5.6/7.0/7.1/7.2
Licencia: Comercial pero tiene opciones de obtenerlo gratis por un año si eres estudiante o trabajas en un proyecto Open Source.
Características destacadas: Es un IDE especialmente para PHP que contiene editor de código inteligente: soporte del lenguaje, autocompletado, refactorización, soporte para PHPDoc, PSR1, PSR2, detector de código duplicado, depurador y testing. Soporte para frameworks de PHP incluyendo Laravel, entre otros. https://www.jetbrains.com/phpstorm/features/

Zend Studio

Web: http://www.zend.com/en/products/studio
Plataforma: Windows, macOS, Linux
Soporta: PHP 7.*
Licencia: Comercial
Características: Es un IDE para PHP que toma como base el IDE Eclipse y sus principales características se encuentran descritas en http://www.zend.com/en/products/studio/features

Editores de texto

Atom

Web: https://atom.io/
Plataforma: Multiplataforma (Windows, macOS, Linux)
Soporta: PHP 7
Licencia: MIT
Características: Es un editor de código abierto con soporte para plugins disponibles en https://atom.io/packages/ además puedes personalizarlo con themes.

Komodo Edit

Web: https://www.activestate.com/komodo-edit
Plataforma: Multiplataforma (Windows, macOS, Linux)
Soporta: desde PHP 4.4 hasta PHP 7
Licencia: Gratis.
Características: Es una versión simple de Komodo IDE en su web hacen una comparación entre las 2 versiones.

Notepad++

Web: https://notepad-plus-plus.org/
Plataforma: Windows
Licencia: GPL
Características: Es un editor de código libre puedes ver sus principales características en https://notepad-plus-plus.org/features/ y conocer cuáles plugins tiene disponible en http://docs.notepad-plus-plus.org/index.php?title=Plugin_Central

Sublime text

Web: https://www.sublimetext.com/
Plataforma: Multiplataforma (Windows, macOS, Linux)
Soporta: PHP 7
Licencia: Comercial, puedes descargar y evaluar el editor pero para usarlo debes pagar la licencia de uso.
Características: Es un editor de código bastante amigable que puedes personalizar usando extensiones disponibles en https://packagecontrol.io/

Vim

Web: http://www.vim.org/
Plataforma: Multiplataforma (Windows, macOS, Linux)
Soporta: desde PHP 4.4 hasta PHP 7
Licencia: Vim (Compatible con GNU)
Características: Es un editor de texto que se controla por completo por teclado por lo que su curva de aprendizaje es mucho más larga que cualquier otro editor. Sin embargo es muy versátil y personalizable a través de plugins https://vim.sourceforge.io/scripts/

Visual studio Code

Web: https://code.visualstudio.com/
Plataforma: Multiplataforma (Windows, macOS, Linux)
Soporta: PHP 7
Licencia: MIT
Características: Es un editor de código libre de Microsoft que tiene soporte para sistema para el control de versiones y autocompletado inteligente. Puedes ver todas sus características en https://code.visualstudio.com/docs/editor/codebasics y es personalizable con sus plugins https://marketplace.visualstudio.com/search?term=php&target=VSCode

Lo ideal es que conociendo cuáles funcionalidades quieres tener disponibles cuando escribas código puedes evaluar las opciones y elegir el editor o IDE que se adapte a tu manera de trabajar. Si quieres que casi todo esté listo para empezar a desarrollar elige un IDE, si quieres un entorno ligero que puedas personalizar con calma a tu gusto, puedes elegir un editor. Al final es tu decisión.

En Styde trabajamos principalmente con PHPStorm y Sublime Text y hemos publicado algunos tutoriales que te pueden ayudar a configurarlos:

Suscríbete a nuestro boletín

Te enviaremos publicaciones con consejos útiles y múltiples recursos para que sigas aprendiendo.

Aprende desarrollo web con Laravel, Vue.js y mucho más a partir de 9 USD al mes: ver planes.