うさぎ駆動開発

UWP, Xamarin.Macを中心によしなしごとを書いていきます。

<週刊 自分のごちうサーチを作る> #1 プロジェクトを作る

JXUGC #13 Tokyoで登壇しましたが,そこで紹介できなかった細かい実装のポイントを解説していきつつ,Xamarin.Mac を使って一本のアプリケーションを仕上げていく過程を紹介していきたいと思います。

JXUGC の資料と動画はこちらの記事を参照してください。

aile.hatenablog.com

環境の準備

準備するものは下記のとおりです。

  1. OSX 10.9 以降のインストールされたMac (10.11推奨)
  2. Xamarin.Mac + XamarinStudio
  3. GitHub - ksasao/Gochiusearch: A Fast Scene Search Engine for Anime Series 'Gochuumon wa Usagi Desuka?' (適当な場所にmasterをクローンしておく)

XamarinStudio のインストール方法は以前にご紹介しました。

aile.hatenablog.com

紹介した手順ではXamarin.Macのみをインストールすることになりますが,モバイルのXamarinも触ってみようと考えている場合は,普通にUniversal Installerでチェックを入れるだけで済みます。

現時点で最も安定していろいろできるのは,

  • Xamarin Studio 6.0 b5104
  • Xamarin.Mac 2.8.0.294
  • Xcode 7.3.1

の組み合わせです。つまりBetaチャンネルです。この組み合わせであれば PCL4.6 プロファイルが使えますが,Stableでもかまいません。2016/05/11時点ではAlphaはだめです。「チャンネルってなんじゃい」という時点ではインストール状態のままいじる必要はありません。ただアップデートは積極的に適用しましょう。

Gochiusearch をクローンしましたが,このシリーズでは新しいソリューションとプロジェクトを作り,元のレポジトリから適宜参照しつつ作っていきたいと思います。

プロジェクトを作る

さっそくXamarinStudioを立ち上げましょう。左上のNew Solution...をクリックして,Mac Cocoa Appを選択します。 f:id:ailen0ada:20160511222501p:plain

次の画面で,アプリケーション名やターゲットOSバージョンを設定していきます。 f:id:ailen0ada:20160511222707p:plain

  • App Name
    アプリケーション名です。画面上部のメニューや,Dock上,バンドルの名前として表示されます。
  • Organization Identifier
    バンドルIDを生成するのに使われます。URLを逆から並べたような記法が一般的です。アプリケーションの署名などを行う場合には気をつける必要があります。後で変更できますので,悩まなくても大丈夫です。
  • Dock Item
    Dock上の名前,バンドルの名前だけをアプリケーション名と違う表記にすることができます。例えばアプリケーション名が長くてFinder上やLaunchpad上で省略表示されてしまう場合などに有効です。省略表示されてしまうかどうかは,右のプレビューで確認することができます。
  • Extension
    ドキュメントを編集するようなアプリケーションの場合,アプリケーションを識別する拡張子を登録しておくことができます。
  • Target
    動作するOSXの最小バージョンを指定します。あまりにも小さくしてしまうと使用できるAPIが少なくなってしまいます。ここでは10.9で進めます。

指定できたら,次の画面でプロジェクトを実際に作成します。 f:id:ailen0ada:20160511223939p:plain

  • Project Name
    Cocoa Appプロジェクトの名前です。特に変更の必要はありません。
  • Solution Name
    プロジェクトを内包するソリューションの名前を決めます。ここでは特に変更しません。
  • Location
    ソリューションまたはプロジェクトのディレクトリの作成先を指定します。右ペインで実際にどのような構造で作成されるかプレビューできます。
  • Version Control
    作成時点から git 管理下にすることができます。さらにXamarinStudioが使用するメタデータやビルドの中間ファイル,ビルド結果などを無視するように設定した .gitignore を配置できます。

適当に設定できたら,Create ボタンでソリューションを作成して保存しましょう。しばらく待つとAppDelegate.csが開かれた状態になります。 f:id:ailen0ada:20160511224713p:plain

次回予告

作成時点のプロジェクトに含まれているファイルの説明をして,ImageSearchEngineへの参照を追加し,AppDelegate.csで最初にやるべきことを解説します。