• MacTech Network:
  • Tech Support
  • |
  • MacForge.net
  • |
  • Apple News
  • |
  • Register Domains
  • |
  • SSL Certificates
  • |
  • iPod Deals
  • |
  • Mac Deals
  • |
  • Mac Book Shelf

MAC TECH

  • Home
  • Magazine
    • About MacTech in Print
    • Issue Table of Contents
    • Subscribe
    • Risk Free Sample
    • Back Issues
    • MacTech DVD
  • Archives
    • MacTech Print Archives
    • MacMod
    • MacTutor
    • FrameWorks
    • develop
  • Forums
  • News
    • MacTech News
    • MacTech Blog
    • MacTech Reviews and KoolTools
    • Whitepapers, Screencasts, Videos and Books
    • News Scanner
    • Rumors Scanner
    • Documentation Scanner
    • Submit News or PR
    • MacTech News List
  • Store
  • Apple Expo
    • by Category
    • by Company
    • by Product
  • Job Board
  • Editorial
    • Submit News or PR
    • Writer's Kit
    • Editorial Staff
    • Editorial Calendar
  • Advertising
    • Benefits of MacTech
    • Mechanicals and Submission
    • Dates and Deadlines
    • Submit Apple Expo Entry
  • User
    • Register for Ongoing Raffles
    • Register new user
    • Edit User Settings
    • Logout
  • Contact
    • Customer Service
    • Webmaster Feedback
    • Submit News or PR
    • Suggest an article
  • Connect Tools
    • MacTech Live Podcast
    • RSS Feeds
    • Twitter

ADVERTISEMENT
Volume Number:12
Issue Number:9
Column Tag:Viewpoint

Viewpoint

By Will Iverson

This issue marks the first of my tenure as Editor-in-Chief of MacTech Magazine. Some of you may recognize me from my earlier role as Symantec’s Macintosh Developer Relations Manager. I am excited to be at the helm of the magazine, and look forward to its growth over the next year. Write me at editor-in-chief@mactech.com with your ideas.

First, a brief comment about Apple Computer (leaving to others the lengthy non-technical dissertations on “what Apple should do”). Suffice it to say that the times may be a-changing, but that just makes for more excitement. Less than a year ago, Sun had a mixed future, and Java was barely on the horizon. Some were even wondering if the Power Macintosh might spell the end of Sun! Today Sun and Java are Well, I think you get the point. The great thing about this industry is that both success and failure are fickle.

Overall, there’s reason to be bullish. The Macintosh development tools market has never been stronger. There are more tools out there than ever before, and more people are learning to program. This is where the magazine comes in - we intend to expand coverage to meet the needs of this burgeoning market. One important piece of this is to challenge the ever-increasing marketing which inevitably comes with a healthy market. Who really is fastest, provides the best results?

Another component is the expansion of our Web site to form the new MacTech NOW. A problem with traditional print is the relatively long lag between timely news and the appearance of the information in print. We’ve been online for over a year, with over 1500 pages of back issues and online documentation. Now you can look to http://www.mactech.com/ for breaking news in the Macintosh Developer Tools community as well.

Mac OS 8, OpenDoc, SOM and Java

Pop quiz - what do Mac OS 8, OpenDoc, SOM and Java have in common? Give up? The futures of all four are tied together in a fundamental, albeit confusing, way.

A fundamental problem with the current implementation of object-oriented languages is the lack of a common calling mechanism - there is no easy way to mix and match pieces of object-oriented code. The most common place you run into this is trying to mix C++ libraries from two different compiler vendors in your project. For that matter, even C++ code compiled under different versions of the same compiler usually won’t mix. This makes life for third-party library vendors very difficult, as they must maintain potentially dozens of different versions of their libraries. It also makes it very difficult for languages other than C++ (such as Smalltalk or Prograph) to make inroads into mainstream community.

There are two solutions. The easy but limited route is to develop a C++ accepted binary interface, or ABI. There are variants, but generally this model takes C++ as gospel for how object-orientation works and provides a relatively direct mapping. All compilers would then support this standard. This doesn’t work across languages, and leads to annoyances like the pascal keyword in C. This is more or less the route Microsoft has taken with Windows.

The hard but robust solution is SOM. SOM (System Object Model) was developed by IBM, and in typical IBM fashion it is very robust, very powerful, and a royal pain to use.

The Macintosh Way

The only company which can actually present and enforce such standards is Apple. Apple has decided on SOM as a standard, and we are already seeing this technology in OpenDoc. SOM will provide (among other things) the foundation on which the Mac OS 8 Appearance Manager is built. In addition, SOM libraries will finally allow us to share code between different tools.

SOM finally allows us to dispense with talking protocols, and to get on with generating content - in this case, code. There is a caveat, however. There are two ways to access SOM. The nasty way requires learning a new language and writing special .IDL header files, which are then mangled by an intermediate tool which actually generates the proper .h files. The easy way is something called Direct to SOM. (Do not confuse Direct to SOM with DSOM, which stands for Distributed SOM and is beyond the scope of this text.)

With Direct to SOM, you essentially keep working in C++ as normal, and things just work. The compiler is responsible for generating the proper code. This is also the problem with Direct to SOM - it basically involves rewriting the compiler. Metrowerks announced at MacHack that Direct To SOM was a principal component of CW10, and Apple has also announced Direct To SOM support in MrC. If your tool vendor doesn’t support Direct to SOM, write and encourage them to do so.

So what does this have to do with Java and OpenDoc? OpenDoc suffers a critical flaw: a single misbehaved part can take down an entire document. Java, on the other hand, suffers from a lack of any structured, well-designed component architecture. At WWDC, Apple demonstrated a Java-based OpenDoc part which included access to native code and other neat things, like automatic persistence. The best part: it was roughly a page of code, a fraction of what it would have been in C++.

 
MacTech Only Search:
Community Search:

 
 
 

 
 
 
 
 
  • SPREAD THE WORD:
  • Slashdot
  • Digg
  • Del.icio.us
  • Reddit
  • Newsvine
  • Generate a short URL for this page:



MacTech Magazine. www.mactech.com
Toll Free 877-MACTECH, Outside US/Canada: 805-494-9797
MacTech is a registered trademark of Xplain Corporation. Xplain, "The journal of Apple technology", Apple Expo, Explain It, MacDev, MacDev-1, THINK Reference, NetProfessional, Apple Expo, MacTech Central, MacTech Domains, MacNews, MacForge, and the MacTutorMan are trademarks or service marks of Xplain Corporation. Sprocket is a registered trademark of eSprocket Corporation. Other trademarks and copyrights appearing in this printing or software remain the property of their respective holders.
All contents are Copyright 1984-2010 by Xplain Corporation. All rights reserved. Theme designed by Icreon.
 
Nov. 20: Take Control of Syncing Data in Sow Leopard' released
Nov. 19: Cocktail 4.5 (Leopard Edition) released
Nov. 19: macProVideo offers new Cubase tutorials
Nov. 18: S Stardom anounces Safe Capsule, a companion piece for Apple's
Nov. 17: Ableton releases Max for Live
Nov. 17: Ableton releases Max for Live
Nov. 17: Ableton releases Max for Live
Nov. 17: Ableton releases Max for Live
Nov. 17: Ableton releases Max for Live
Nov. 17: Ableton releases Max for Live
Nov. 17: Ableton releases Max for Live
Nov. 17: Ableton releases Max for Live
Nov. 17: Ableton releases Max for Live
Nov. 17: Ableton releases Max for Live