Ti.includeに関する実験

2011-03-04
2011-03-05
かなり古い記事です。現在も有効な内容であるかどうか分かりませんのでご注意ください。
  • インクルードしたファイルの内容がそこにそのまま挿入される
  • 何回でもインクルード可能

という特徴を確認するための実験をちょっとしてみた。

a.js
a += 1;
app.js
var a = 0;

Ti.include('a.js');
Ti.include('a.js');
Ti.include('a.js');
Ti.include('a.js');
Ti.include('a.js');

Ti.API.info(a);
// #=> a = 5 になっている 

なるほどねえ、といったかんじ。
これはつまり以下のコードと等価になる。

var a = 0;

a += 1;
a += 1;
a += 1;
a += 1;
a += 1;

Ti.API.info(a);

しかしTi.includeをコードの頭で必要なクラスなどを読み込む場合はいいとして、こんな風にコードの途中で処理を呼ぶ目的で使うのはカオスの予感だ。
処理が複雑になった場合、デバッグ時などにインクルードしたファイルの中で何が変更されているのか追っていくのは心を削る作業になるだろう。

長い一つのapp.jsを単なる処理の固まりごとに(クラスごとにというわけでもなく)複数ファイルに分割してTi.includeで読んでいるようなコードを見たことがあるけど、そういうことはやめた方がいいと思う。
そういう分割の仕方ならapp.jsに全部書いた方がまだマシかと。

Profile

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

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

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

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