Mac用のアプリケーションは開発するのが難しいとよく言われます。
実際、難しいですし、MacOSXでの開発で使うObjective-Cも非常に変態的個性的で習得の壁も高いような気がします。
しかし、最近では少し事情も変わってきてさくさくっと開発できるようにもなってきています(もちろん、その先には大きな壁が立ちはだかってはいるのですけど)。
今回は、CoreDataというフレームワークを使って、コードを書かずに(一行も!)アプリケーションを作ってみます。
まるで魔法のようにアプリケーションが完成するので、ぜひ、実際に手を動かしてみてください。
Xcodeを起動する
まず、開発環境であるXcodeを起動します。
HDD内のDeveloper/Applicationsの中に入っています。
もし、まだXcodeをインストールしていない場合は再度インストールを行う必要があります。
以下のリンク先のドキュメントを参考にして、インストールしてください。
Xcodeインストールガイド: Xcodeインストールガイドについて
プロジェクトの作成
プロジェクトを作成します。
ファイルメニューから、「新規プロジェクト」を選択します。新規プロジェクトアシスタントのダイアログが表示されます。
「Core Data Application」を選択して、「次へ」をクリックします。
今回はプロジェクト名を「IDMemo」とします。IDとパスワードの管理アプリケーションを作ろうと思っています。
最後に「完了」をクリックします。
モデルを作る
これで、プロジェクトが作成できたので、さっそく、このアプリケーションのデータ構造を作ります。
ID管理アプリケーションなので、とりあえず、IDとパスワードを保存できるようにしましょう。
プロジェクトウインドウから、「IDMemo_DataModel.xcdatamodel」を選択して、ダブルクリックします。
左上のエンティティのリストの下の「+」をクリックして、エンティティを追加します。
追加したら、名前を「Item」としてください。
続いて、プロパティを追加します。
プロパティのリストの下の「+」をクリックするとポップアップメニューが出てくるので、「属性を追加」を選択します。
まず、IDを追加します。
名前を「id」に、データ型を「文字列」にします。
同様にパスワードも追加しましょう。
名前を「password」に、データ型を「文字列」にします。
これで、データ構造が定義できました。
ユーザインタフェースを作る
続いて、このデータ構造に基づいて、データ入力およびデータ一覧の画面を作って行きます。
ここからが、「魔法」です。
まず、プロジェクトウインドウから、「MainMenu.nib(Xcodeのバージョンによっては、MainMenu.xibとなっている場合もあります)」を選択してダブルクリックします。MainMenu.nibがInterface Builderで開かれます。
この中から、「Window」を選択して、ダブルクリックします。
まだ何も部品のない空のウインドウが開かれます。
ここに、先ほど作った「Item」モデルを「Option」キーを「押しながら」、このウインドウにドラッグ&ドロップします。
このようなダイアログが表示されるので、いくつか、質問に答えます。
「Master/Detail View」を選択して、「Search Field」、「Detail Fields」、「Add/Remove」の全てにチェックをつけます。「Next」をクリックします。
次の画面では何も変更せずに、「Finish」をクリックします。
これで、ユーザインタフェースが完成してしまいます!
実行してみる
では、実際にアプリケーションを動作させて見ましょう。
プロジェクトウインドウが、モデルデザインウインドウの上部にある「ビルドして進行」ボタンをクリックします。
ファイルを保存するか聞かれるので、「すべてを保存」ボタンをクリックしてください。
これで、ビルドが始まり、アプリケーションが作られます。
実際にデータを追加できますし、検索もできます。
たった、これだけの操作でひとつのアプリケーションが完成してしまうのは驚きです。
使いやすくUIを修正したり、属性として「タイトル」を追加してみたりなど、自分なりの改造も試してみてください。