初めに
ひとりでアプリを開発するにあたって、直面する問題は "何から始めてよいかわからない" です。まず、どのようなアプリを作るのかによって必要なものやスキルは異なりますが、私の場合をもとに考えてみます。
Index
必要な知識・技術について
アプリ開発をするにあたって、次のものが必要です。
- PC
- テスト用のスマートフォン
- 仕様書
- プログラミングスキル
- 企画力
- 絵や音などの素材
〇ものについて
PCやテスト用のスマートフォンはかなり重要です。当然、Windows, mac, Android, iOSで環境が異なるため、自分の持っていない環境下でのアプリを開発することはハードルが高くなります。しかし、必ずしもできないわけではありません。初心者が何もできない段階でそろえてもできることは多くないので、とりあえずPC1個、スマホ1個、PCとスマホを繋ぐケーブル1個用意しましょう。初めはそれでなんとかなります。なんとかならなくなったら、自分がアプリ開発者として成長したと喜びましょう。設備投資はそれからで遅くありません。
〇スキル面について
仕様書、プログラミングスキル、企画力は自分のスキルになります。私は「この3つの中で何が1番大事ですか?」と問われれば、「全部1番大事」と答えます。どれも避けては通れません。
〇絵や音などの素材について
素材を入手する方法は次の4つです。
- フリー素材を使う
- 有料のものを使う
- 外注する
- 自分で作る
絵が描けたり、BGMが作れたりする方は自分でつくるのが最善です。しかし、すべての素材を自分でつくることはほぼ不可能です。日ごろから素材を探しておくことと自分で作れる素材の幅を広げることが重要でしょう。
何から始めるべきか
私は次のような流れで進めていくのが良いと思います
- 自分が作りたいアプリ像をイメージする
- そのアプリのOSを決める
- 1. 2. で決めたアプリに似ているアプリを探し、作ってみる(検索して作り方が載っているものがよい)
- 自分が作りたいアプリではなく、簡単に作れるアプリを開発しながら、知識を増やし、スキルを磨いていく
まず、自分が作りたいものを決めないことには、始めようがありません。1. 2. で作りたいものとそのOSを決めましょう。ここからプログラミング言語を勉強したり、仕様書の書き方を勉強したりしようと思うかもしれませんが、ここで出来合いのアプリを自分で作ってみましょう。
その理由は2つあります。
1つはアプリを開発する環境を整えるためです。プログラミングなどを勉強する際、実際にプログラムを打って、動かしてみないと意味が薄いです。そのため、一旦アプリの作り方を見ながら環境を整えようということです。
2つめは実際に作ってみなければ学ぶべき内容がわからないためです。たとえばプログラミング言語を学ぼうと思って検索してみると、Python, JavaScript, Ruby, Java, Go, C#, C++, PHPなど多くのプログラミング言語がでてきます。それぞれで用途が異なる上、何を学べばよいのかまったくわかりません。そこで、自分が作りたいものに似ているアプリを作ってみて、そこで使っていたプログラミング言語を学べばよいというわけです。また、訳も分からずプログラミング言語をそのまま打つことになりますが、そのなかで、その言語の構造がなんとなくわかるようになります。そのため、改めて勉強するときに効率よく学ぶことができます。
私(ゲームアプリ開発)の場合
私はゲームアプリが作りたいと思っていました。そこで、検索してみてUnityという開発ソフトがあること、ブロック崩しが簡単に作れそうなことがわかりました。OSはなんでもよかったのですが、とりあえずiPhoneを持っていないのでAndroid用にしました。あとはUnityをPCにインストールし、ブロック崩しの作り方が載っているサイトを見ながら、手探りで作りました。その中で、UnityではC#を使うことやC#の文構造、Unityの動かし方などがなんとなくわかりました。そのおかげで、ゲームアプリを開発するためになにをすべきか、見通しを持つことができました。
最後に
学び方に正解はないため、この記事に書いてある方法が最善とは思っていません。しかし、少しでも、アプリを作りたいが、何をすればよいのかわからないという人の参考になればと思います。