home link download back number special issue

HMDT - Special Issue / Sketch BP / Sketch に見るドキュメントベースアプリケーション


- Case Study -

Sketch に見るドキュメントベースアプリケーション

Cocoa ドキュメントベースアプリケーション

Project Builder を使って新規プロジェクトを作ろうとすると、アシスタントが立ち上がって、いくつかのテンプレートが表示されるでしょ。その中の Cocoa の Application を見てみると、Cocoa Application と Cocoa Document-based Application の 2 種類があるはずだ(Cocoa-Java もあるけど、ここでは省略)。Cocoa Document-based Application とは何だ?

ドキュメントベースアプリケーションは、その名の通り、ドキュメントを扱うことを前提にしたアプリケーションのことだ。Cocoa はそのためのフレームワークを提供しているんだ。その構造は、NSDocument、NSWindowController、NSDocumentController からなる。

Sketch では 1 つの NSDocument と、複数の NSWindowController を提供しているんだ。それぞれを見てみよう。


Sketch に見るドキュメント

Sketch は、ドローオブジェクトを保存するために、NSDocument を継承した SKTDrawDocument を使っているんだ。


書類のタイプ

SKTDrawDocument は、Apple Sketch Graphic Format に結び付けられているんだ。役割は Editor で、拡張子は、".sketch" か ".draw2" だ。書類のタイプは、“ターゲット”のタブを選んで、その中の“アプリケーション設定”のタブの中から確認できるよ。

あと、TIFF と PDF もあるよ。PDF は Mac OS X において標準のファイルフォーマット、TIFF は AppKit で標準でとりあつかえるフォーマット、としての地位を占めているから、追加のコードを書かなくても実装されるよ。

余談だけど、Mac OS X では、書類に拡張子をつけることを求められる。それは賛否両論あるんだけど、Apple のつけ方を見てると、拡張子が長い。.framework とか、.preference とか。これも .sketch だし。拡張子をつける理由は、他のプラットフォームとの互換性を取るためと言ってるのに、こんな長い拡張子は受け入れられるのか?


Home | Link | Download | Back Number | Speciall Issue

Sketch BP

mailto: mkino@xd5.so-net.ne.jp

HMDT