【Titanium】Alloy vs Classic

titanium_alloy_vs_classic2年前にAlloyを試してみたけど、未だにClassicな書き方をしている私。そろそろAlloyも成熟してきたころだと思い調査したときの覚書。

環境:Titanium SDK 3.3.0.GA

私がクラシックな書き方をしている理由(言い訳)を考えてみた。

  • Alloyも結局クラシックなコードに変換している。だったら最初からクラシックな書き方でいいと思う
  • WEB開発で複数言語(PHP, HTML, CSS, JavaScript)から開放されたと思ったのに、やっぱりXMLとかCSSっぽいのを書かないといけないの?
  • CommonJSの考え方でサーバー側(NodeJS)とクライアント側(Titanium)をJavaScriptで書いているのが気持ちいい
  • Alloyにバグがあったら見つけるのも直すのも大変そう(まだAlloyを信用できない)
  • クラシックだとひとつの画面はひとつのJavaScriptファイルで完結するので管理しやすい
  • 今作っているアプリはサーバーと連携するクライアントアプリ。ビジネスロジックは全部サーバー側にあるので、MVCでいうところのViewをTitaniumで開発している感覚。さらにMVCで開発するほど大規模なアプリは今のところない。
  • 自分の中で確立した書き方から脱却するのが億劫

 

世間ではAlloyで開発するべきだという意見が一般的。

ベストアンサーを日本語訳してみた

  • Alloyは一般的な方法と統一したコードを提供する。これは他のAlloyプロジェクトの開発者や新規開発者が理解するのに容易。
  • Alloyは便利で役に立つたくさんのレイアウトショートカットを提供しているので、より早く開発することが出来る。我々のセールスチームは70%のコードを削減できた。これはたぶんベストな例だけど、Alloyアプリでたくさんのコード削減できる。
  • Alloyアプリは各プラットフォームに最適なコードと追加ツールを提供するのでクラシックなアプリよりも動作が速い。
  • Alloyは横長のアプリを作ったり、テーマを作ったり、再利用するコンポーネントを作るのに便利。これらはクラシックコードだと別々なカスタムソリューションが必要となる。
  • AlloyはMVCの原則に従って均一なコードを書くのを手助けしてくれる。これは前述したように開発をスピードアップする。しかもメンテナンスしやすいコードを書くのも手助けしてくれるため、トータルコストを削減する。そしてそういうコードはバグも少ない。
  • Alloyは一貫したディレクトリ構造を提供する。この構造はプロジェクト間でも変わらないし、入れ替わる開発者にとっても一貫したもの。
  • ほとんどのサンプルアプリやドキュメントはAlloyから先に作られる。ほとんどの新しいコミュニティで開発されるコンポーネントはAlloyのウィジェット。クラシック指向のコードではない。
  • 全ての拡張モジュールはクラシックなプロジェクトでも使える

 

全くスキがない。

今度新しいアプリを作るときはAlloyを使おうと思ってきた。

 

< Related Posts >