シングルコンテキストがいいらしい

2011-08-09
2011-08-11
かなり古い記事です。現在も有効な内容であるかどうか分かりませんのでご注意ください。

Titanium BBSに先日出てきた上の話を読むと、今までのサンプルコードでよく見られた

var win;
win = Ti.UI.createWindow({url: "first_win.js"});
win.open();

とurlを指定して新しいWindowを作っていたやり方は今となってはよろしくなくて

var MyApp, win;
Ti.include("first_win.js");
win = MyApp.createFirstWindow();
win.open();

みたいにコンテキストが分かれないように書いていくやり方が推奨らしい。(ソースにあたってませんが)
変数の衝突はネームスペース(上記コードではMyApp)で避けるようにするかんじ。

Tweetaniumのソース あたりがよいサンプルのようだ。

利点と欠点

シングルコンテキストの利点としては

* よりJavaScript的(Titaniumの独自挙動に惑わされずにすむ)
* Window間での変数の共有がやりやすい

といった感じか。

一方で欠点としては

* コードを書くのが若干難しくなる

というものがあると思う。
特に非プログラマにとっては敷居が高い気がする。

まあ変化の速いTitanium界隈で現状そんな話がありますよということで。
マルチコンテキスト、ダメ絶対。とかそういう話ではない。

Profile

フルスタック気味のフリーランスプログラマー。

どちらかと言うと得意はインフラ構築とサーバーサイドプログラミングですが、フロントエンドもぼちぼちやっています。

最近の興味範囲はWordPress、AWS、サーバーレス、UIデザイン。

愛車はセロー。カメラはペンタックス。旅好きです。横浜在住。