Codewarrior 8 Keeps App
Focus”>
Humpty Dumpty correctly described the choice facing buyers of application development tools. “The question,” he said in Lewis Carrolls Through the Looking Glass, “is which is to be master—thats all.”
Is the platform the master and the application only a window into (pun intended) a platforms distinctive services? Or is the application the master and the operating system merely a box of generic tools that any platform should offer?
These perceived roles of platform and application, as seen by any given development shop, will determine the choice between a platform-focused tool set—such as Microsoft Corp.s multilingual Visual Studio .Net, which we reviewed earlier this year—or an application-focused tool set, such as Metrowerks Inc.s CodeWarrior for C, C++ and Java programming. We review here the late-spring Version 8 updates of the Windows and Mac OS editions of Metrowerks package, priced at $599 each and available in a combined package at $799, which we tested on Windows 2000 and Mac OS X workstations.
We found several significant improvements in this Metrowerks release that will probably keep CodeWarrior in the good graces of its users.
However, we did not find the high-level facilities for enterprise database access, or for Web services development or consumption, that highlight the latest offerings from competing toolmakers such as Oracle Corp.
Java developers will find quick and convenient aids for generating skeletal applet, application or JavaBean component projects—and in either the Windows-hosted or Macintosh-hosted environments, the same File/New menu choice brought up a list of Java, Mac OS or Win32 project options. The only difference between the Windows and Mac iterations was the inclusion of a Mac OS X Cocoa project type in the Macintosh-hosted tool set. (Being highly specific to the Macintosh, the NextStep-based Cocoa object framework is likely to be of little interest to developers using Windows as their workshop. We had no difficulty in generating projects on either Windows 2000 or Mac OS X for native execution on the other.
With Borland Software Corp.s enterprise-oriented Kylix adding C++ capabilities to its Linux-hosted development suite in an update expected this month, CodeWarrior 8 faces a struggle for the hearts and minds of developers who might be looking at alternatives to a Windows-centric universe. On the other hand, growing interest in Apple Computer Inc.s Mac OS X—in its roles as a robust Unix-based native platform, now supported by Apple server hardware, and also as a high-performance Java environment—might make CodeWarriors cross-platform strengths attractive to developers who have not had previous reason to care about that potential.
We suspect that many of CodeWarriors current users, in addition to writers of multiplatform applications, are crafters of low-level, “headless” code such as device drivers or embedded software. For these developers, drawing pictures of GUI screens or data sets is much less important than quickly writing code that accurately does what the developer intended. And both these sets of developers will find, in Version 8s source-code editor, a code-completion facility that surpasses even Microsofts IntelliSense.
For example, CodeWarriors list of possible expression completions shrinks with the typing of additional characters until only one possible choice remains, whereas Microsofts code editor moves a highlight bar to reflect more specific input but does not contract the list to show only the remaining possibilities. CodeWarrior also gave us welcome flexibility in deciding how and when its dynamic list of suggestions would appear.
Developers targeting multiple platforms are likely to be working with closely related versions of source-code files and may need help in reconciling their differences despite the best efforts of configuration management tools. We particularly liked the visual presentation of differences between files in the CodeWarrior environments integrated comparison tool.
We took a quick ride in a time machine, however, that carried us back at least six years when we saw that CodeWarrior has newly introduced visual “wiring” of user interface components for Java developers: a presentation using arrows to indicate GUI interactions.
Were reminded of some old Smalltalk environments or of tools such as IBMs VisualAge for Java—except that CodeWarriors tools, like those in (what was then) Symantec Corp.s first-generation Café tool set back in that other century, use a clumsy one-way “wizard” to construct an object interaction and generate the associated code. Our subsequent inspection of the “wires” was uninformative. For novice developers, though, this facility has some value as an interactive tutorial.
CodeWarriors visual interaction aids are not dynamically bidirectional tools such as those in Borlands JBuilder or even bidirectional-when-you-kick-them tools such as those in Microsofts Visual Studio. Instead, the visual form editor forces an update to the source-code window whenever an application-building operation discovers that the visual layout has been changed. We found that any of several ordinary manipulations could put the source code out of sync with the visual tool and that either of the resulting representations could wind up being reflected at run-time.
When all is said and done, though, what will we use when we want to write up some C or C++ or Java code and be sure that we know what its going to do? With an environment that looks and acts the same on either Mac or Windows workstations and that keeps our code front and center in a project manager environment that we still like after all these years, CodeWarrior is a tool that were glad to have in our lab.
Technology Editor Peter Coffee can be reached at peter_coffee@ziffdavis.com.
CodeWarrior 8
Executive Summary: CodeWarrior 8
Usability |
Good |
Capability |
Excellent |
Performance |
Excellent |
Interoperability |
Excellent |
Manageability |
Good |
Scalability |
Good |
Security |
Good |
Metrowerks CodeWarrior 8 wont disappoint developers who like earlier versions accessible tools and cross-platform flexibility—but it also wont attract many defections from those who are placing their bets on the enterprise database access and Web services development aids that are prominent in competing suites recent updates.
COST ANALYSIS
Priced between Borlands Java-only JBuilder and Microsofts multilingual Visual Studio .Net, with affordable upgrades from earlier versions and low-priced academic licensing, CodeWarrior offers a strong value proposition combined with an easy learning curve that wont demand costly training or create expensive delays.
(+) Consistent developer interface on Windows and Mac OS workstations; straightforward access to source code augmented by productivity aids that generally meet or beat those of competitors.
(-) Visual rapid application development aids only for Java, lacking robustness and consistent interaction of competing Borland or Oracle tools.
EVALUATION SHORT LIST
- Microsofts Visual Studio .Net
- Borlands C++ Builder and JBuilder
- www.metrowerks.com