Titanium ユーザーが
Swift を触ってみたら
第1回 Swift 勉強会 @ ネクスト
第1回 Swift 勉強会 @ ネクスト
• Ryutaro Miyashita
• @ryugoo_
• ChatWork (元 ネクスト ( ゚д゚ ) )
• Mobile App Engineer
• Titanium, Objective-C, Java
Who?
第1回 Swift 勉強会 @ ネクスト
Appcelerator Titanium™
第1回 Swift 勉強会 @ ネクスト
JavaScript で iOS / Android ネイティブアプリ
第1回 Swift 勉強会 @ ネクスト
var str = 'Hello!';	
var btn = Ti.UI.createButton({	
text: str	
});	
var view = Ti.UI.createView({	
backgroundColor: '#FFFFFF'	
});	
view.add(btn);	
win.add(view);
第1回 Swift 勉強会 @ ネクスト
• 比較的簡単
• ネイティブ UI
• iOS は結構良い
• パフォーマンス
• Android が辛い
Pros
Cons
第1回 Swift 勉強会 @ ネクスト
iOS だけ Titanium
Android は Java
→ Titanium のメリット薄
第1回 Swift 勉強会 @ ネクスト
iOS は Swift
Android は Java
→ Objective-C 以外の選択肢
第1回 Swift 勉強会 @ ネクスト
let str = "Hello!"	
let btn = UIButton()	
btn.setTitle(	
str,	
forState: UIControlState.Normal	
)	
let view = UIView()	
view.addSubview(btn)	
self.view.addSubview(view)
第1回 Swift 勉強会 @ ネクスト
おお ……
第1回 Swift 勉強会 @ ネクスト
NSString *str = @"Hello";	
UIButton *btn = [[UIButton alloc] init];	
[btn setTitle:str	
forState:UIControlStateNormal];	
UIView *view = [[UIView alloc] init];	
[view addSubview:btn];	
[self.view addSubview:view];
第1回 Swift 勉強会 @ ネクスト
読みやすい ……
* http://goo.gl/cTZUjI / 第1回 Swift 勉強会 @ ネクスト
• コードが読みやすい
• どこかで見たことある文法
Pros
(JavaScript, ActionScript, Python, Kotlin, Go …… )
• Xcode 6 がまだバグだらけ
• [unowned self]
Cons
(せっかくクロージャらしいクロージャ書けるのに *)
第1回 Swift 勉強会 @ ネクスト
読みやすいは正義!
(※ 書きやすさは Xcode 先生の進化にご期待ください)
第1回 Swift 勉強会 @ ネクスト
ありがとうございました

Titanium ユーザーが Swift を触ってみたら

  • 1.
  • 2.
    第1回 Swift 勉強会@ ネクスト • Ryutaro Miyashita • @ryugoo_ • ChatWork (元 ネクスト ( ゚д゚ ) ) • Mobile App Engineer • Titanium, Objective-C, Java Who?
  • 3.
    第1回 Swift 勉強会@ ネクスト Appcelerator Titanium™
  • 4.
    第1回 Swift 勉強会@ ネクスト JavaScript で iOS / Android ネイティブアプリ
  • 5.
    第1回 Swift 勉強会@ ネクスト var str = 'Hello!'; var btn = Ti.UI.createButton({ text: str }); var view = Ti.UI.createView({ backgroundColor: '#FFFFFF' }); view.add(btn); win.add(view);
  • 6.
    第1回 Swift 勉強会@ ネクスト • 比較的簡単 • ネイティブ UI • iOS は結構良い • パフォーマンス • Android が辛い Pros Cons
  • 7.
    第1回 Swift 勉強会@ ネクスト iOS だけ Titanium Android は Java → Titanium のメリット薄
  • 8.
    第1回 Swift 勉強会@ ネクスト iOS は Swift Android は Java → Objective-C 以外の選択肢
  • 9.
    第1回 Swift 勉強会@ ネクスト let str = "Hello!" let btn = UIButton() btn.setTitle( str, forState: UIControlState.Normal ) let view = UIView() view.addSubview(btn) self.view.addSubview(view)
  • 10.
    第1回 Swift 勉強会@ ネクスト おお ……
  • 11.
    第1回 Swift 勉強会@ ネクスト NSString *str = @"Hello"; UIButton *btn = [[UIButton alloc] init]; [btn setTitle:str forState:UIControlStateNormal]; UIView *view = [[UIView alloc] init]; [view addSubview:btn]; [self.view addSubview:view];
  • 12.
    第1回 Swift 勉強会@ ネクスト 読みやすい ……
  • 13.
    * http://goo.gl/cTZUjI /第1回 Swift 勉強会 @ ネクスト • コードが読みやすい • どこかで見たことある文法 Pros (JavaScript, ActionScript, Python, Kotlin, Go …… ) • Xcode 6 がまだバグだらけ • [unowned self] Cons (せっかくクロージャらしいクロージャ書けるのに *)
  • 14.
    第1回 Swift 勉強会@ ネクスト 読みやすいは正義! (※ 書きやすさは Xcode 先生の進化にご期待ください)
  • 15.
    第1回 Swift 勉強会@ ネクスト ありがとうございました