Está en la página 1de 5

EVALUACIÓN • Zend Studio 4

Exploración del Entorno de Desarrollo Zend Studio 4

DESARROLLO RÁPIDO
Los expertos en PHP consideran a

Zend Studio como el entorno IDE

más maduro y con más caracterís-

ticas útiles. La última versión

ofrece manipulación avanzada de

bases de datos y otras mejoras.

Vamos a revisar el IDE Zend Stu-

dio y enseñaremos cómo se

puede usar para acelerar el desar-

rollo en PHP.

POR CARSTEN MÖHRKE

L
a elección de un entorno de des-
arrollo integrado es a menudo
cuestión de gusto. Muchos des-
arrolladores de PHP prefieren editores de
texto como Emacs o Vim. Los desarrolla-
dores que prefieren una solución más
integrada tienen varias opciones en el
mundo Linux. El IDE gratuito Quanta
Plus, el entorno de código cerrado
Maguma e incluso Eclipse (con su con-
junto de plug-ins adecuado) son buenas
alternativas a un editor. Para los desarro-
lladores de PHP, Zend Studio tiene la
reputación de ser uno de los IDE más
maduros y potentes.
Zend Studio es la criatura de la empre-
sa Israelí Zend Software, que prefiere ser valen la pena. Se puede descargar una titulado “Zend Studio Personal
conocida como “La Compañía del PHP”. versión de prueba del sitio web de Zend. Edition”).
Versiones anteriores tenían problemas de La versión de prueba es plenamente
rendimiento o inestabilidad, pero la últi- funcional durante un período de 21 días, La Instalación
ma versión, Zend Studio 4, es un entor- tras los cuales se degrada a la “Zend Después de descargar el paquete y des-
no de desarrollo extremadamente poten- Studio Personal Edition”, una versión no comprimir el archivo de 47 Mbytes, se
te y estable. Zend Studio no es gratis ni comercial que deshabilita muchas de las puede ejecutar el programa de instala-
pertenece a la comunidad de Código características interesantes que hacen ción directamente. Un asistente le guiará
Abierto, aunque sus 249 dóalres bien que no merezca la pena (véase el cuadro a través del proceso tras solicitarle que

28 Número 10 WWW.LINUX- MAGAZINE.ES


Zend Studio 4 • EVALUACIÓN

La interfaz de usuario desarrollo útil. Por ejemplo, se puede


(Figura 2) está dividida definir cómo mostrar el tabulador en la
en varios paneles. La solapa Editing. El formato Newline
parte de arriba a la puede ser importante. Esta opción espe-
izquierda muestra los cifica si una nueva línea se representa
ficheros, servidores y por un retorno de carro y avance de línea
bases de datos de acceso (estándar de Windows) o por tan sólo un
directo. Debajo se avance de línea (estándar de Unix).
encuentran varios inspec-
tores que proporcionan a La Configuración del
los desarrolladores una Servidor
visión rápida de los fiche- En muchos casos, se necesitará trabajar
ros, clases y métodos que con ficheros almacenados en un servi-
Figura 1: Un asistente nos lleva a través del proceso de insta- pertenecen al proyecto dor. El IDE Zend proporciona la caracte-
lación de Zend Studio. Asegúrese de instalar el servidor de actual. La parte inferior rística de almacenar los ficheros directa-
Zend Studio. de la pantalla está reser- mente en un servidor usando una cone-
vada para los mensajes y xión FTP. Se puede usar SFTP o FTP
conteste a algunas preguntas. Además de la ventana de depuración. La segunda sobre SSH para mayor seguridad si es
las preguntas típicas sobre el directorio ventana proporciona información sobre necesario. El menú de ficheros muestra
de instalación, se puede indicar qué ver- los valores de las variables, las llamadas a un cuadro de diálogo donde se puede
sión de PHP se desea soportar (4 ó 5). la pila y cosas similares. A la derecha se configurar una conexión nueva a un ser-
PHP 4 y 5 no son cien por cien compati- encuentra un área que muestra la “panta- vidor (Figura 3). Para configurar la cone-
bles y contienen diferentes comandos, lla de salida”. Esta zona muestra el código xión, se necesita proporcionar la infor-
así que esta selección influirá en el colo- del script generado para que se pueda ver mación usual, como el nombre del servi-
reado de la sintaxis y su comprobación. de un vistazo. Zend Studio también dor, el nombre del usuario y su contrase-
Las buenas noticias son que esta caracte- muestra las cabeceras HTTP. Esto es una ña. Hay que asegurarse de desmarcar la
rística se puede modificar más adelante. característica importante ya que un nave- opción Reconnect on Startup o Zend
Otra cosa importante sobre la instalación gador no lo hace. Finalmente, la ventana Studio intentará conectarse al servidor
es decidir si se va a instalar el Zend de edición está en el centro de la pantalla. cuando se ejecute el IDE y esto puede ser
Studio Server (Figura 1). Diga que sí, Para todos aquellos que estén preocupa- realmente molesto si se tiene una lista
porque se necesitará para poder depurar dos en dónde colocar todos estos paneles larga de servidores o si la conexión no
de forma efectiva más adelante. en una pantalla pequeña tenemos buenas está disponible. Zend Studio también
noticias: se pueden escalar los paneles y tiene soporte CVS, que se puede configu-
La Interfaz ocultar aquellos que no se necesiten. rar con el menú de herramientas.
Tras completar la instalación, Zend
Studio automáticamente detecta el idio- La Configuración La Configuración de un
ma de la configuración del sistema y se Antes de empezar a usar Zend Studio en Servidor de Bases de Datos
ejecuta con el soporte de idioma adecua- un entorno de producción, probablemen- El acceso directo a servidores de bases
do. En el momento de de escribir este te necesite ajustar algunos parámetros de datos es una característica nueva en
artículo, el entorno soportaba los de configuración. El cuadro de diálogo
siguientes idiomas: Inglés, Francés, para personalizar el sistema se titula Zend Studio Personal
Alemán, Ruso y Español. Preferences y se abre seleccionando
Edition
Preferences
en el menú Las siguientes características no están
de herra- disponibles en la versión Zend Studio
mientas. Personal Edition:
La mayoría • Perfiles
de estas pre- • Analizador de Código
ferencias son
• Soporte para CVS
cuestión de
• Inspectores
gusto. Sin
embargo, • Soporte FTP
hay algunas • Depuración Remota
opciones adi- • Descripción de funciones en la termi-
cionales que nación de código
necesitará • Búsqueda de ficheros
cambiar para • Impresión
obtener un
• Sangrado de código
Figura 2: El interfaz de usuario de Zend Studio. entorno de

WWW.LINUX- MAGAZINE.ES Número 10 29


EVALUACIÓN • Zend Studio 4

que sea una interfaz de bases de datos. código. Esto no está restringido al fichero
En modo base de datos, se puede usar la que actualmente se esté editando, sino
parte inferior del interfaz para introducir que también incluye cualquier otro
comandos SQL (Figura 5). Esta caracte- fichero que se haya abierto al mismo
rística permite a los desarrolladores veri- tiempo. (La terminación de código puede
ficar las consultas SQL antes de añadir- ocasionar confusión cuando Zend ofrece
las al código PHP. una clase de un fichero abierto que no
pertenece al proyecto actual).
En Producción Como PHP no soporta la declaración
Aunque Zend Studio permite la edición de los tipos de las variables, Zend Studio
individual de ficheros, los desarrollado- no tiene forma de saber a qué tipo de
res prefieren normalmente trabajar con dato pertenece un parámetro que se le
proyectos. Cuando se añade un proyecto pase a una función. Sin embargo, los
nuevo seleccionando New Project en el desarrolladores pueden añadir bloques
menú Project, aparecerá un asistente que de documentación (docblocks) para pro-
solicitará el nombre del proyecto nuevo, porcionar esta información para sus pro-
Figura 3: El cuadro de diálogo de configura- la ruta donde almacenar los ficheros del pias funciones, clases y métodos. Para
ción del servidor FTP permite configurar una proyecto y las preferencias de depura- ello, hay que pulsar el botón derecho del
conexión a un servidor FTP. ción para el proyecto. Después de crear ratón en una función del Inspector de
un proyecto se muestra Proyectos y seleccionar
Zend Studio 4. Pulsando en SQL de la en la parte de la Add description para
ventana de gestión de ficheros (arriba a izquierda, en el inspec- insertar un docblock
la izquierda) hace que se muestre una tor de proyectos. Ahora vacío.
lista de servidores configurados. Desde se puede hacer clic con La primera línea
luego, la lista estará vacía si se acaba de el botón derecho del debería ser una breve
instalar el programa. Para añadir ele- ratón o usar el menú descripción de la fun-
mentos a la lista, hay que hacer clic con de ficheros para aña- ción, que aparecerá en
el botón derecho del ratón en la ventana dirle ficheros. la ayuda de la termina-
y seleccionar “Add Server” para abrir la Zend Studio tiene ción automática de
ventana que se muestra en la figura 4. varias características código. Los Docblocks
En esto momentos Zend Studio sopor- que facilitan la edición son extensibles por
ta acceso directo a los siguientes servi- de código. Además del Figura 4: Configurando un servidor medio de etiquetas,
dores de bases de datos: Oracle, SQLite, coloreado de la sinta- SQL. permitiendo describir
Microsoft SQL Server, PostgreSQL y xis, que actualmente las propiedades de una
MySQL. Después de introducir las cre- soporta hasta el más sencillo de los edi- función o clase. Las etiquetas siempre
denciales de acceso, se puede acceder tores, la terminación automática del empiezan por @. Una etiqueta tiene que
inmediatamente al servidor. Haciendo código es probablemente una de las ser precedida por un asterisco (*) y un
clic con el botón derecho del ratón abre herramientas más útiles. Mientras se está espacio en blanco. Por ejemplo, una
una conexión y proporciona al entorno tecleando, Zend Studio muestra una lista entrada como @return: describiría el
de desarrollo acceso a cualquier base de de funciones, variables u otros elemen- tipo de retorno de una función. La eti-
datos, tablas y registros para los que el tos que empiezan con las letras que se queta @param: se refiere a un paráme-
usuario actual tenga permiso de acceso. han tecleado. tro. Se necesita una entrada separada
Los desarrolladores pueden ver la Considerando el número de comandos para cada parámetro, seguido del nom-
estructura de las tablas o su contenido PHP, el hecho de que el sistema muestre bre de la variable y el tipo de dato. Se
en la ventana que normalmente contie- un breve resumen de lo que cada fun- puede encontrar una lista completa de
ne el editor. Zend Studio no soporta ción realiza es, verdaderamente cómodo. etiquetas en [1].
la manipulación directa de Una lista de parámetros aparece cuando Esta solución puede parecer algo com-
los registros, ya que una función se haya identificado correc- plicada al principio, pero tiene sentido,
no se preten- tamente. ya que los docblocks pueden ser real-
de Zend Studio añade mente útiles cuando se usan junto con
dinámicamente programas de generación automática de
cualquier documentación. Para ayudar al desarro-
función, llador con ello, Zend Studio tiene el
variable y PHPDocumentor en el menú de herra-
clase que se mientas (Figura 6). El documentador,
defina en la como su propio nombre indica, crea
lista de ter- documentación formateada en HTML,
minación PDF, CHM o XML a partir de un fichero
automática de de código fuente.

30 Número 10 WWW.LINUX- MAGAZINE.ES


Zend Studio 4 • EVALUACIÓN

Figura 5: Accediendo al servidor MySQL

El análisis automático de la sintaxis es sean correctas, su estilo de


otra característica potente. Zend Studio programación sea pobre. Se puede
comprueba la entrada automáticamente invocar el analizador de código bien pre-
en busca de errores sintácticos mientras se sionando la secuencia de teclas pueden
está tecleando. Si se descubre un error, [Ctrl]+[Alt]+[A], bien accediendo a tra- añadir o quitar simplemente
subraya la línea de código que lo contiene vés del menú herramientas. haciendo clic sobre el número de la línea
en rojo y coloca una marca roja en el mar- de código. Después de establecer los
gen para indicar el punto. Entonces se Depuración punto de rupturas, presionando [F5] o
puede colocar el ratón encima de la línea o Por supuesto, Zend Studio ayuda a los seleccionando Run en el menú debug
sobre el código que contiene el error y el desarrolladores a localizar errores ocultos. hará que el código se ejecute. Cuando el
IDE mostrará un mensaje de error. La herramienta de depuración permite intérprete llegue a la línea que contenga
Zend Studio también proporciona frag- interrumpir la ejecución de código y com- el punto de ruptura , interrumpirá la eje-
mentos de código, que son fragmentos probar lo que está sucediendo con las cución del programa justo antes de eje-
de código externo proporcionados por la variables críticas. Zend Studio soporta cutar dicha línea, permitiendo al des-
comunidad de código abierto que han tanto la depuración local como remota. La arrollador inspeccionar el estado del sis-
sido probados y cuya funcionalidad está depuración local significa que el código se tema más detenidamente.
demostrada. Estos fragmentos de código esté ejecutando directamente en el entor- Como se mencionó previamente, la
son otra característica útil que se ha aña- no Zend Studio con la salida apareciendo parte derecha de la pantalla muestra el
dido a Zend Studio 4 que puede ayudar en el lado derecho de la ventana de Zend script de salida. Se puede inspeccionar el
al desarrollador a reinventar la rueda. La Studio. Como a menudo es imposible estado del script actual en esta zona. Este
biblioteca contiene unos 300 fragmentos comprobar localmente todo, también panel muestra las variables actuales,
y también incluye funciones de actuali- soporta la
zación que permiten importar nuevos depuración
fragmentos de código. desde el servi-
Desde luego, no hay quien escriba dor.
código sin cometer algún error; es bas- Ejecutar
tante importante ser capaz de encontrar todo el pro-
tantos errores como sea posible. De grama entero
nuevo, Zend Studio proporciona una y comprobar
amplia gama de opciones. El analizador los resultados
de código es una característica interesan- no es una
te. Aunque otros IDEs tienen analizado- forma útil de
res de código, el analizador de Zend fun- depuración.
ciona de forma diferente. Este ayuda a Esto es por lo
encontrar irregularidades, que pueden que Zend
ser o no errores. Analiza el código y le Studio permi-
comunica al desarrollador los posibles te establecer
errores que encuentra. múltiples
El analizador recolectará las líneas de punto de rup- Figura 6: El PHPDocumentor permite crear la documentación de los fiche-
código, que aunque sintácticamente turas. Estos se ros de código fuente.

WWW.LINUX- MAGAZINE.ES Número 10 31


EVALUACIÓN • Zend Studio 4

directamente se puede usar la función Debug URL o


en el servidor presionar la tecla de atajo [F8]. Para pro-
y la sesión se bar una página web, hay que introducir
controla remo- la URL de la misma en la ventana que
tamente por aparece. Tras pulsar OK la sesión empie-
Zend Studio. za; se abre el navegador y permite el
Para soportar control remoto de la sesión.
la depuración Zend Studio obtiene el código fuente
remota, hay directamente desde el servidor, así que no
que instalar el hay necesidad de crear una copia local. Al
servidor de contrario de la depuración local, el depu-
Zend Studio, rador remoto se detiene antes de la prime-
que se incluye ra línea de código, eliminando la necesi-
con la licencia dad de establecer un punto de ruptura.
del IDE. Si no Aparte de eso, la funcionalidad es como la
se instala el prestada por la depuración local. La salida
servidor mien- se muestra tanto en el entorno Zend
Figura 7: El perfil de Zend Studio analiza el uso de la CPU y ayuda a locali- tras se esté Studio como en el navegador.
zar los cuellos de botella. instalando En algunos casos, la salida se almace-
Zend Studio, na primero en un buffer de salida y no se
incluyendo tanto el tipo de dato como su se puede descargar desde www.zend. envía al navegador. En ese caso, si se
contenido. El contenido de los arrays y de com. añade flush() al código fuente, se envia-
los objetos se muestra de la misma forma. El servidor no es una aplicación inde- rá el contenido del búfer de salida al
Por defecto, tan sólo se pueden ver las pendiente, sino que necesita estar inte- navegador.
variables locales (es decir, las variables grado con un servidor web Apache exis-
visibles en el contexto actual). Sin embar- tente. Se puede usar tanto el servidor Más Potencia
go, se puede hacer clic en el signo + Apache que va incluido con el producto Puede ser que se esté familiarizado con
junto a GLOBALS para ver las variables o bien usar un servidor Apache instalado los problemas de respuesta lenta de las
superglobales, incluyendo su contenido. anteriormente. En este último caso, el aplicaciones web nuevas. Es bastante
Las llamadas a la pila también son intere- programa de instalación intentará locali- difícil localizar la fuente del cuello de
santes de observar; tan sólo hay que pul- zar la ruta a los ficheros de configura- botella. Zend Studio proporciona un per-
sar en Stack para mostrarlas. En la pila es ción, como httpd.conf y php.ini y si no fil en el menú de herramientas. El perfil
dónde el intérprete gestiona las llamadas logra localizarlo, solicitará al usuario la analiza el programa en ejecución en el
a las funciones. Esto permite ver la pila ruta a los mismos. servidor de depuración y muestra el
con los nombres de las funciones que el Además, el programa de instalación tiempo requerido por la CPU para proce-
sistema ha llamado hasta el momento. La necesita saber qué clientes tienen permiti- sar un fichero o una función (Figura 7).
función al fondo de la pila será siempre do acceder al servidor. El servidor Zend no
main(), es decir, el cuerpo del programa. debe ser instalado en servidores web en Conclusiones
Esta vista proporciona al desarrollador la entornos de producción, ya que la rutina Aunque hay formas más baratas de pro-
ventaja de poder inspeccionar las varia- de instalación reemplaza el fichero índice gramar en PHP, ni Eclipse, ni Emacs, ni
bles dentro de las funciones en el interior en el directorio DocumentRoot. Ahora, tampoco Quanta +, contienen un depu-
de la pila, que podrían ser sobrescritas después de reiniciar el servidor, cada vez rador. La ayuda sensible al contexto de
por otras llamadas. que se llame a la página inicial del servi- Zend es más madura que el de las otras
dor desde el navegador, automáticamente alternativas. Los desarrolladores que tra-
Depuración Remota será reenviado a la página del servidor bajen en grandes proyectos podrían
Tras llegar a un punto de ruptura, se Zend Studio. La página proporciona un echar en falta el soporte para versiones y
puede avanzar paso a paso por las líneas resumen de la configuración y permite el cliente de CVS no es aún perfecto,
de código siguientes o bien ejecutar el modificar la configuración de PHP. El pro- pero Zend Studio 4 viene con muchas
programa hasta el siguiente punto de grama de instalación crea una copia de características que lo compensan.
ruptura. La solución anterior es útil si se seguridad de los ficheros modificados. Por mucho que se diga, vale la pena el
quieren inspeccionar los cambios de los Las características realmente intere- precio que hay que pagar por Zend
valores individuales conforme el código santes para el control del servidor Zend Studio. ■
progresa. Presionando [F11] en el menú son parte de Zend Studio. Se puede habi-
debug le dice al intérprete que avance a litar la depuración basada en el servidor RECURSOS
la línea siguiente. Si se selecciona Run el en Preferences | Tools | Debug.
intérprete ejecutará el código hasta el Después de hacerlo, habría que com- [1] Manual del PHPDocumentor: http://
siguiente punto de ruptura. La depura- probar la conexión al servidor seleccio- www.phpdoc.org
ción remota es una forma más avanzada nando Check debug server connection. [2] Zend: http://www.zend.com
de depuración donde el código se ejecuta Tras pasar la prueba satisfactoriamente,

32 Número 10 WWW.LINUX- MAGAZINE.ES

También podría gustarte