090821 Ruby Sapporo Night Ruby Cocoa
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
1,608
On Slideshare
1,498
From Embeds
110
Number of Embeds
4

Actions

Shares
Downloads
2
Comments
0
Likes
2

Embeds 110

http://tmaeda.s45.xrea.com 62
http://ruby-sapporo.org 45
http://localhost 2
http://www.slideee.com 1

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. RubyCocoaLiveCoding2009-08-21(Fri.) Ruby Sapporo Night@Apple Store Sapporo まえだ ともき Maeda Tomoki
  • 2. 前田智樹 / MAEDA Tomoki / tmaeda✓Ruby暦10年✓MacおよびMacプログラミング歴15年✓株式会社アンタス勤務✓Ruby札幌運営、RubyKaigiスタッフ✓最近の興味はOCaml、AR(MR)、集合 知プログラミング
  • 3. 今日のお話✓ RubyCocoaとは?✓ MVCのおさらい✓ RubyCocoaでアプリ作成の実演✓ RubyCocoaの仕組み
  • 4. 今日のお話✓ RubyCocoaとは?✓ MVCのおさらい✓ RubyCocoaでアプリ作成の実演✓ RubyCocoaの仕組み
  • 5. RubyCocoa
  • 6. RubyCocoa その前に...
  • 7. Cocoa✓MacOSX用の Cocoaアプリアプリケーション Cocoaフレームワーク Mac OS X✓Objective-Cで書かれている
  • 8. Objective-C✓Cに、Smalltalkから強く影響を受けた動的なオブジェクトシステムを追加した言語
  • 9. RubyCocoa✓RubyとCocoaの間の橋渡しをするブリッジ✓RubyとObjective-Cは性質が似た言語なのでRubyからCocoaを自然な形で利用可能※MacOSX10.5(Leopard)からOSに標準添付
  • 10. 今日のお話✓ RubyCocoaとは?✓ MVCのおさらい✓ RubyCocoaでアプリ作成の実演✓ RubyCocoaの仕組み
  • 11. 今日のお話✓ RubyCocoaとは?✓ MVCのおさらい✓ RubyCocoaでアプリ作成の実演✓ RubyCocoaの仕組み
  • 12. MVC Model ViewController
  • 13. Model✓アプリが扱いたいデータ✓および、そのデータを管理・加工するロジック✓つまりアプリケーションの存在意義✓iTunesなら音楽データの管理、検索、変換、再 生がModelに入れるべきロジック✓メーラーならメールデータ作成、送受信、保 存、検索がModelに入れるべきロジック
  • 14. View✓ 「出力」担当✓ Modelのデータをいろいろな見せ方で表示するのみ✓Modelに対しては基本的にRead Onlyでアクセスする
  • 15. Controller✓ 「入力」担当✓ キーボード、マウスなどから入力を受け取り、それをModel内の適切なロジックに渡す✓ ModelとViewの仲介役
  • 16. MVCのキモ✓アプリケーションのUIとアプリケーションの機能を分離Controller View Model
  • 17. MVCのキモ✓アプリケーションのUIとアプリケーションの機能を分離Controller View MはVやCのこと を知らない Model
  • 18. 今日のお話✓ RubyCocoaとは?✓ MVCのおさらい✓ RubyCocoaでアプリ作成の実演✓ RubyCocoaの仕組み
  • 19. 今日のお話✓ RubyCocoaとは?✓ MVCのおさらい✓ RubyCocoaでアプリ作成の実演✓ RubyCocoaの仕組み
  • 20. 作るものカウンターアプリ
  • 21. 今回のアプリでのMVC ソース上には現れて いないが、nibファイル内で 自動的に設定されている target Controller View ib_outlet :countLabel@counter (@countLabel) Model
  • 22. LiveCoding
  • 23. MVCの効果1:再利用✓VやCは環境に依存するコードになりやすいが、Mの中にVやCに関するコードを書かないので、Mは他の環境(WinやLinux)でも動かしやすい
  • 24. MVCの効果2:テスト✓MがUIと関連しないので、Mに対する自動テストがやりやすい(UIを自動テストでテストするのは困難)
  • 25. 今日のお話✓ RubyCocoaとは?✓ MVCのおさらい✓ RubyCocoaでアプリ作成の実演✓ RubyCocoaの仕組み
  • 26. 今日のお話✓ RubyCocoaとは?✓ MVCのおさらい✓ RubyCocoaでアプリ作成の実演✓ RubyCocoaの仕組み
  • 27. Cocoaアプリの構造 コンパイルされた バイナリ
  • 28. RubyCocoaアプリの構造 コンパイルされた バイナリ (Rubyインタプリタ を内包)
  • 29. 今日のお話✓ RubyCocoaとは?✓ MVCのおさらい✓ RubyCocoaでアプリ作成の実演✓ RubyCocoaの仕組み
  • 30. 日本初!RubyCocoaの書籍毎日コミュニケーションズから2009年9月下旬発売予定 著 高尾宏治 監修 木村渡、中川智史
  • 31. 今日のポイント✓ロジックを極力Mにを集めるようにし ましょう✓M内にはVやCに関連したコードを書 かないようにしましょう✓RubyCocoaアプリはRubyインタ プリタを内包したアプリです✓もうすぐRubyCocoaの本が出ます