ConnectIQでのプログラミング。開発環境が構築できて、サンプルプログラムのインストールまでできたので、いよいよWidgetプログラミングを始めたいと思います。
前回はこちら。
1 プロジェクトの新規構築
Eclipseのファイルメニューから新規-Connect IQ projectを選びます。
すると、ダイアログが表示されるので、プロジェクト名を登録します。インポートしたサンプルプログラムの山に埋もれないように、個性的なプロジェクト名がいいと思います。
次はプロジェクトタイプ。今回はWidgetを選びます。AppVersionは適当に。SDKバージョンは2.4くらいがサポート範囲が広くて自由度も高いので登録します。まあ適当に。
Widgetのタイプ選択です。Simpleしか無いのでこれを選びます。
デバイスのサポートを選びます。持っているForeAthlete945にチェックを入れて、完了を押します。複数持っている場合、サポート機種を増やす場合には、いくつか選ぶこともできます。
これで、新しいプロジェクトができました。左側のプロジェクトエクスプローラに表示されます。
ソースコードは2本表示されてます。AppがWidgetのアプリ本体。Viewが表示用のソースになります。
というわけで、試しにコンパイルしてそのままシミュレータで動かしてみます。MonkeyCのお猿さんが表示されます。ちなみに何をしても動きません。コード書いてないですからね。
2 コンソールに出力してみる
新しいプロジェクトの表示用のクラス。[プロジェクト名]App.mcを見ると、4つのメソッドが実装されています。
おきまりのHelloWorldを出してみましょう。
using Toybox.System as Sys;
これを頭に入れておきます。これで、Toybox.SystemをSysで代用できます。Javaの#includeと似たようなものですね。もちろん、フルパスを書いてもいいんです。
function initialize() {
//ここにコンソールに表示する一文を挿入。
Sys.println("Hello MonkeyC World");
AppBase.initialize();}
さて、実行してみます。実行前にソースを保存するのを忘れないようにします。保存してから、バックグラウンドでビルドが行われて反映されます。
おー動いた動いた。
3 文法
MonkeyCは、Javaと同じようにCの派生言語ということもあって、Javaと似ています。文法はほとんど同じ。予約語はちょっと違ってはいますが、特に違和感なく使えます。Objective-Cよりとっつきやすい。JavaとかC++とかObjective-Cなんかを使ったことがあれば、すぐに慣れると思います。
で、Javaとかと違うのが、これ。
var obscurityFlags;
変数宣言時に型宣言が不要というところです。ここだけはJavaScriptっぽいです。最初に代入した時に型が決まるみたいです。また、Java風に言うと、プリミティブ型の変数は無くて、全てオブジェクト型の変数だそうです。
まあ、詳しくはこちら。私は英文を読み込む元気はないので、Google翻訳でみてます。
まだまだ続きます。