Eclipse is one of those development projects about which many people have heard, but only those who've worked inside its borders know what it's really about. Though funded by IBM in large part, Eclipse is a manifold open source development effort that embraces a multitude of components and capabilities, including:
- An integrated development environment (IDE) for building development projects.
- A collection of infrastructure elements, including the Eclipse platform, Java Development Tools, a Plug-in Development Environment (PDE), a Web standard tools subproject also known as WST, a J2EE standard tools project also known as JST, and a Java server faces tools subproject also known as JSF.
- A software developer's kit (SDK) that includes enough of the infrastructure elements to support meaningful software development. As it happens, the Eclipse platform consists of enough components that numerous subsets thereof will by themselves suffice to support development. These include a Rich Client Platform (RCP), among others.
Eclipse is constructed so that a small kernel known as the (Eclipse) Platform Runtime is the only constantly present software element and all the real Eclipse functionality resides in the form of one or more Plug-ins that interact with the Platform Runtime. Small software tools may be written as a single plug-in, whereas larger, more complex tools will invariably take the form of two or more plug-ins that work in combination
The project is particularly relevant to XML development because it includes components that are designed to support a broad range of content types, including XML, but also including HTML, Java, C, JSP, EJB and even GIF graphics file. Under the hood, of course, the environment itself makes extensive use of XML, XSLT, XPath and so forth to manage information about the representation of data within various formats and the best ways to transform data from one format to another. Thus, the Eclipse environment and, in particular, its wWST components, include tools designed to create, edit, validate, transform and render XML documents and work with both SGML DTDs and XML Schema documents.
XML developers are likely to find this environment interesting and potentially useful because it not only provides a tour-de-force illustration of good XML-based design and development techniques at work, but also because it provides a plethora of powerful tools for using XML to aid the software development process. To learn more about this interesting, free and potentially useful environment, visit www.eclipse.org and browse to your heart's content. For software developers who work with XML and who possess some familiarity with Java or some variant of C, its allure can be nearly irresistible.
About the author
Ed Tittel is a full-time writer and trainer whose interests include XML and development topics, along with IT Certification and information security topics. E-mail Ed at firstname.lastname@example.org with comments, questions or suggested topics or tools for review.
This was first published in May 2006