私は、テーブルビュー内の個々のセルをNSCellのサブクラスであることが要求されたOS Xバージョン10.6およびそれ以前では http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/TableView/Introduction/Introduction.html
を通過することができお勧めします。このアプローチでは、複雑なカスタムセルを設計するときに制限が生じ、通常は開発者が独自のNSCellサブクラスを作成する必要があります。さらに、進行状況ビューなどのアニメーションを提供することは非常に困難でした。
OS Xバージョン10.7では、テーブルビューが再設計され、ビューを個々のセルとして使用できるようになりました。これらはビューベースのテーブルビューと呼ばれます。ビューベースのテーブルビューでは、Xcode 4.0のInterface Builder部分でカスタムセルをデザインできます。設計が簡単になり、変更をアニメートして図面をカスタマイズすることが容易になります。ビューベースのテーブルビューは、セルベースのテーブルビューと同様に、選択、列のドラッグ、その他のユーザーが期待するテーブルビューの動作をサポートします。唯一の違いは、開発者には設計と実装の柔軟性がはるかに大きいことです。
ビューベースおよびセルベースのテーブルビューの作成とカラムの追加は、Interface Builder内で同じ手法を使用します。この違いは、個々のセルを提供したり、テーブルビューの内容を入力したり、テーブルビューの外観をカスタマイズしたりするときにアプリケーションコードで発生します。同様に、Cocoaバインディング手法は2つの実装間で全く異なります。