プログラミング義務教育化の議論が盛り上がりプログラミングが注目を浴びているが…
私は元プログラマでアプリを開発し て公開した経験があるので
プログラミング入門者を対象にプログラミングのノウハウをちょくちょく公開したいと思います。
ホリエモン×藤田晋「IT界は人材不足だ」
日本はプログラミングを義務教育化すべし
http://toyokeizai.net/articles/-/82666
プログラミングを最近は義務教育化するなどの話がありますが
独学でプログラミングを勉強する場合は
まずプログラミング言語の文法を完璧に勉強マスターしてから
アイディアを考えアプリを作成することが多いですが
これだと文法の学習で飽きて挫折することが多いです。
文法の勉強だけではプログラミングは上達しない。とにかくプログラミングしてアプリを作成しよう!
重要なことを一言で言うととにかく素早くアプリを作成することがプログラミング上達の近道です。
私は元プログラマで仕事ではWindowsアプリ開発
組み込み系開発、スマホアプリの開発に携わったことがあります。
私のアプリ開発の経験からとにかく開発したいアプリがあり
プログラミング言語はよくわからないけどとりあえず作成してみようと
挑戦する人がプログラミング上達が早いです。
あと重要なのが作成したアプリをネット上で公開することです。
公開するといろいろ不具合対応、機能要望など
フィードバックがあるのでこれらに対応することで
自然とプログラミング上達につながっていきます。
以下に私がアプリを作成した手順を記述します。
アプリ作成の手順
1.アプリのアイデアを考える。
まずはアプリのアイディアを考えます。
アイディアが思いつかない場合は以下の観点で考えてみてはどうでしょうか。
- 自分が不便に思っている事がありそれを解消するツールを作る
- いろんなアプリを使いそのアプリで不便な部分を解消するツールを作る
2.プログラミング言語の文法と開発ツールの基本的な部分だけを勉強する。
全くの初心者であればプログラミング言語と開発ツールの基本的な部分を勉強します。
プログラミング言語の勉強は変数の宣言、変数の使用方法、制御構文ぐらいで十分です。
開発ツールはプロジェクトの作成、コーティング、デバッグ、実行ファイル生成ぐらいでの勉強で十分。
基本的な部分を解説している書籍はたくさんあるのでその中からわかりやすいと思う書籍で勉強します。
ただ他のプログラミング言語の経験があればこの勉強は不要ですぐにアプリ開発をします。
私は他のプログラミング経験があったので基本的な勉強はせずすぐに開発を行いました。
プログラムはなぜ動くのか 第2版 知っておきたいプログラムの基礎知識
3.プログラミングの知識が足りなくても取り敢えずアプリ作成に取り掛かる。
プログラミング基本を身につけたらアプリ開発に取り掛かりましょう。
なかなかプログラミングの基本が理解できないという人は
本を読むだけで実際にプログラムを動かしていない人が多いです。
サンプルプログラムがある場合は必ず動かして確認してください!
デバッガのブレイクポイントでプログラムが
1行ずつ進めていき変数の値がどう変化したのか?
どういう処理を行っているのか?をじっくり確認します。
上記の画像は一例ですがiPhoneアプリを開発できる
Xcodeの画面ですがコードの左側を
クリックするとブレークポイントを作成できます。
ブレークポイントの作成した状態でプログラムを実行すると
ブレークポイントで処理が一時停止しどういった状況なのか確認することができます。
例えば上記の処理の概要がわからない場合
- viewDidLoadはどのタイミングで呼び出されるか?
- self.myLabel.text は何をやっているのか?
という観点で調べてみると必ず解決の糸口が見つかるはずです。
4.まずはアプリのコアな部分をプログラミングで実装する。
アプリ開発を始める際にはまず作成するアプリで無くてはならない重要な機能から開発します。
重要な機能から実装を始めることによってこのアプリは
実現可能なのかそれとも問題があって代替の方法が
必要なのが早期に把握できるメリットがあります。
5.わからなければWeb、書籍で調べる。
アプリ開発をするとわからない部分に必ず突き当たります。
この時はWeb、書籍で調べます。書籍はリファレンス的な本で調べるといいと思います。
例えばTwitterの機能を実現する方法がわからない場合は以下の書籍で調べたり
またそれでもわからない場合はネット上で検索する
とサンプルプログラムが必ず見つかるそれを参考にします。
ただコピーして利用するのではなくプログラムを
動かしてみてどういう処理内容になっているか確認します。
6.コアな部分以外を実装する。
コアな部分以外を実装します。
5の手順まで進めたらもう既にプログラミングは
上達しているので特に問題なく進めるはずです。
7.アプリをネット上で公開する。
アプリが完成して一通り動かしてみて問題なければ
せっかく苦労してつくったアプリなのでネット上に公開しましょう。
例えばWindowsアプリなどはVector、iPhoneアプリはApp Store
AndroidアプリはGoogle Playストアなどです
以上が基本的なアプリ開発の流れです。
プログラミングの細かいノウハウは後々公開したいと思います。