アプリ開発〜公開までの大まかな流れ
スマホアプリが実際に公開されるまでの大まかな流れは、次のようになります。
※OSやアプリの作成方法により、順番や必要な手順が異なる場合があります。
- 作りたいアプリを考えて設計・デザインする
- アプリのアイコンをデザインし、アイコン画像を作成する
- その他、アプリで使用する画像を作成する
- 設計に沿ってプログラミングする(コーディング)
- 広告を入れたい場合、広告の設定を行う
- 完成したアプリをビルドして、スクリーンショットを撮る
- スクリーンショットを元に、規定に沿ったアプリ紹介画像を作成する
- ストアのディベロッパーページで必要な基本設定を行う
- 適切な形式でストアに公開申請する
この流れを見るだけでも、「プログラミングスキルは必要だけれど、それだけではダメそうだ」ということが想像できるかと思います。
たとえば、アプリの設計に関していえば、アプリの使いやすさ(=UIデザイン)の知識も必要となりますよね。
また、アイコン画像やアプリの紹介画像の作成に関しては、Photoshopなどのデザインツールを扱うスキルも求められます。
苦手な分野は誰か他の人に頼む(外注する)という手もありますが、外注すると当然ですがその分だけ費用が余計にかかってしまうことになります。
ちゃんとしたところで、ちゃんとした人に依頼すると、アプリの小さなアイコン画像のデザインだけでも1万円程度はかかると認識しておいた方が良いでしょう。(※あくまで目安ですが)
なので、現実的には『できることなら外注したいけど、費用を抑えるために自分でやるしかない』という状況が多いのではないでしょうか。
そして、できるだけ自分でやるとなれば、それだけたくさんの壁が立ちはだかることとなります。
次の章からは、『スマホアプリの個人開発にはどんな壁があるのか?』について、詳しく見ていきたいと思います。
POINT!
- ・スマホアプリの個人開発の過程は、設計からコーディング、デザインまで多岐にわたる!
- ・アイコン画像の作成など、プログラミング以外のスキルが求められる部分もある!
- ・費用を考えると、外注に頼るのはあまり現実的とは言えないケースも多い(はず)!
第一の壁:アプリの企画・設計
アプリを作るには、オリジナリティがあって、誰かの役に立つようなアプリを考えるところから始める必要があります。
既に存在するアプリと全く同じようなものや、何の役にも立たないような低クオリティのものでは、ストアの審査に通らない可能性が高くなってしまうでしょう。
たとえば、プログラミングのスクールや参考書を使った学習では、シンプルなメモアプリやToDoアプリを作ることが多いかと思いますが、こういった学習の過程で作るアプリではオリジナリティが足りませんよね。
ただ単にメモができるだけ、ただToDoを管理できるだけ…といったアプリは既にありふれているため、そこに何かオリジナルな機能を追加するなど、一工夫を加えてアプリを設計する必要があります。
よって、アプリを設計する過程では、プログラミングスキルの他にも想像力や独創性、アイデアを出してまとめる力、需要(ニーズ)を調査するリサーチ力なども必要と言えるでしょう。
また、アプリ設計の過程ではデザインスキルも求められます。
個人開発の場合、デザインは自分の頭の中に入っていれば良いので、本格的なデザインツールを使ってキレイにモックアップを作る必要はありませんが、シンプルなデザイン案を作成できるぐらいのスキルは必要です。
また、見た目が良いという意味でのデザインだけではなく、多くの人にとって使いやすいデザイン(UIデザイン)の知識もあった方が良いでしょう。
なので、プログラミングが好きでも次のような特徴に当てはまる人は、スマホアプリの個人開発には向かない可能性があると思います。
- ・オリジナルな物を考えるのが苦手、アイデアを出すのが苦手
- ・デザインには全く興味がない、とにかくデザインが苦手
ちなみに、オリジナリティに関しては、誰も考えつかないような素晴らしいものでなければならないということではありません。
『こんなアプリを作りたい』と思っても、似たようなアプリが既に存在する場合も多いですし、実際に似たようなアプリがストアに並んでいますよね。
なので、完全にオリジナルなものを作る必要があるというよりも、既存のアプリと全く同じにはならないように改良を加えてみたり、他のアプリにはないシステムを取り入れてみたりして、差別化する必要があると考えると良いかと思います。
POINT!
- ・既存のアプリと全く同じようなものは、審査に通らない可能性が高くなる!
- ・なので、アプリの設計にあったっては、独創性や市場のリサーチ力も必要!
- ・使いやすいアプリにするためには、UIデザインの知識なども求められる!
第二の壁:プログラミングの壁
アプリを制作するには、当然ですがプログラムコードを記述していく(コーディング)必要があります。
Webサイト制作の場合、CMS(WordPressやWixなど)を利用すれば、プログラミングの知識がなくてもそれなりのサイトを制作することができますが、スマホアプリの場合はそうはいきません。
スマホアプリ制作の場合、「ちょっとプログラミングが分かる」とか、「基礎だけ習った」という程度では、正直難しいと思います。
また、プログラミングの参考書を一通りやり終えたというレベルでも、まだ少し足りないかなと筆者は感じます。
というのも、プログラミングの参考書には、簡単なアプリの作成方法(サンプル)が載っていることが多いですが、これらはあくまでサンプルであり、そのままでは本番で使えないケースが多いからです。
たとえば、データの永久保存・削除までカバーしていないもの(アプリを終了するとデータがリセットされてしまう)や、セキュリティの問題までカバーしていないものなど、大事なところが抜けているサンプルもよく目にします。
なので、スマホアプリを個人開発するには、プログラミングの参考書を一通り理解した上で、さらにサンプルコードを自力で改良できるぐらいの実力が必要かなと思います。
また、プログラミングの参考書を使った勉強では、指定通りにプログラムコードを書けばエラーは起こりませんし、起こったとしても入力ミスをした場所を探して書き直せばエラーは解決できるでしょう。
しかし、個人開発の場合は、自力でエラーの原因を突き止めてエラーを解決していかなければなりません。なので、プログラムコードを書けるというだけでなく、エラーに適切に対応できる力も大切です。
スマホアプリ開発に必要なプログラミングのレベルとしては、やや抽象的な表現にはなりますが、『プログラミング初心者には正直ちょっと難しい。中級者ぐらいにはなれたという自覚ができてからチャレンジした方が良いかも』というふうに、筆者は考えています。
POINT!
- ・スマホアプリ制作には、それなり(中級以上)のプログラミングスキルが必要だと認識しておいた方が良いかも!
- ・プログラミングの参考書を一通りやり終えて、さらにサンプルコードを自力で改良できるぐらいの実力が目安!
- ・エラーが起こったときも、落ち着いてエラーの原因を突き止めて解決できる力が求められる!
第三の壁:画像作成・デザイン
スマホアプリを公開するには、最低でも次の画像を用意する必要があります。
- ・アプリのアイコン画像
- ・スプラッシュ画像
- ・アプリのスクリーンショット(アプリ紹介)画像
アプリのアイコンはスマホの画面に小さなサイズで表示されるので、見やすくて分かりやすいデザインが求められます。
できれば、アイコンを見るだけでどんなアプリなのかイメージできるようなものがベストでしょう。
ですが、そういったハイクオリティなアイコン画像を自力でデザインするのは至難の業です。
前述したように、外注すれば少なくとも1万円はかかると言えるぐらい、専門的で奥が深い分野です。
また、アプリのスクリーンショット画像に関しても、単にスクリーンショットを撮ってアップロードすれば良いというわけではなく、アプリの魅力や機能が伝わるようにキャッチコピーを入れたりなど、しっかりとデザインする必要があります。
さらに、アイコン画像もスクリーンショット画像も、ストアのルール(掲載して良い内容や、画像のサイズなど)をよく確認した上で、それに従って作成する必要があります。
以上を踏まえると、『ちょっとした画像ぐらいなら自作できる』というデザインレベルでは、やや不安が残ります。
筆者の感覚的に言えば、できればPhotoshopなどのデザインツールの基本機能を一通り使いこなせるスキルはあった方が良いかなという感じです。
もちろん、プロのデザイナーに匹敵するほどのレベルは必要ありませんが、最低でも、何らかのデザインツールやテンプレートを使って、規定のサイズで画像を書き出せるぐらいのスキルは必要と言えるでしょう。
POINT!
- ・スマホアプリ制作では、画像を作成しなければならない機会も多い!
- ・アイコンはシンプルで見やすく、アプリの特徴を表すものが望ましい!
- ・ストアのルールに従って適切に画像を作成する必要があるので、やや難易度が高い!
その他の壁
スマホアプリ作成にあたって立ちはだかる壁はまだまだあるのですが、ここでは『その他の壁』として、まとめて簡単にご紹介したいと思います。
広告掲載の壁
WebサイトにGoogleの広告(AdSense)を掲載するには、ページにコードを埋め込めば良いだけですし、自動で広告を入れてくれる機能もあるので、サイトが審査に通りさえすればかなり簡単に設定できます。
一方、スマホアプリにGoogleの広告(AdMob)を掲載するには、やや複雑な設定を乗り越えなければなりません。
広告の種類や掲載方法(広告が現れるタイミングの指定など)も色々あるので、掲載難易度ははっきり言ってWebサイトより数段上です。
スマホアプリを作って広告収入を得たいと考えている場合は、アプリの制作方法だけでなく広告の掲載方法も調べてみて、今の自分の実力でできそうかどうかを事前に調査しておくと良いと思います。
アプリビルドの壁
Webサイトの場合、HTML/CSSファイルさえ作ってしまえばページを表示できますし、それをサーバーにアップするだけで一応はWebサイトを完成させられます。
しかし、スマホアプリの場合は、プログラムファイルの完成=アプリの完成ではありません。
プログラムコードを書き上げてファイルが完成したら、そこからビルドして実機やシミュレーターにインストールできる状態にする必要があります。
アプリの規模や作成方法にもよりますが、アプリのビルドには時間がかかりますし、エラーでビルドに失敗することもあるので、トントン拍子では進まないこともあります。
Webサイト制作の流れに慣れていると、このあたりの処理でつまずいたり、戸惑ったりすることも考えられるので注意が必要でしょう。
プライバシーポリシーの壁
スマホアプリをストアで公開するには、プライバシーポリシーページを用意して、ユーザーがプライバシーポリシーを確認できるようにすることが必須となっています。
アプリで個人情報を収集しない・扱わないものであれば、簡易的なもので十分かと思いますが、それでも『プライバシーポリシーを用意しない(省く)』という事はできません。
個人情報を扱うアプリであれば、個人情報保護法などの法律についても把握しておく必要があります。
ストア審査の壁
Google Playストア(Android)でも、App Store(iOS)でも、アプリを公開するには審査を通過しなければなりません。
特にApp Storeの方は審査が厳しめであると言われており、クオリティが低すぎるものは審査に通過しないと思っておいた方が良いかと思います。
たとえば、ユーザーが入力した文字列を表示するだけのアプリとか、今日の日付を表示するだけのアプリとか、そういったアプリは審査を通過できないと考えられます。
どんなクオリティのものでも公開に制限がないWebサイトと比べると、スマホアプリの公開のハードルは少し高めであると言えます。
語学の壁
特にApp Storeの方で顕著なのですが、開発者に向けた情報ページが英語版のみということが多いです。
また、App Storeの審査で不合格になった(リジェクトされた)場合、その根拠をちゃんと教えてくれるのですが、文章は全て英語です。
今は翻訳ツールが優秀かつ便利になっているので大した問題ではないのですが、英語を見るだけで拒否反応が出てしまうような人にとっては、スマホアプリ開発は難しいかもしれません。
POINT!
- ・スマホアプリの個人開発には、プログラミングやデザインの他にも様々な壁が立ちはだかる!
- ・アプリへのGoogle広告の掲載は、Webサイトよりも難易度が高いので事前に調べておこう!
- ・英語の文章を理解しないといけない機会も多いので、翻訳ツールを使いこなせることも重要!
スマホアプリ制作とWebサイト制作の難易度比較
ぶっちゃけ、スマホアプリ制作とWebサイト制作、どちらが難しいのでしょうか?
残念ながら、この質問に明確な答えを出すことはできません。
筆者はどちらも経験しましたが、それぞれ必要な知識やスキルが異なるので、単純に難易度を比較することは難しいと思います。
ただ、『初心者が作りやすいのはどちらか?』と聞かれれば、2023年3月時点においていえば、Webサイト制作の方がハードルはだいぶ低いと思います。
と言うのも、WebサイトであればWordPress+テンプレート(テーマ)を利用すれば、テンプレート通りにテキストと画像を埋め込むだけでも、わりと良い感じのサイトが作れるからです。
Webサイト作成支援ツール・サービスの選択肢も、WordPressだけでなく、ペライチ、Wixなど色々あり、自分に合ったものを選べます。
また、サービスの多くが日本語対応しているので、言語の違いによるハンデを感じることはほとんどないでしょう。
最初はテンプレートで作ってみて、慣れてきたらHTML/CSSの簡単なカスタマイズをやってみる…といったこともやりやすいです。
一方、スマホアプリ制作の場合、WordPressのような、誰でも簡単に制作できるツールやサービスが一般的に広まっているとはまだ言えないと感じます。
また、Webサイトの場合はコンテンツ(文章と画像)だけでも十分に勝負できますが、スマホアプリはあくまで『アプリケーション』なので、何らかの機能を持たせる必要があると言えます。
文章と画像だけでも成立するWebサイトと比較すると、スマホアプリは機能に特化する必要性が高く、どうしてもプログラムが複雑になりがちです。(だからこそ、WordPressやペライチのようなテンプレート化が難しいのかもしれません)
さらに、前章の『語学の壁』のところでも述べたとおり、情報が英語でしか得られない場合も多いので、なおさら初心者には難しいかと思います。
その上、ストアに公開するのにも審査をクリアしなければならないので、『とりあえず作って公開してみる』までのハードルはけっこう高いと言えるでしょう。
以上から、初心者を対象にするのであれば、『スマホアプリの方が作るのが難しい』と言えるかと思います。
ただ、Webサイト制作もCMSなどのテンプレートに頼らずに高品質・高機能なものを作ろうとすれば、難易度は一気に跳ね上がります。
単純にWebサイト制作の方が簡単だと言っているわけではないので、その点はご注意ください!
POINT!
- ・スマホアプリ制作とWebサイト制作の難易度は、単純に比較できるものではない!
- ・ただし、初心者がとりあえず作って公開するところまで辿り着きやすいのはWebサイト制作!
- ・複雑で高機能なものになると、結局『どちらも難しい』と言える!