長い間iPhoneの仕事をしていたので、MacでのCocoa開発に戻ってきました。MacでのCocoaでの私の以前の経験は、ちょっとした小さなツールでした。何か真面目なものを作りたいと思っています。
iPhoto(またはMailまたはThingsなど)のような最新のCocoaアプリケーションを見ると、多くのアプリはシングルウィンドウ、ソースリストベースのアプローチを使用しています。それは良い経験を提供するように思われるので、私はできる限りその周りに頭を包み込もうとしています。しかし、私は少し問題を抱えています。これが私がどのように見えるべきだと思うかですが、私は他の人がそれをどのようにやっているのか、そして本当に最良の方法は何であるか疑問に思っています:
アプリの開始点はAppDelegateオブジェクトであり、起動後、ペン先からWindow [Controller?]を作成し、そのデータをセットアップします(たとえば、CoreDataから)
WindowControllerは、基本的にNSSplitViewを含むウィンドウをロードします。
分割ビューの左側には、SourceListスタイルを持つように設定されたNSTableViewまたはNSOutlineViewがあります。
右側には、テーブルビューのどのアイテムが選択されているかに応じて、アプリのメインコンテンツが表示されます。
どこかに(どこに?)右側に表示されるさまざまなビューのそれぞれを管理するNSViewControllersがあると思います(iPhotoにすべての写真、イベント、顔、場所などがあり、それらはすべて異なるペン先に表示される可能性があると思います) ... これは正しいです?)。
これらのビューコントローラは、おそらく左側のソースリストにバインドされています。これはどのように機能しますか(ソースリストはNSViewControllersのNSArrayControllerによってサポートされている可能性がありますか?)。
とにかく、それは私の考えです、私は完全にオフベースですか...?私はウェブを見回し、この投稿をここで見つけました。そして、いくつかのAppleソースコードを見ましたが、頭を包み込むことができないようです。どんな指導も歓迎します。