B.3. UML Tools

If you ever get deep into the realm of system architecting and design, chances are you will cross paths with UML at some point. If you're not familiar with UML, simply put, it is a way to model and represent the structure, behavior, architecture, and process flow of an application or other system. You can use UML to diagram different aspects of a system or application, including the class structure, user interaction, object interaction, process flow, and so on, similar to flowcharts and other diagrams you might make with Visio, Kivio, or other related tools.

There are nine diagram types in UML, but from the developer's point of view, one of the most important is the Class diagram. Class diagrams help you plan your various classes, and the relationships between those classes.

If you use UML in your PHP workflow, you have a couple tools at your disposal—some popular free tools are ArgoUML and Umbrello.

B.3.1. ArgoUML

ArgoUML is a Java-based UML editor created by the Tigris.org community. It supports eight of the major UML diagram types, and can help you quickly plan out your objects, relationships, and behaviors. One of the main features of ArgoUML, from a PHP developer's point of view, is that it can generate valid PHP5 class skeletons from UML class diagrams automatically (as well as C#, Java, C++, and PHP4), as shown in Figure B.3.

You simply create your class diagrams in UML and tell ArgoUML what and where to generate the code, saving you the time of typing the ...

Get Professional LAMP: Linux®, Apache, MySQL®, and PHP5 Web Development now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.