
Book contents
- Frontmatter
- Contents
- Preface
- Contributors
- Acknowledgments
- Introduction
- Notes for Educators: AMA Teaching Methods
- Chapter 1 Collaborative Engineering
- Chapter 2 Software Architecture and Integration Technologies
- Chapter 3 From a Specific Task to “Integration-Ready” Components
- Chapter 4 Integration with Voice
- Chapter 5 An Introduction to Knowledge Technologies
- Chapter 6 Write Once
- Chapter 7 The New Generation of Client–Server Software
- Chapter 8 Wireless Technologies
- Chapter 9 Programming Wireless Application Protocol Applications
- Chapter 10 A Single JavaCard Identity Key for All Doors and Services
- Chapter 11 The J2ME Family
- Chapter 12 Speech Technologies on the Way to a Natural User Interface
- Chapter 13 Integration with Knowledge
- Chapter 14 Distributed Life in the JXTA and Jini Communities
- Appendix 1 Java and C#: A Saga of Siblings
- Appendix 2 XML and Web Services
- Appendix 3 Source Examples
- Index
Chapter 6 - Write Once
Published online by Cambridge University Press: 17 August 2009
- Frontmatter
- Contents
- Preface
- Contributors
- Acknowledgments
- Introduction
- Notes for Educators: AMA Teaching Methods
- Chapter 1 Collaborative Engineering
- Chapter 2 Software Architecture and Integration Technologies
- Chapter 3 From a Specific Task to “Integration-Ready” Components
- Chapter 4 Integration with Voice
- Chapter 5 An Introduction to Knowledge Technologies
- Chapter 6 Write Once
- Chapter 7 The New Generation of Client–Server Software
- Chapter 8 Wireless Technologies
- Chapter 9 Programming Wireless Application Protocol Applications
- Chapter 10 A Single JavaCard Identity Key for All Doors and Services
- Chapter 11 The J2ME Family
- Chapter 12 Speech Technologies on the Way to a Natural User Interface
- Chapter 13 Integration with Knowledge
- Chapter 14 Distributed Life in the JXTA and Jini Communities
- Appendix 1 Java and C#: A Saga of Siblings
- Appendix 2 XML and Web Services
- Appendix 3 Source Examples
- Index
Summary
But the raven still beguiling all my sad soul into smiling, Straight I wheeled a cushioned seat in front of bird and bust and door Then, upon the velvet sinking, I betook myself to linking Fancy unto fancy, thinking what this ominous bird of yore—What this grim, ungainly, gaunt, and ominous bird of yore Meant in croaking ‘Nevermore.’
—Edgar Allan Poe, The Raven, 1845 (one of the earliest works on the subject)“Write once and run everywhere” is one of the most important promises made by Java technology. Java Virtual Machines running on different platforms support this promise. With Microsoft's .NET initiative also you can write a program in C, C++, C#, Visual Basic, Perl, and so on. Then you can convert the program (with Visual Studio .NET) into the Microsoft intermediate language (MSIL) binary code that can be executed on any Windows platform by a virtual machine called the Common Language Runtime (CLR).
Unfortunately, the problem has many sides, and no technology by itself can help in every direction. Again, this is about the right development process coupled with the right technologies. What are the factors, other than language and compatibility problems, that prevent us from writing once?
When we try to use an existing service or application with a new environment, we find out that it does not fit. When business requires change and we want to adapt an existing product to that change, we find that there are no adaptation mechanisms in place. We realize that the basic properties, methods, and operations of the application are too specific to and too tight with the existing environment. The product has to be redone, often from scratch.
- Type
- Chapter
- Information
- Integration-Ready Architecture and DesignSoftware Engineering with XML, Java, .NET, Wireless, Speech, and Knowledge Technologies, pp. 194 - 221Publisher: Cambridge University PressPrint publication year: 2004