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

090821 Ruby Sapporo Night Ruby Cocoa

1,382 views

Published on

Published in: Technology, Education
  • Be the first to comment

090821 Ruby Sapporo Night Ruby Cocoa

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

×