Presentation is loading. Please wait.

Presentation is loading. Please wait.

April 2, 2002 Craig E. Ward, 1 Java on Mac OS X Insanely Great or Just Insane? A presentation to the Los Angeles Java Users Group.

Similar presentations


Presentation on theme: "April 2, 2002 Craig E. Ward, 1 Java on Mac OS X Insanely Great or Just Insane? A presentation to the Los Angeles Java Users Group."— Presentation transcript:

1

2 April 2, 2002 Craig E. Ward, cew@acm.org 1 Java on Mac OS X Insanely Great or Just Insane? A presentation to the Los Angeles Java Users Group

3 April 2, 2002 Craig E. Ward, cew@acm.org2 Introduction “I’m a back-end guy…” “I’m a back-end guy…” Adventures in GOO-EE programming Adventures in GOO-EE programming Looking for what’s cool with Java on Mac OS X Looking for what’s cool with Java on Mac OS X

4 April 2, 2002 Craig E. Ward, cew@acm.org3 Agenda Architecture of Mac OS X Architecture of Mac OS X Integration of Java 2 Integration of Java 2 Development Tools Development Tools Cocoa Framework Cocoa Framework Anatomy of a Cocoa Application Anatomy of a Cocoa Application Tool Demonstrations Tool Demonstrations Sources for the talk and other Resources Sources for the talk and other Resources Conclusions by the presenter Conclusions by the presenter Discussion Discussion

5 April 2, 2002 Craig E. Ward, cew@acm.org4 Architecture of Mac OS X Core operating system is based on Mach 3.0 and FreeBSD 3.2 Unix

6 April 2, 2002 Craig E. Ward, cew@acm.org5 Architecture of Mac OS X Unix command line programs

7 April 2, 2002 Craig E. Ward, cew@acm.org6 Architecture of Mac OS X Quartz OpenGL Quicktime Audio

8 April 2, 2002 Craig E. Ward, cew@acm.org7 Architecture of Mac OS X Legacy Migration

9 April 2, 2002 Craig E. Ward, cew@acm.org8 Architecture of Mac OS X Native frameworks, Objective C J2SE 1.3.1

10 April 2, 2002 Craig E. Ward, cew@acm.org9 Architecture of Mac OS X User Interface Look & Feel

11 April 2, 2002 Craig E. Ward, cew@acm.org10 Architecture of Mac OS X

12 April 2, 2002 Craig E. Ward, cew@acm.org11 Architecture of Mac OS X Core operating system is based on Mach 3.0 and FreeBSD 3.2 Unix Quartz OpenGL Quicktime Audio Legacy User Interface Look & Feel Legacy Migration Native frameworks, Objective C J2SE 1.3.1 Unix command line programs

13 April 2, 2002 Craig E. Ward, cew@acm.org12 Integration of Java 2 Pre-installed on all new Macintosh computers Pre-installed on all new Macintosh computers Peer core environment to Cocoa and Carbon Peer core environment to Cocoa and Carbon Mix Java code with Cocoa native code Mix Java code with Cocoa native code Automatic Aqua PLAF Automatic Aqua PLAF Optimized HotSpot VM Optimized HotSpot VM Almost latest releases (1.3.1) Almost latest releases (1.3.1)

14 April 2, 2002 Craig E. Ward, cew@acm.org13 Development Tools Standard J2SE command line tools Standard J2SE command line tools Many third-party tools Many third-party tools JBuilder JBuilder CodeWarrior CodeWarrior JDEE JDEE Apple Apple MRJAppBuilder MRJAppBuilder Project Builder and Interface Builder Project Builder and Interface Builder JavaBrowser, AppletLauncher, Java Web Start JavaBrowser, AppletLauncher, Java Web Start

15 April 2, 2002 Craig E. Ward, cew@acm.org14 Cocoa Frameworks Foundation Foundation Low-level classes representing data types, files, threads, collections, etc. Low-level classes representing data types, files, threads, collections, etc. AppKit AppKit User interface components User interface components Java Bridge Java Bridge The wrapper classes The wrapper classes

16 April 2, 2002 Craig E. Ward, cew@acm.org15 Anatomy of a Cocoa Application Hidden file structure Hidden file structure Property Lists in XML Property Lists in XML Other Resources Other Resources Graphics Graphics NIB files NIB files <!DOCTYPE plist SYSTEM "file://localhost/System/Library/DTDs/ PropertyList.dtd"> CFBundleDevelopmentRegion English

17 April 2, 2002 Craig E. Ward, cew@acm.org16 NIB Files Serialized instances of interface objects Serialized instances of interface objects Important Concepts Important Concepts Action Action Outlet Outlet

18 April 2, 2002 Craig E. Ward, cew@acm.org17 Tool Demonstrations MRJAppBuilder MRJAppBuilder Project Builder and Interface Builder Project Builder and Interface Builder JavaBrowser JavaBrowser

19 April 2, 2002 Craig E. Ward, cew@acm.org18 Sources & Resources Apple Developer Connection Apple Developer Connection Free web membership Free web membership Inside Mac OS X: Java Development on Mac OS X Inside Mac OS X: Java Development on Mac OS X Inside Cocoa: Developing Cocoa Java Applications: A Tutorial Inside Cocoa: Developing Cocoa Java Applications: A Tutorial List java-dev@lists.apple.com List java-dev@lists.apple.com Early Adopter Mac OS X Java Early Adopter Mac OS X Java Mac OS X: The Complete Reference Mac OS X: The Complete Reference

20 April 2, 2002 Craig E. Ward, cew@acm.org19 Conclusions First class Java development platform First class Java development platform User-friendly runtime User-friendly runtime Cocoa applications have access to Java 2 features and vise-versa Cocoa applications have access to Java 2 features and vise-versa More than just an educational toy More than just an educational toy

21 April 2, 2002 Craig E. Ward, cew@acm.org20 Discussion and More Questions? What wasn’t covered What wasn’t covered Questions and Comments Questions and Comments More? More?


Download ppt "April 2, 2002 Craig E. Ward, 1 Java on Mac OS X Insanely Great or Just Insane? A presentation to the Los Angeles Java Users Group."

Similar presentations


Ads by Google