モバイル開発においてスピード感が不可欠な理由
モバイル開発は短期間に開発を終える必要がある。それは開発対象であるデバイス自体のライフサイクルがWindowsなどのデスクトップ、サーバー系の開発より短期間で回ることに起因する。
その短周期のライフサイクルの結果、開発途中でOSや開発ツールなどが更新されてしまうことはよくある。一旦始めたら開発完了まで同じバージョンを使い続けないと動いていたものが動かなくなることもあり得る。少なくともストアで受理してくれる限り、着手時と同じバージョンで続けるのが普通だ。
モバイルOSのライフサイクルの短さ!
どれだけライフサイクルが違うかWindowsと比べて見よう。
初代iPhoneのリリースはJune 29, 2007、AndroidはSeptember 23, 2008。この時のWindowsはまだVista。Microsoftがメインを98路線からNT(New Technology)路線に切り替えて5が2000、5.1がXP、Vistaは6.0だ。
その後の7,8.0,8.1はNT6.1, NT6.2, NT6.3。今の10で当時から4代目である。NT7.0にしなかったのはWindows 7と混同されるからかも知れない。8.1を9だと思えばちょうど10である。
一方のiOSは今や14.5.1、AndroidもGoogleの端末中心に11。途中の0.1台のメジャーアップデートを数えたら一体何代目なのか分からない位だ。
OS | OSバージョンとリリース日 | 現在のバージョン |
---|---|---|
Windows | Vista(NT 6.0): January 30, 2007 | 10 |
Android | Android 1.0: September 23, 2008 | 11 |
iOS | iPhone OS 1.0: June 29, 2007 | 14.5.1 |
OSに加えて開発ツールのXcodeやAndroid Studioの更新もある。
サーバーにせよデスクトップパソコンにせよ、一度買ったら何年か使い続ける。特に企業向けサーバーなどはそうだ。そういうプロダクトと同じ時間感覚で開発をしていると、あっという間に浦島太郎になりかねない。
まとめ
モバイル開発では対象のデバイスのライフサイクルが短周期だからその上でのアプリ開発の開発サイクルも短くしなくてはいけない。アジャイル開発が多く採用されるのもそういう事情があるだろう。