When do you work visually? When do you work in code? David Intersimone (perhaps better known as "David I."), Vice President of Developer Relations and Chief Evangelist at CodeGear, a wholly-owned subsidiary of Borland, suggests that while tools that allow you work visually at a high level of abstraction can be very useful, you should also be able to work at a lower level of abstraction when you need to, by writing code. For example, Intersimone said:
Developers should be able to work in the ways that they want. If you want to work visually, and design your web services and EJBs visually, using class and ineraction diagrams, that's one thing. But if you want to do it in code, you should be able to do it in code.
I liken that to the days where we built higher levels of abstraction over operating system APIs, components. So you didn't have to drop down to low level hardware calls through assembler, and so on. That you should be able to use high-level abstractions, visual means, or whatever--but it shouldn't be the only way you can do things. If you're a programmer, you should still be able to call APIs, to write actual code. If you need to drop down to machine level, you should be able to do that.
|David Intersimone, Vice President of Developer Relations and Chief Evangelist at CodeGear, discusses the relationship between visual development and coding. (3 minutes, 25 seconds)|
When do you think it is appropriate to use a visual tool versus coding? In what ways have you used visual tools in the past that have worked well or not worked well?Post your opinion in the discussion forum.
Bill Venners is president of Artima, Inc. He is author of the book, Inside the Java Virtual Machine, a programmer-oriented survey of the Java platform's architecture and internals. His popular columns in JavaWorld magazine covered Java internals, object-oriented design, and Jini. Bill has been active in the Jini Community since its inception. He led the Jini Community's ServiceUI project, whose ServiceUI API became the de facto standard way to associate user interfaces to Jini services. Bill also serves as an elected member of the Jini Community's initial Technical Oversight Committee (TOC), and in this role helped to define the governance process for the community.
Frank Sommers is Editor-in-Chief of Artima Developer. He also serves as chief editor of the IEEE Technical Committee on Scalable Computing's newsletter, and is an elected member of the Jini Community's Technical Advisory Committee. Prior to joining Artima, Frank wrote the Jiniology and Web services columns for JavaWorld.