Tools for Opendoc Development
Total Page:16
File Type:pdf, Size:1020Kb
Tools for OpenDoc Development Apple Computer, Inc. Contents Component Software and OpenDoc........................................................................... 1 Software Developer Segments ....................................................................................2 Application developers................................................................................................ 2 Solution developers.................................................................................................... 2 Content developers ....................................................................................................3 Client/server developers.............................................................................................. 3 OpenDoc: A solution for diverse developer needs....................................................... 3 Apple’s OpenDoc Tools Strategy: Five Strategic Initiatives.................................... 4 Strategic Initiative #1: Provide Enabling Technologies for Macintosh OpenDoc Development ...................................................................5 Code Fragment Manager (CFM) .................................................................................5 System Object Model (SOM) ......................................................................................5 Availability................................................................................................................... 6 Strategic Initiative #2: Enhance Macintosh Development Environments to Support OpenDoc ..................................................................................................7 Apple products ...........................................................................................................7 Third-party products ....................................................................................................8 Strategic Initiative #3: Leverage Existing Applications with OpenDoc Migration Tools...................................................................................... 12 The procedural approach to OpenDoc migration....................................................... 12 The framework approach to OpenDoc migration .......................................................13 Strategic Initiative #4: Create Cross-Platform OpenDoc Development Tools .................................................................................................15 OpenDoc Development Framework .......................................................................... 15 OpenDoc builders..................................................................................................... 16 Strategic Initiative #5: Foster the Creation of Third-Party OpenDoc Tools........................................................................................................ 17 Novell AppWare........................................................................................................ 17 Oracle Power Objects ...............................................................................................17 Possible future Apple and IBM OpenDoc investigations............................................ 18 Developing OpenDoc Component Software for Macintosh Systems: How to Start Today................................................................................. 19 Why You Should Develop for OpenDoc .................................................................20 Contact Information .....................................................................................................21 Component Software and OpenDoc Over the next few years, the software industry will undergo a dramatic transformation as monolithic applications give way to component software based on object computing. The traditional software development approach, together with the increased functionality required by incremental market segments, has led to monolithic applications that become more and more complex every day. The transformation to a component software industry is being fueled by the need to develop customized software solutions through the use of modular building blocks. Such a modular approach will reduce the overall complexity and code size of the software. It will also enable developers to use many code components again and again in different applications—and in some cases, to market their components to other developers. In all these ways, the component approach will help developers be more competitive. Software development based on components offers these business and technical benefits: • Reduced cost of developing and maintaining applications • Faster time to market • Ability to reuse code (a previously unfulfilled promise of software development) • Quicker response to customer needs, including the ability to easily customize software to satisfy different market segments • Higher-quality and more reliable systems that can grow with business needs • Development of less-complex, self-contained modules that are easier to test and debug, resulting in higher customer satisfaction • Easier software integration and creation of compound documents To respond to industry needs and enable the development of a true component software industry, Apple Computer, Inc. created the OpenDoc architecture in cooperation with IBM Corporation and Novell, Inc.—a partnership known as Component Integration Laboratories (CI Labs). OpenDoc is an industry standard for software integration that enables the development of cross-platform component software. Vendors who intend to offer products based on OpenDoc include Apple for Mac OS, IBM for OS/2 and AIX, and Novell for Windows. The Macintosh implementation will include the OpenDoc Standard Interchange Format (Bento), the Open Scripting Architecture (OSA), OpenDoc Compound Document Services, and OpenDoc Component Services from Apple; the System Object Model (SOM) technology from IBM; and the Component Glue technology (for interoperability between OLE and OpenDoc components) from Novell. This document provides an overview of Apple’s OpenDoc tools strategy. It describes the different tools that developers can use to develop OpenDoc components not only for the Macintosh platform, but also for cross-platform deployment. Tools for OpenDoc Development Page 1 First, however, we will take a brief look at the types of developers who can most benefit from OpenDoc. Tools for OpenDoc Development Page 2 Software Developer Segments There are many types of developers and there is no simple way to characterize each type’s use of and requirements for development tools. For the purposes of this paper, we will consider the needs of four major developer segments: • Application developers • Solution developers • Content developers • Client/server developers Application developers Application developers consist of traditional software developers: commercial developers, in-house developers, system integrators, VARs, and independent consultants. These developers typically use languages such as Pascal, C, and C++, and integrated development environments that offer compilers, debuggers, linkers, and a variety of low-level, high- performance tools. Application developers need to get the most out of a platform to keep pace with the ever more complex requirements of their customers. Today, they face technical and economic challenges that force them to: • Create larger, more feature-rich, and therefore more complex applications to meet increasingly ambitious and changeable customer requirements • Work with more complex and numerous system software APIs in order to incorporate the latest technologies in their applications • Create products that will run on multiple platforms with minimal additional investment • Develop this complex, cross-platform software quickly and easily Solution developers Solution developers deliver innovation and benefits to end users by integrating applications and components into seamless solutions. These developers must: • Rapidly prototype new solutions • Quickly and easily develop solutions that are inexpensive and yet can grow with their customers’ needs • Develop solutions without extensive programming so that they can focus on understanding business needs rather than computers • Quickly and easily customize a solution developed for one customer to another customer’s specific needs Tools for OpenDoc Development Page 3 Content developers Content developers create compelling interactive experiences for their customers by integrating media developed using specialized tools for sound, video, animations, graphics, and/or images. They need to: • Integrate content developed with different tools • Make multimedia content that is compelling and performs well without having to deal with complex programming languages (such as C or C++) • Ensure that even the most naive computer users (including kids) can take advantage of the content they develop • Deliver content that will play on any platform or configuration Client/server developers Client/server (C/S) developers build applications that must scale to the variable resources of an organization while tapping into the growing body of corporate information and systems. C/S developers must be able to: • Scale their applications for distributed environments • Integrate a growing body of legacy code into new solutions • Master code reuse and repurposing • Create interoperability between heterogeneous systems OpenDoc: A solution for diverse developer needs Developer needs are truly diverse, but all developers need to