JSConf.it 2011: A Wondrous Experience of Sound, Light, and Code
-
Upload
johannes-fahrenkrug -
Category
Technology
-
view
1.992 -
download
2
description
Transcript of JSConf.it 2011: A Wondrous Experience of Sound, Light, and Code
A Wondrous Experience of Sound, Light, and Code
Cappuccino and SproutCore in 45 Minutes
YAY!
@jfahrenkrugJohannesFahrenkrugspringenwerk.com herzpoetin.de
Donnerstag, 12. Mai 2011
starstwins.comDonnerstag, 12. Mai 2011
starstwins.com
Intro & SimilaritiesIntro & Similarities
Capp in 10
Video!
SC in 10
Video!
Wrap Up & RecommendationsWrap Up & Recommendations
Q & AQ & A
Donnerstag, 12. Mai 2011
Similarities
Donnerstag, 12. Mai 2011
Similarities
Desktop-ish
Donnerstag, 12. Mai 2011
Similarities
Desktop-ish No Plugin
Donnerstag, 12. Mai 2011
Similarities
Desktop-ish No Plugin
Cocoa-inspired
Donnerstag, 12. Mai 2011
Similarities
Desktop-ish No Plugin
Cocoa-inspired
ouramericangeneration.orgDonnerstag, 12. Mai 2011
Similarities
Cocoa-inspired
Donnerstag, 12. Mai 2011
Cappuccino
Donnerstag, 12. Mai 2011
Intro
1/10
Donnerstag, 12. Mai 2011
Intro
1/10
• Objective-J and JavaScript
Donnerstag, 12. Mai 2011
Intro
1/10
• Objective-J and JavaScript• Port of Apple’s Cocoa framework
Donnerstag, 12. Mai 2011
Intro
1/10
• Objective-J and JavaScript• Port of Apple’s Cocoa framework• Low learning curve for iOS/Mac developers
Donnerstag, 12. Mai 2011
Intro
1/10
• Objective-J and JavaScript• Port of Apple’s Cocoa framework• Low learning curve for iOS/Mac developers• No need to use HTML/JS/CSS
Donnerstag, 12. Mai 2011
Intro
1/10
• Objective-J and JavaScript• Port of Apple’s Cocoa framework• Low learning curve for iOS/Mac developers• No need to use HTML/JS/CSS• Design UIs in Xcode’s Interface Builder
Donnerstag, 12. Mai 2011
Intro
1/10
• Objective-J and JavaScript• Port of Apple’s Cocoa framework• Low learning curve for iOS/Mac developers• No need to use HTML/JS/CSS• Design UIs in Xcode’s Interface Builder• http://cappuccino.org
Donnerstag, 12. Mai 2011
Installation
2/10
1. git clone git://github.com/280north/cappuccino.git2. Run ./bootstrap.sh3. Add export PATH=”/usr/local/narwhal/bin:$PATH”
to your ~/.profile or ~/.zshrc4. Run jake sudo-install5. That’s it!
Donnerstag, 12. Mai 2011
New Project
3/10
Donnerstag, 12. Mai 2011
New Project
3/10
1. capp gen –t NibApplication my_awesome_app
Donnerstag, 12. Mai 2011
New Project
3/10
1. capp gen –t NibApplication my_awesome_app2. Run nib2cib Resources/MainMenu.xib
Donnerstag, 12. Mai 2011
New Project
3/10
1. capp gen –t NibApplication my_awesome_app2. Run nib2cib Resources/MainMenu.xib3. Open index.html
Donnerstag, 12. Mai 2011
New Project
3/10
1. capp gen –t NibApplication my_awesome_app2. Run nib2cib Resources/MainMenu.xib3. Open index.html
Donnerstag, 12. Mai 2011
Edit the UI
4/10
Donnerstag, 12. Mai 2011
Edit the UI
4/10
1. cd MyAwesomeApp
Donnerstag, 12. Mai 2011
Edit the UI
4/10
1. cd MyAwesomeApp2. Run xcodecapp
Donnerstag, 12. Mai 2011
Edit the UI
4/10
1. cd MyAwesomeApp2. Run xcodecapp3. Edit the UI in Xcode
Donnerstag, 12. Mai 2011
Edit the UI
4/10
1. cd MyAwesomeApp2. Run xcodecapp3. Edit the UI in Xcode
Donnerstag, 12. Mai 2011
Edit the UI
4/10
1. cd MyAwesomeApp2. Run xcodecapp3. Edit the UI in Xcode
Donnerstag, 12. Mai 2011
Edit the UI
4/10
1. cd MyAwesomeApp2. Run xcodecapp3. Edit the UI in Xcode
Donnerstag, 12. Mai 2011
Edit the UI
4/10
1. cd MyAwesomeApp2. Run xcodecapp3. Edit the UI in Xcode
Donnerstag, 12. Mai 2011
Edit the UI
4/10
1. cd MyAwesomeApp2. Run xcodecapp3. Edit the UI in Xcode
Donnerstag, 12. Mai 2011
Objective-J
5/10
Donnerstag, 12. Mai 2011
Objective-J
5/10
Class name
Donnerstag, 12. Mai 2011
Objective-J
5/10
SuperclassClass name
Donnerstag, 12. Mai 2011
Objective-J
5/10
Ivars
SuperclassClass name
Donnerstag, 12. Mai 2011
Objective-J
5/10
Methods
Ivars
SuperclassClass name
Donnerstag, 12. Mai 2011
Objective-J
5/10
Donnerstag, 12. Mai 2011
Hook Up UI
6/10
wallpaper110.com & United Plankton Pictures
Donnerstag, 12. Mai 2011
Hook Up UI
6/10
wallpaper110.com & United Plankton Pictures
Donnerstag, 12. Mai 2011
Hook Up UI
6/10
wallpaper110.com & United Plankton Pictures
Donnerstag, 12. Mai 2011
Hook Up UI
6/10
wallpaper110.com & United Plankton Pictures
Donnerstag, 12. Mai 2011
Advanced Features
7/10
www.botanicalgarden.ubc.ca
Donnerstag, 12. Mai 2011
Advanced Features
7/10
www.botanicalgarden.ubc.ca
Bindings
Donnerstag, 12. Mai 2011
Advanced Features
7/10
www.botanicalgarden.ubc.ca
BindingsKVO/KVC
Donnerstag, 12. Mai 2011
Advanced Features
7/10
www.botanicalgarden.ubc.ca
BindingsKVO/KVC
NativeHost
Donnerstag, 12. Mai 2011
Advanced Features
7/10
www.botanicalgarden.ubc.ca
BindingsKVO/KVC
Categories
NativeHost
Donnerstag, 12. Mai 2011
Testing
8/10
https://github.com/280north/OJTest
•Unit Tests•Specs•Mocks•Auto-Testing•Code Coverage
Donnerstag, 12. Mai 2011
Deployment
9/10
1. Run jake release2. Copy everything to any server, it's just static files3. Or run jake desktop for NativeHost
Donnerstag, 12. Mai 2011
License
10/10
Donnerstag, 12. Mai 2011
License
10/10
LGPLDonnerstag, 12. Mai 2011
Donnerstag, 12. Mai 2011
Donnerstag, 12. Mai 2011
Donnerstag, 12. Mai 2011
http://bit.ly/jsconf-capp
Donnerstag, 12. Mai 2011
SproutCore
Donnerstag, 12. Mai 2011
Intro
1/10
Donnerstag, 12. Mai 2011
Intro
1/10
• Straight JavaScript, HTML, CSS
Donnerstag, 12. Mai 2011
Intro
1/10
• Straight JavaScript, HTML, CSS• Partly inspired by Apple’s Cocoa framework
Donnerstag, 12. Mai 2011
Intro
1/10
• Straight JavaScript, HTML, CSS• Partly inspired by Apple’s Cocoa framework• Partly inspired by Ruby on Rails
Donnerstag, 12. Mai 2011
Intro
1/10
• Straight JavaScript, HTML, CSS• Partly inspired by Apple’s Cocoa framework• Partly inspired by Ruby on Rails• Usable for desktop-ish AND "classic" applications
Donnerstag, 12. Mai 2011
Intro
1/10
• Straight JavaScript, HTML, CSS• Partly inspired by Apple’s Cocoa framework• Partly inspired by Ruby on Rails• Usable for desktop-ish AND "classic" applications• Touch & mobile support built-in
Donnerstag, 12. Mai 2011
Intro
1/10
• Straight JavaScript, HTML, CSS• Partly inspired by Apple’s Cocoa framework• Partly inspired by Ruby on Rails• Usable for desktop-ish AND "classic" applications• Touch & mobile support built-in• http://sproutcore.com
Donnerstag, 12. Mai 2011
Installation
2/10
Donnerstag, 12. Mai 2011
Installation
2/10
• gem install sproutcore
Donnerstag, 12. Mai 2011
Installation
2/10
• gem install sproutcore• gem install sproutcore --pre (to get the latest beta)
Donnerstag, 12. Mai 2011
Installation
2/10
• gem install sproutcore• gem install sproutcore --pre (to get the latest beta)• Installer from http://www.sproutcore.com
Donnerstag, 12. Mai 2011
New Project
3/10
Donnerstag, 12. Mai 2011
New Project
3/10
• sc-init my_awesome_app
Donnerstag, 12. Mai 2011
New Project
3/10
• sc-init my_awesome_app• cd my_awesome_app
Donnerstag, 12. Mai 2011
New Project
3/10
• sc-init my_awesome_app• cd my_awesome_app• Run sc-server
Donnerstag, 12. Mai 2011
New Project
3/10
• sc-init my_awesome_app• cd my_awesome_app• Run sc-server• Open http://localhost:4020
Donnerstag, 12. Mai 2011
New Project
3/10
• sc-init my_awesome_app• cd my_awesome_app• Run sc-server• Open http://localhost:4020
Donnerstag, 12. Mai 2011
Edit the UI
4/10
Donnerstag, 12. Mai 2011
Edit the UI
4/10
Donnerstag, 12. Mai 2011
Hook Up UI
5/10
image from apple.com
Donnerstag, 12. Mai 2011
Hook Up UI
5/10
Donnerstag, 12. Mai 2011
Hook Up UI
5/10
Donnerstag, 12. Mai 2011
Hook Up UI
5/10
Donnerstag, 12. Mai 2011
Hook Up UI
5/10
Donnerstag, 12. Mai 2011
Hook Up UI
5/10
Donnerstag, 12. Mai 2011
Templates
6/10
image from sproutcore.com
Donnerstag, 12. Mai 2011
Templates
6/10
image from apple.com
http://guides.sproutcore.com/getting_started.html
Donnerstag, 12. Mai 2011
Advanced Features
7/10
www.botanicalgarden.ubc.ca
Donnerstag, 12. Mai 2011
Advanced Features
7/10
www.botanicalgarden.ubc.ca
Touch
Donnerstag, 12. Mai 2011
Advanced Features
7/10
www.botanicalgarden.ubc.ca
Touch Modules
Donnerstag, 12. Mai 2011
Advanced Features
7/10
www.botanicalgarden.ubc.ca
Touch Modules
DataStore
Donnerstag, 12. Mai 2011
Advanced Features
7/10
www.botanicalgarden.ubc.ca
Touch Modules
ThemesDataStore
Donnerstag, 12. Mai 2011
Testing
8/10
Donnerstag, 12. Mai 2011
Deployment
9/10
1. Run sc-build -rc my_awesome_app2. Copy everything to any server, it's just static files3. Or use the strobe gem (http://strobecorp.com)
Donnerstag, 12. Mai 2011
License
10/10
Donnerstag, 12. Mai 2011
License
10/10
Donnerstag, 12. Mai 2011
Donnerstag, 12. Mai 2011
Donnerstag, 12. Mai 2011
starstwins.com
or ?
Donnerstag, 12. Mai 2011
CAPPUCCINO OR SPROUTCORE?
NEITHER, USE FLASH!by Bubbachrissy
Donnerstag, 12. Mai 2011
"@jtaby @me1000 says @cappuccino is so much better than @sproutcore. Is that true?"
"@me1000 @jtaby says @sproutcore is so much better than @cappuccino. Is that true?"
FUN!
Majd (@jtaby) Randy (@me1000)
Donnerstag, 12. Mai 2011
Grazie mille!
@jfahrenkrugJohannesFahrenkrugspringenwerk.com
Donnerstag, 12. Mai 2011