April 2, 2002 Craig E. Ward, [email protected] 1 Java on Mac OS X Insanely Great or Just Insane? A...
-
Upload
jasmin-sullivan -
Category
Documents
-
view
215 -
download
0
Transcript of April 2, 2002 Craig E. Ward, [email protected] 1 Java on Mac OS X Insanely Great or Just Insane? A...
![Page 1: 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.](https://reader036.fdocuments.in/reader036/viewer/2022082822/5697bff41a28abf838cbcf13/html5/thumbnails/1.jpg)
April 2, 2002 Craig E. Ward, [email protected] 1
Java on Mac OS XJava on Mac OS X
Insanely Great or Just Insanely Great or Just Insane?Insane?
A presentation to the Los Angeles Java Users Group
![Page 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.](https://reader036.fdocuments.in/reader036/viewer/2022082822/5697bff41a28abf838cbcf13/html5/thumbnails/2.jpg)
April 2, 2002 Craig E. Ward, [email protected] 2
IntroductionIntroduction
““I’m a back-end guy…”I’m a back-end guy…”
Adventures in GOO-EE programmingAdventures in GOO-EE programming
Looking for what’s cool with Java on Mac Looking for what’s cool with Java on Mac OS XOS X
![Page 3: 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.](https://reader036.fdocuments.in/reader036/viewer/2022082822/5697bff41a28abf838cbcf13/html5/thumbnails/3.jpg)
April 2, 2002 Craig E. Ward, [email protected] 3
AgendaAgenda
Architecture of Mac OS XArchitecture of Mac OS X
Integration of Java 2Integration of Java 2
Development ToolsDevelopment Tools
Cocoa FrameworkCocoa Framework
Anatomy of a Cocoa ApplicationAnatomy of a Cocoa Application
Tool DemonstrationsTool Demonstrations
Sources for the talk and other ResourcesSources for the talk and other Resources
Conclusions by the presenterConclusions by the presenter
DiscussionDiscussion
![Page 4: 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.](https://reader036.fdocuments.in/reader036/viewer/2022082822/5697bff41a28abf838cbcf13/html5/thumbnails/4.jpg)
April 2, 2002 Craig E. Ward, [email protected] 4
Architecture of Mac OS XArchitecture of Mac OS X
Core operating system is based on Mach 3.0 and FreeBSD 3.2 Unix
Darwin
![Page 5: 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.](https://reader036.fdocuments.in/reader036/viewer/2022082822/5697bff41a28abf838cbcf13/html5/thumbnails/5.jpg)
April 2, 2002 Craig E. Ward, [email protected] 5
Architecture of Mac OS XArchitecture of Mac OS XUnixcommandline programs
Darwin
BSD
![Page 6: 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.](https://reader036.fdocuments.in/reader036/viewer/2022082822/5697bff41a28abf838cbcf13/html5/thumbnails/6.jpg)
April 2, 2002 Craig E. Ward, [email protected] 6
Architecture of Mac OS XArchitecture of Mac OS X
QuartzOpenGLQuicktimeAudio
Darwin
Application Services
BSD
![Page 7: 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.](https://reader036.fdocuments.in/reader036/viewer/2022082822/5697bff41a28abf838cbcf13/html5/thumbnails/7.jpg)
April 2, 2002 Craig E. Ward, [email protected] 7
Darwin
Application Services
Classic Carbon BSD
Architecture of Mac OS XArchitecture of Mac OS X
Legacy
LegacyMigration
![Page 8: 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.](https://reader036.fdocuments.in/reader036/viewer/2022082822/5697bff41a28abf838cbcf13/html5/thumbnails/8.jpg)
April 2, 2002 Craig E. Ward, [email protected] 8
Darwin
Application Services
Classic Carbon Cocoa Java BSD
Architecture of Mac OS XArchitecture of Mac OS X
Native frameworks,Objective C
J2SE1.3.1
![Page 9: 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.](https://reader036.fdocuments.in/reader036/viewer/2022082822/5697bff41a28abf838cbcf13/html5/thumbnails/9.jpg)
April 2, 2002 Craig E. Ward, [email protected] 9
Darwin
Application Services
Classic Carbon Cocoa Java
Aqua
BSD
Architecture of Mac OS XArchitecture of Mac OS X
User Interface Look & Feel
![Page 11: 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.](https://reader036.fdocuments.in/reader036/viewer/2022082822/5697bff41a28abf838cbcf13/html5/thumbnails/11.jpg)
April 2, 2002 Craig E. Ward, [email protected] 12
Integration of Java 2Integration of Java 2
Pre-installed on all new Macintosh Pre-installed on all new Macintosh computerscomputers
Peer core environment to Cocoa and CarbonPeer core environment to Cocoa and Carbon Mix Java code with Cocoa native codeMix Java code with Cocoa native code
Automatic Aqua PLAFAutomatic Aqua PLAF
Optimized HotSpot VMOptimized HotSpot VM
Almost latest releases (1.3.1)Almost latest releases (1.3.1)
![Page 12: 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.](https://reader036.fdocuments.in/reader036/viewer/2022082822/5697bff41a28abf838cbcf13/html5/thumbnails/12.jpg)
April 2, 2002 Craig E. Ward, [email protected] 13
Development ToolsDevelopment Tools Standard J2SE command line toolsStandard J2SE command line tools
Many third-party toolsMany third-party tools JBuilderJBuilder
CodeWarriorCodeWarrior
JDEEJDEE
AppleApple MRJAppBuilderMRJAppBuilder
Project Builder and Interface BuilderProject Builder and Interface Builder
JavaBrowser, AppletLauncher, Java Web StartJavaBrowser, AppletLauncher, Java Web Start
![Page 13: 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.](https://reader036.fdocuments.in/reader036/viewer/2022082822/5697bff41a28abf838cbcf13/html5/thumbnails/13.jpg)
April 2, 2002 Craig E. Ward, [email protected] 14
Cocoa FrameworksCocoa Frameworks
FoundationFoundation Low-level classes representing data types, Low-level classes representing data types,
files, threads, collections, etc.files, threads, collections, etc.
AppKitAppKit User interface componentsUser interface components
Java BridgeJava Bridge The wrapper classesThe wrapper classes
![Page 14: 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.](https://reader036.fdocuments.in/reader036/viewer/2022082822/5697bff41a28abf838cbcf13/html5/thumbnails/14.jpg)
April 2, 2002 Craig E. Ward, [email protected] 15
Anatomy of a Cocoa ApplicationAnatomy of a Cocoa Application
Hidden file structureHidden file structure
Property Lists in XMLProperty Lists in XML
Other ResourcesOther Resources GraphicsGraphics
NIB filesNIB files
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE plist SYSTEM "file://localhost/System/Library/DTDs/PropertyList.dtd"><plist version="0.9"><dict>
<key>CFBundleDevelopmentRegion</key><string>English</string>
![Page 15: 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.](https://reader036.fdocuments.in/reader036/viewer/2022082822/5697bff41a28abf838cbcf13/html5/thumbnails/15.jpg)
April 2, 2002 Craig E. Ward, [email protected] 16
NIB FilesNIB Files
Serialized instances of interface Serialized instances of interface objectsobjects
Important ConceptsImportant Concepts ActionAction OutletOutlet
![Page 16: 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.](https://reader036.fdocuments.in/reader036/viewer/2022082822/5697bff41a28abf838cbcf13/html5/thumbnails/16.jpg)
April 2, 2002 Craig E. Ward, [email protected] 17
Tool DemonstrationsTool Demonstrations
MRJAppBuilderMRJAppBuilder
Project Builder and Interface BuilderProject Builder and Interface Builder
JavaBrowserJavaBrowser
![Page 17: 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.](https://reader036.fdocuments.in/reader036/viewer/2022082822/5697bff41a28abf838cbcf13/html5/thumbnails/17.jpg)
April 2, 2002 Craig E. Ward, [email protected] 18
Sources & ResourcesSources & Resources
Apple Developer ConnectionApple Developer Connection Free web membershipFree web membership Inside Mac OS X: Java Development on Inside Mac OS X: Java Development on
Mac OS XMac OS X Inside Cocoa: Developing Cocoa Java Inside Cocoa: Developing Cocoa Java
Applications: A TutorialApplications: A Tutorial List [email protected] [email protected]
Early Adopter Mac OS X JavaEarly Adopter Mac OS X Java Mac OS X: The Complete ReferenceMac OS X: The Complete Reference
![Page 18: 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.](https://reader036.fdocuments.in/reader036/viewer/2022082822/5697bff41a28abf838cbcf13/html5/thumbnails/18.jpg)
April 2, 2002 Craig E. Ward, [email protected] 19
ConclusionsConclusions
First class Java development First class Java development platformplatform
User-friendly runtimeUser-friendly runtime Cocoa applications have access to Cocoa applications have access to
Java 2 features and vise-versaJava 2 features and vise-versa More than just an educational toyMore than just an educational toy
![Page 19: 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.](https://reader036.fdocuments.in/reader036/viewer/2022082822/5697bff41a28abf838cbcf13/html5/thumbnails/19.jpg)
April 2, 2002 Craig E. Ward, [email protected] 20
Discussion and More Discussion and More Questions?Questions?
What wasn’t coveredWhat wasn’t covered Questions and CommentsQuestions and Comments More?More?