開発
web技術でiOS、Androidアプリを作ろう
mizuno
こんにちは。アルバイトの水野です。
今回はWebの技術を使ってスマホアプリが作れるCordovaについて紹介しようと思います。
スマートフォンのアプリを開発する際iOSであればSwift、AndroidであればJavaというネイティブ開発言語を主に使用します。ですがCordovaという開発フレームワークを使用することでHTML、CSS、JavaScriptを使用してiOSやAndroidなどのスマートフォンアプリを作ることもできます。
Apache Cordovaとは
CordovaはWebviewというWebページを取得・表示することができる機能を内包していて、
基本的にこのWebview上で開発することになります。
ネイティブアプリの中でブラウザであるWebviewを表示し、その中でWebアプリが動作しているのでWeb技術を使用してアプリを作成することができます。
cordovaをインストールして動作させると、index.htmlが用意されているのでその中身を編集することによりアプリの画面を作成することができます。
アプリを開発する際はブラウザ上で開発状況を確認できます。
画面の動きをつけたり、地図をつけたりしたい場合はJavaScriptで実装できます。
スマホのアプリっぽい見た目にしたい時、Onsen UIなどのオープンソースを使用することでUIをネイティブに近づけることができます。例えばスイッチ、ボタン、通知、チェックボックスをつけたい時などCSSコンポーネントからCSSを貼り付けるとネイティブアプリに近い見た目や機能を作ることができます。
Cordovaを使用するメリット・デメリット
メリット
・webの技術が使えるので開発するための学習コストはある程度低くなる
・初心者の場合はネイティブの言語でやるより開発速度が早い
==>私の場合、Hackathonでアプリを作成することになったのですが、一定の期間で作成しなければならなかったのでSwiftを一から勉強するより高速で開発できたと思います。
・OSごとにコードを(ほぼ)分ける必要がない
==>iOSでもAndroidでも基本的には同じコードで機能を実装できます
デメリット
・Webの技術を使用するため、ネイティブよりも機能の実装が難しかったり開発がやりづらい場合がある。
・開発する際にセキュリティの問題を考慮する必要がある
・反応速度が遅いので、ゲームなど速度を求められるものを作るのは厳しい
位置情報、加速度センサー、カメラを使用することもできるので、webの技術を使用しただけであっても面白いアプリを作れるのではないかなと思っています。スマホのアプリを手軽に作ってみたい!という方はぜひ使ってみてください。