アプリ開発の一連の流れ【検討~リリースまで】
💡本記事を読むと、これからアプリ開発を始めようとされている方が、アプリをリリースするまでの流れを把握できます
開発環境の準備やアプリの企画、そして開発・テスト・保守などについて
わかりやすく説明していきたいと思います!
マシンの対応OSについて
アプリを開発するには、「Windows」か「Mac」のPCが必要です。
マシンによって以下のような違いがあります。
PC | 対応OS |
---|---|
Windows | Androidのみ |
Mac | iOS、Android 両方対応 |
上記理由により、Macを選ばれる方が多い印象です。
会社の意向や自分の考え方の変化により、途中からiOSアプリを開発することもあり得ます。
Macに慣れておいた方が、iOS・Androidの開発に携わりやすくなるので、Macを使う事をオススメしています。
動作検証機
アプリの動作結果を確認する際は開発環境に入っているシュミレータを使って動作確認をすることも可能ですが、iOSアプリを作るのであれば、iPhoneの実機。
Androidアプリを作るのであれば、Androidの実機を持っておいた方が良いです。
カメラアプリなどを作る場合、そもそも実機がないと確認できませんし、実機を持っていればPCがない場所でも動作の確認ができます。
実機でテストをしている時の方がアプリを動かすことに集中しているので不具合も見つけやすいです。
ソフトウェア選定
アプリ開発をするには、IDE(Integrated Development Environment) という統合開発環境が必要です。
以下のリンクからIDEをダウンロードできます。
OS | 開発環境 |
---|---|
iOS | X-code |
Android | Android Studio |
IDEは無料でインストールできますが、実機で動作確認したり、ストアにアプリを公開するには開発者登録が必要になります。
以下のサイトから開発者登録が行えます。
OS | 料金 | 開発者登録サイト |
---|---|---|
iOS | 11,800円(年間契約) | Apple Developer Program |
Android | $25(初回のみ) | Android Developer Console |
iOSは毎年契約金を払い続ける必要があります。Androidの場合は一度の登録だけで大丈夫です。
プログラミング言語選定
アプリを動かす為にはプログラミング言語を使ってアプリに命令を出す必要があります。
OS | プログラミング言語 |
---|---|
iOS | SwiftまたはObjective-C |
Android | KotlinまたはJava |
新規でアプリを作るのであれば
iOSの場合はSwift。
Androidの場合はKotlinをオススメします。
Objective-CとJavaは古い言語仕様です。
SwiftとKotlinを使えば短いソースコードでアプリを作ることができます。
実業務でもSwiftとKotlinを使った案件が増えています。
アプリの企画・アイディア出し
初めてのアプリ開発を企画する時は、どんなパーツを使って組み立てるのかという具体的な企画をしていく前に大雑把で良いので何を作りたいかを考えると良いと思います。
考えがまとまったら、そのアプリを作るために必要な方法を調べていきます。
基本的にはIDEが標準で搭載している部品を組み合わせてアプリを作ることになると思います。
作る前に部品を作るためのプログラミングを把握しておく必要はありません。
作っていく過程でその部品を作るためのプログラミングを学べば良いのです。
企画段階ではあまり難しく考えすぎず、自分の考えをまとめてそれを具体的に落とし込んでいきます。
コーディング
ユーザーの反応に応じてアプリが動くようにコーディング(プログラムコードを書く作業)をしていく必要があります。
アプリはリリースしたら終わりではありません。
リリースした後も保守が必要になります。
保守は、ユーザーからの要望を反映したり、アプリに障害が起こった際などの原因究明~復旧作業のことを指します。
最初にリリースしてから、ユーザーからの声を反映し、重ねることで、より使われやすいアプリになります。
ブラッシュアップを重ねることで、最初に想定していたものとは全く違うアプリになることもあるくらいですので、「保守」はとても重要です。
その為、コードを書いた後にリファクタリングをし、後から見直したり機能を追加しやすい状態にしておいた方が良いでしょう。
テスト
コーディングが終わったらテストをし、バグが見つかれば修正します。
コーディングスキルが高くてもこのフェーズを疎かにして、沢山のバグを出す開発者もいます。
バグは出るものだと認識し、自分が作ったものを疑い、何度もテストを繰り返すことで品質担保をします。
ユニットテストによるテストの自動化なども流行っていますが(会社の案件でも導入していますが)、結局人力でのテストをしっかりしないとバグが出ます。
デザイン作成
プロのデザイナーさんは「Photoshop」や「Illustrator」という高価なツールを使ってデザインを作ります。
これらのツールはお金もかかりますし、使いこなすのにも時間がかかりますので、個人でアプリ開発をするのであれば、安価な「Art Text」で充分だと思います。
デザインテンプレートが標準で入っていますし、図形などを組み合わせればそれなりのデザインを自分で作ることもできます。
デザインに時間とお金を一切かけたくないのであれば、ライセンス表記不要の「iconmonstr」を使うと良いでしょう。
「iconmonstr」は画像のバリエーションが豊富なので、このサイトにある画像を使ってアプリを作ることができます。
私も最初は「iconmonstr」を使ってアプリを作っていました。
デザインの工数を削減することでアプリ開発の敷居を下げられます。
オリジナルデザインが作りたくなった時に「Art Text」を使うようになりました。
将来的に開発だけでなく、デザイナーの仕事もしたい場合は
「Photoshop」と「Illustrator」を使えた方が良いと思います。
私の場合、基本的なデザインは「Art Text」を使って作成し、アプリの肝となるアプリのアイコンなどは「99design」でプロのデザイナーさんに発注しています。
「99design」では、複数のデザイナーにコンペをかけられるので、自分好みのアイコンを作ってくれるデザイナーさんに巡り会える可能性が高いです。
相性の良いデザイナーさんが見つかったら個別で仕事を発注できます。
私の代表アプリの文字数カウントメモのアプリアイコンも「99design」で作ってもらっています。
ストア申請
アプリはAppleやGoogleが定めた審査に通過しない限りストアに公開できません。
機能が不十分だと判断されたり、ポリシーに違反したアプリは審査に通りません。
以下のサイトを参考にし、ストアに公開されるようなアプリを作りましょう。
☑ Android Developersリリースチェックリスト
宣伝
アプリをリリースしても、認知されないとアプリは使ってもらえません。
1つでも多くダウンロードされるようにアプリの宣伝を行いましょう。
お金をかけて宣伝すれば効果が出るとは限りません。
むしろ宣伝広告費をかけてもそれを上回る効果を出すのは難しいと考えた方が良いです。
保守(アプリの改善、改良)
アプリはリリースした後、ユーザーから寄せられる要望に対応したり、指摘を受けた不具合を修正することで人気が伸びていきます。
また、OSがバージョンアップしたタイミングでそれまで動いていた機能が動かなくなることもあります。
アプリをリリースしても放置したままにすると誰にも使われず終わってしまいますので、改善点を見つけては修正を繰り返し、アプリを安定して動作させる必要があります。