アプリ開発に求められる拡張性とは?。第2回|クラウドがアプリの開発、運用効率をあげる

アプリ開発に求められる拡張性とは?。第2回|クラウドがアプリの開発、運用効率をあげる

前回の記事「【アプリ開発に求められる拡張性とは?】第1回|クラウドの拡張性がUXをつくる」ではアプリのUXには実はクラウドが重要で、そのためクラウドの拡張性がアプリのUXに大きな役割を果たしているという話を書きました。今回はさらに別の角度、クラウドによるアプリ開発の効率化、さらには改修や運用時のメリットについてまとめていきたいと思います。

ネイティブアプリ、ハイブリッドアプリ、2つの開発手法

まず、アプリとクラウドの話に入る前に、アプリ開発の方法について整理する必要があります。アプリ開発には大きくネイティブアプリとハイブリッドアプリの2つの方法があります。ざっくりゆうとネイティブアプリはiOSAndroidそれぞれのOSごとに別々のプログラミング言語で開発をします。これに対して、ハイブリッドアプリでは一つのプログラムでiOSAndroidの両OSで動くアプリを一度に開発することが可能です。詳細についてはこちらのサイトに詳しく記載されています。
※ちなみに上記のサイトではクックパッドはハイブリッドアプリだと記載されていますが、こちらのサイトによると「2012年頃にiOS向け、2014年にAndroid向けのネイティブアプリに書き換えた。」そうです。

ランチェスターでもアプリ開発を始めた当初はいろいろな実験を行いました。しかし、結果としては、ネイティブでの実装がベストという判断をしました。

その理由は大きく3つです。

  1. 1. ハイブリッドよりネイティブのほうがサクサクのアプリがつくれる
  2. 2. アニメーションなど、細かな制御がネイティブのほうがやりやすい
  3. 3. OS特有の機能を利用することができる

簡単にいうといいアプリをつくろうとするとネイティブにせざる得ないということです。

アプリ設計のポイントwebviewの利用は最小限に

さて、開発手法のつぎに実は設計にも大きなポイントがあります。

それはネイティブアプリであっても、webviewというアプリ内ブラウザの利用で開発を効率化することが可能だという点です。しかしwebviewを多用することによって、UXが悪くなっているアプリも多く、開発手法だけでなく、設計も重要になってくることがわかります。

ネイティブとwebviewの違いについては教えて!Webviewって何?ネイティブと何が違うの?を御覧ください。

ネイティブアプリの開発と運用を効率化するクラウドの役割

さて、こだわりのサクサクアプリを作ろうとすると、iOSAndroid別々に開発し、かつ、webviewの利用を最小限にする必要があります。とはいえ、可能な限り効率的に開発を行い、変更に強く、運用しやすいアプリにしたいと思うのがエンジニアなわけです。そこでEAPでは、アプリ内のロジックを可能な限り減らすために、クラウドでできることは可能な限りクラウドで処理を一元化し、アプリはアプリでしかできないことに注力する設計になっています。

データ処理はクラウドでおこない、アプリは表現に徹することでiOSAndroidでそれぞれに重複したロジックを実装することを避けています。

これは開発効率を上げるだけでなく、画面の表示項目を変えずに、アルゴリズムを変えるだけであれば、アプリの改修が不要になり、改修にかかるコストが最小化されるメリットもあります。

さらには、アプリに関わる最大の手間?アプリストアへの申請も不要なため、運用における効率化も図ることが可能です。

このように、ネイティブアプリという、最善のUXをうみだす手法を取りながら、開発効率や運用効率まで考慮して設計、実装されているのがEAPの特徴なのです。

このようなこだわりの開発がしたいと思ったエンジニアさん、もしくは、このようなこだわりのアプリを導入したいと思ったマーケターさんなどなど、EAPやランチェスターにご興味を持っていただけのであればお気軽にお声がけください

TAG

  • このエントリーをはてなブックマークに追加
たしろ
代表取締役 たしろ ta4ken

高校球児⇒バスプロ⇒エンジニアと自らの技術研鑽の日々から、組織と3人の子供達を育てる日々に。悩みはつきませんが、楽しくやってます。