数字カウントソフトを作成
2008年、iPhone 3Gの発売と同時に、OS X用ソフトウェアの開発キットをもとにして、iOS用アプリケーションの開発キットが無償公開されました。そして、それに合わせて全世界に向けてアプリケーションを公開できる「アップストア」がスタートしたのです。
その後、iOSアプリの開発者が爆発的に増えていったのは、記憶に新しいことでしょう。そして、開発者の声を受けてiOSアプリの開発キットにさまざまな改良が加えられ、さらにその良いところがOS X用ソフトウェアの開発キットにも逆輸入され、現在、Macソフトの開発環境もとても強力なものになっています。
というわけで、これまで本連載ではスウィフトを使ってiOSアプリを作ってきましたが、今回からは趣向を変えて「Macソフト」を作ってみたいと思います。まずは肩慣らしとして、バードウォッチングに使うような、簡単な「数字カウントソフト」を作ってみましょう。
【STEP 1】ソフトの基本部分を作ろう
Macソフト開発の最初の手順はiPhoneのときと同じ。Xcodeで新しいソフトのためのプロジェクトを作ります。メニューから[File]→[New]→[Project]と選択して、左側のリストから[OS X]の[Application]を選び、右側の一覧から[Cocoa Application]を選択します。
次の設定画面では、[Product Name]には「Click Counter」、[Organization Name]に自分の名前、[Organization Identifier]に「mytest」と入力して、[Language]には「Swift」を選択します。その下にチェックボックスがいくつか並んでいますが、図のように[Use Storyboards]のチェックだけオンにして、ほかのチェックは外しておいてください。最後に[Next]ボタンを押し、その次の画面で[Create]ボタンを押して、プロジェクトの作成を完了させましょう。
ウインドウ左のプロジェクトナビゲータから、[Main.storyboard]を選択して、ソフトの見た目を編集します。iPhoneアプリと同じように、開発手順は「見た目の準備」→「動きの実装」となります。
【STEP 2】見た目の準備
画面右下のライブラリ領域から、[Label]という部品をドラッグしてビューに貼り付けます。貼り付けた部品はウインドウの中央に移動させます。ぴったりと中央の位置に来ると、図のように補助線が出るので、正しく配置できたことがわかります。
次に、画面右上のインスペクタ領域で、テキストの見た目を設定します。大きめの太字で、中央寄せで表示されるように、[Alignment]と[Font]を図のように設定してください。フォントの設定を変更するたびに部品をドラッグして、ウインドウの中央に移動し直します。
【STEP 3】ソフトの動きを実装する
画面左側のファイル一覧から、[ViewController.swift]を選択して編集します。
↓
ラベルを参照するための変数を追加します。iOSではラベルを表すクラスは「UILabel」という名前でしたが、Macでは「NSTextField」という名前のクラスになるので、その型の変数を宣言します。viewDidLoad()メソッドの下部に、その変数を初期化するためのコードを追加します。ラベルには数値を設定するためのintValueというプロパティがありますので、そこに0を代入します。
↓
[ViewController.swift]の一番下に、マウスを押したときに呼び出すmouseDown()メソッドの実装を書きます。これはiOSにおけるtouch
Began()メソッドとよく似ています。マウスを押すたびに、ラベルに表示されている現在の数値を取得して、それに1を足した値をラベルに書き戻します。
↓
画面左上にある三角形の実行ボタンを押すと、ソフトの実行が開始されます。画面の好きなところをクリックするたびに、カウントが加算されていきます。
↓
このままだと、ウインドウのサイズを変更するとラベルの位置が変わってしまいます。常にウインドウの中央に表示するためには、追加の設定が必要になるのです。[Main.stroyboard]でラベルを選択し、メニューから[Editor]→[Resolve Auto Layout Issues]→[Reset to Suggested Constraints]を実行してください。これでソフトが完成です!
【まとめ】
こうして少しのコードを書くだけで、iOSアプリを作るのとまったく同じ手順で、Macソフトを作ることができました。次回からはさまざまな種類の実用的なMacソフトを作っていきたいと思います。
次回のテーマ
Mac用の世界時計ソフトを作ってみよう
今回のサンプルデータは以下よりダウンロードください。
●サンプルコードURL●
http://bit.ly/1SRRJfH
【冒険記】
筆者のファーストMacは、2002年に買ったiMac(G4)でした。白い半球形のボディから伸びたディスプレイを指でつかんで好きな角度に動かせるかわいいデザインのこのMacは「首振りMac」と呼ばれ、部屋に置いてあるだけで楽しくなる素敵なマシンです。
【冒険記】
い最近、自分の部屋を整理するときに、この首振りMacを泣く泣く処分してしまいました。思い出のマシンだったので、お別れするのが辛かったです。皆さんがはじめて買ったのは、どんなMacでしたか?
Dr.さざめき(aka.沼田哲史)
1978年1月生まれ。某大学でプログラミングを教えつつ、ふらっとヨーロッパ旅行に出かけて美味しいものを食べ歩いたり、時折、iOSプログラミングの本を出したり。Mac歴16年。いつかアメリカ西海岸でお昼から美味しいIPAビールを飲みながらプログラミングするのが夢です。Twitter @sazameki