こんにちは、プロクラスの國府です!
とあるプロジェクトのアプリ開発に、ionicを使っています。
これは、ハイブリッドアプリの開発に使われる技術の1つで、
この技術1つで、iPhoneもAndroidも両方のアプリが作れます。
ハイブリッドアプリの対にある技術として、ネイティブアプリがあります。
こちらは、1つの技術で起動できるOSが限定されてしまいます。
まとめると、次のような感じになります。
ハイブリッドアプリ
iPhone, Androidの両方を作るには、ionic または flutter というツールを使う。
ネイティブアプリ
iPhoneアプリを作るには、swift(新しい)または objective-c(古い)というプログラミング言語を使う。
Androidアプリを作るには、Kotlin(新しい)または Java(古い)というプログラミング言語を使う。
ionicは、Web Viewというブラウザの表示技術を使っているため、iPhoneもAndroidもブラウザが使えるので、
両方のアプリが開発できるわけです。
そのため、HTM, CSS, JavaScriptを使っている方であれば、ネイティブアプリを使うよりも学習コストが少なくなります。
今まで、ionicアプリ開発をしてきて、良かったところと悪かったところをまとめたいと思います。
良かったところ
- 1つの技術で、iPhoneとAndroidの両方が作れるので、開発スケジュールが短かい
- Webベースなので、デザインに柔軟性がある
- Webエンジニアなら、学習ことが少なく済む
悪かったところ
- ionicがHTMLに独自に作ったionタグのデザインを修正するのが難しい
- ionicの更新が速いので、技術が変わるとソースを書き換えなければならない
- ゲームなどの計算処理が多いアプリ開発に向いていない
以上、ionicの紹介でした。これからアプリ開発を行う人の技術選定に役立ててもらえたら、幸いです。