Looking into Zend Studio 3.0
by John Coggeshall
10/23/2003
In early September, Zend launched the new version of their PHP development
environment Zend Studio 3.0, which, by many accounts, is a drastic step forward
in PHP development technologies. I've acquired a copy of the new Studio, and
today I'll try to give you a reasonable rundown of what this new Studio is all
about and if it is worth its price tag.
I've been a PHP developer for a long time, using many different development
environments in my PHP projects. When I was asked to do a review of the new
Zend Studio, I decided that the best way to really judge it was to actually use it in my day-to-day development. So for a week, I set
aside my trusted ActiveState Komodo 2.5 and sat down with Zend Studio 3.0.
Here is what I found, what I liked, and how it compared to what I was
expecting.
What I Liked
From installation to development, there is one word that I can use to
describe Zend Studio 3.0 — easy. Unlike many other PHP-supporting
development environments, Zend Studio was incredibly intuitive. Installation on
both Windows and Linux platforms (I used Red Hat 8) was quick and simple,
requiring little effort to get myself started in development. Once installed,
the first thing I noticed when comparing it to previous versions was a drastic
increase in speed. Zend Studio 3.0 loaded faster and, as I found, responded
nicely no matter how quickly I typed, clicked, or stressed the environment. I
must say, I didn't expect this performance from a Java-based application. This
was quite the pleasant surprise.
Once the studio was installed, I began immediately using it in the
development of a PHP project I was working on. Immediately, I was impressed with
the intuitive nature of the environment. Although many environments support
things like syntax highlighting, Zend Studio took things a step further with
integration with many resources I use on a day-to-day basis, such as the online
PHP manual, FTP servers, and CVS repositories. A tabbed sidebar let me open
documents from the local filesystem, a project, and remote locations via FTP, as well as
browse the complete PHP function list. In larger projects, opening multiple
scripts is handled nicely by assigning each open file a tab for easy switching.
Zend Studio also boasts a robust syntax-highlighting-and-checking and code-completion system that I found very easy to use. (It even supported the
still-beta PHP 5 syntax.)
What's Missing
With all of the positives Zend Studio provides, when compared to other
environments I have used which cater to PHP, there are a few features I missed.
For instance, the lack of any sort of split-pane viewing of scripts (very
useful for very large PHP scripts), the inability to un-dock or otherwise move
panes within the environment, and the lack of any sort of internal HTML
rendering were some major features I found missing.
Editor's Note: Jason Halla points out, "Actually, you can move & re-dock each of the workspace windows in Studio (such as the File System or Output windows). Go to Tools | Customization | Desktop. Look for the 'Dock workspace windows' option — set the drop-down menu to "Enabled". Hit Apply. Now you can drag and drop the workspace windows wherever they suit you best."
Interesting Features
Once you scratch the surface of the Zend Studio, you find that it contains
several incredibly valuable tools that can drastically reduce the amount of
time needed to develop large-scale PHP applications. From conception to
completion, Zend Studio has something for every phase of an application's life
cycle.
The first and most commonly sought feature is the studio's remote debugging
capabilities. Zend Studio 3.0 supports line-by-line debugging of PHP scripts
remotely from within the development environment itself. The debugger is by all
measures full-featured, with support for breakpoints, step-throughs, stack
traces, and variable watching. It even allows you to preview the contents of the
current output buffer. Zend Studio also provides a useful code analyzer, which
can help quickly and easily point out common potential problems in your scripts that can lead to
both bugs and security vulnerabilities. During my trials
of the Studio, I used these features extensively and was quite impressed with how
quickly they assisted me in the development of quality PHP scripts.
Since every time a web page powered by PHP is executed, the entire PHP script
behind that page is executed, efficiency in large-scale enterprise applications
becomes a critical component to success. Once an application has been debugged
and is functioning properly, the next logical step is to make each of your
scripts function as efficiently as necessary. For this purpose, Zend Studio
provides an invaluable remote profiling tool — one of the single biggest
strengths of the new Zend Studio. This tool allows developers to profile a
script on a function-by-function basis to identify the amount of time each step
of execution took to complete. This information can be displayed as a simple
itemized list or as a pie chart, allowing you to quickly and easily identify potentially
inefficient code in your applications. Even during my
trials, I found several different functions and scripts within my own
applications that were slower than they should have been. This tool is simply
a must-have for anyone interested in developing large-scale enterprise
applications in PHP.
On the Server
Beyond the Zend Studio IDE itself (in which you actually do the coding for
your applications), an entirely separate facet of Zend Studio resides on your
development web server. This server-side component provides the functionality
within PHP that allows for the other aforementioned components such as the
profiler and debugger to function. However, the server side of Zend Studio
also provides a great deal of useful functionality completely independently of
the client IDE. The Zend Server Center is a very useful PHP application which,
when installed on your server, allows you quick and easy access to all of the
configuration settings available in PHP, the Zend-Studio-specific configuration
options, and a wealth of information regarding the server itself. Zend
Studio also comes with the Zend Information Center, which serves as an online
reference manual for the studio and can be accessed by any modern web
browser.
Conclusions
When all is said and done, my opinion regarding this product was perfectly
clear. When you take Zend Studio as a whole, there is no single product
available on the market today that can help you become a more effective
developer of PHP applications. For those developers who are looking for a PHP
development environment, Zend Studio 3.0 is one of the best choices you can
make.
John Coggeshall
is a a PHP consultant and author who started losing sleep over PHP around five years ago.
Return to PHP DevCenter.