42
42

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

クロスプラットフォーム開発の辛み

Last updated at Posted at 2015-04-07

クロスプラットフォーム開発経験

クロスプラットフォームというと主語がでかいですが、Titanium Mobileを指します。

Titanium Mobile開発経験約二年です。
出したアプリiOS6本/Android3本。
(Androidはストアから削除した/された)

最近はTitanium辞めてSwift書いてます。

Titanium Mobileの辛み

  1. クロスプラットフォームは幻想
    • iOSで開発完了→Android対応が容易ではない
    • 自分の場合、iOSにかけた時間の1.5倍くらいは必要だった
    • Android対応あきらめたアプリもある
    • ソースコードの中でiOSとAndroidの切り分けが頻発
  2. バグがあった場合、Titaniumのバグかネイティブのバグかわからない
  3. パフォーマンスがでない、カクカクする
  4. ドキュメントに書いてあるのに動かない
  5. ドキュメントに書いてないのに動く
  6. 黒魔術的なコードを書かないと回避できなかったりする
  7. Titaniumが対応しないと使えないapiがある、選択肢が狭くなってしまう
    • moduleがあればそれを使う、無ければ自分で作るしかない
    • 自分で作る->結局ネイティブの知識が必要
  8. バイナリサイズがでかい
  9. JS、いくらでもクソコードで動いてしまう
    • これは俺が悪い

Titanium Mobileの良かったとこ

  1. 記述量少なかった
    • swiftだと記述増えた、TitaniumはJSONでいい感じに書けた
  2. JSで書ける
  3. 学習コスト低め
  4. ロジックはiOS/Androidで動く
    • UI作るのがツラい

クロスプラットフォーム開発に必要なこと

  1. 工数は半分で済むと思うな
  2. アプリがヒットしたらネイティブで書き直す気持ち
    • 絶対にネイティブで開発したくなる
  3. 地雷を踏み抜く勇気
  4. 折れない心
  5. ネイティブの知識
    • 無くても何とかなる

最後に

クロスプラットフォームの辛みを書きましたが、クロスプラットフォームをディスっているわけではないです。ただ、銀の弾丸ではないということを伝えたかっただけです。

また、個人の技量や経験に大きく左右されます。この内容に共感できる人もいればそうでないひともいるでしょう。

私はTitanium、好きでした。でもつらい。

42
42
3

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
42
42

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?