もう挫折しない!最短でアプリを作る方法

もう挫折しない!最短でアプリを作る方法

ども、パレオさんの本が何故か22日着になっていて不機嫌なmasayukiです。

今日は、プログラミングのお話を書きたいと思います。

ただ、僕は職業ITの人じゃないので、The我流です。この方法を実践しても、最短では職業プログラマーになれないと思いますので、ご了承下さい。

「そんな、素人の言うこと聴いてる暇ねぇ」って方は、目次だけ読んでいただくか、お帰り下さい。いつものようにエビデンスの欠片もない話ので、ご了承下さい。

(あ、ちなみに僕はこんなアプリ作ってます。よろしければダウンロードしてね♪)

僕がアプリを作るまで

僕は、アプリを作れるようになるまで4回挫折した!

ザックリ自分の挫折歴をあげると

 

  1. 中学生の時:言語も忘れたがチュートリアルを終わらせて、その後何したら良いかわからなくなる。
  2. 大学生の時:iPhoneアプリを作ろうと、書籍を6冊くらい買い込み完璧に理解しようとして挫折。
  3. インターン:何を自分はしているのか解らず挫折
  4. 就職後  :書籍通りに入力しているはずなのに、上手く動かず挫折。

という感じで、4回挫折し、会社辞めて2017年6月からプログラミング再チャレンジし、一番始めに完成したアプリが2017年7月13日だった。

流石に、4度も挫折していたので、その真逆を実践すると、意外と簡単に自分の作りたいものができた。

ただ、これは、動くものが作るっていうだけで、職業プログラマーのように複数人で共同で何か一つの物を作るっていうレベルには遠く及ばない。それでも、簡単なモノを一つ完成させるのは重要だと思う。

 

作るものを決める

まず、いちばん大切なのは、「作るものを決める」これ!!!

ここが意外と一番大事だったりする。中学生の一度目の挫折で学んだことだが、「プログラミングって響きがカッコいい」「キーボードカチカチ打ちたい」ってモチベーションで始めても、せいぜいチュートリアル(初心者の簡単な講座のようなもの)を制覇するくらいで力付きてしまう。

「っで、次俺は何したら良いの?」

状態になって、結局そこから進まない。

 

なんとなくプログラミング勉強している人。

プログラミング技術書の本を読破を目的にしている人。

こういった人が意外といる。もし、あなたがなんとなく始めちゃった人なら、今すぐ「作りたいモノ」を決めて欲しい。プログラミングも言ってしまえば、ただのツール(道具)!!!

いくらノコギリの扱い方を練習しても、実際に「本棚を作りたい」とか「木彫りの熊を作りたい」とか作りたいモノがないと何の役にも立たないし、「木彫りの熊」を作りたい場合は、ノコギリでなく彫刻刀の使い方を学んだほうが良いかもしれない。

作りたいものが決まれば、プログラミングには色んな言語(種類)があるが、どれを学習すべきかも決まってくる。

 

 

入門書は捨てろ

「作りたいモノ」が決まったら、入門書は捨てよう!

まだ、入門書なんか買ってないよって場合は、間違っても本屋でプログラミングの本なんて買いに行ってはいけない。

完全な初心者が入門書(本)から始めるのは絶対におすすめしない。

情報が古い

意識しないと読めない

書籍の通りに写経(コードを書き写す)しても、動かない場合お手上げになる

っという理由からオススメしない。

当たり前だけど、本は一度出版されるとその後に、プログラミングのバージョンアップがあってもなかなか本の内容を修正できない。なので、本の通りにしても実際動かないって事が多々ある。

また、本は意識して読まないと頭に入ってこない。だいたい人間は怠惰なので、無理は続かないし、しんどいと辞めてしまう動画ならボーッとしててもある程度耳に入ってくるので、楽な方・気負わない方を選ぼう!

ドットインストールは神

そこで、代わりに使うのは、ドットインストール!っていう、神がかったサイト。

別に、プログラミングの動画学習サイトだったらなんでも良いが、自分が色々使った中で、ドットインストールが一番良かった。

理由は

  • 動画の再生速度が変えれる
  • 動画の声を女性にできる(ここ意外と重要!笑)
  • コードが動画の下に書かれている
  • 先生のコードと自分のコードを比較できる(ここ一番オススメ)
  • 定期的に修正される

といった感じ。

動画の学習サイトならほぼ、書籍の欠点を克服している。動画の内容が古くなっていたら、サイト上で注意書きなんか入れてくれるし、動画なら会う程度ボーッとしててもなんとなく意味はわかる(もちろん集中して方が良いけど)

ドットインストールを、オススメなポイントが、お手本のコードと自分のコードの比較する機能がついているところ♪動画の通りにやっているつもりなのに、なぜか上手くいかないって時は、ここを使うと、

「あ、スペルミスしてた。」

「ドット抜けてた」

とかそういうミスを教えてくれる。何度か使っていると自分のミスパターンもわかってくる。

 

改造する

作りたいものも決まって、ドットインストールを使って学習を進めていくことを決まれば、あとは手を動かすだけ。

ドットインストールの動画は3分以内の動画がいくつも続いているので、

 

3分動画観る

動画も真似をする

3分動画を観る

以下無限ループ

 

これをひたすら繰り返す。こうやって文章にすると凄い退屈そうな作業っぽく感じるけど、意外とやってみると、自分の思った通りに動いてくれた時はやっぱり嬉しい。あと、動画の声を女性に出来るのも地味にありがたい。やっぱり、同性の声聞きながら、勉強するより異性の声の方がやる気になる!笑

ここで、ポイントが動画の真似をして自分でコードを書いて動いたら次に進むのではなくて、簡単な改造をして欲しい。

例えば

画面に「Hello Worod」と出してみましょう。

っていう、動画があったとしたら、実際に「Hello Worod」と出して終わるのではなくて、「こんにちは、世界」とか「ニーハオ世界」とか自分で改造して欲しい。

その時に、自分の作りたいもので活かすとしたら、こうするだろうなって想定して改造するのがいいと思う。文字の色を変えてみたいなって思ったら、Googleで調べてみたら意外とすぐ出来たりする。

あなたの作りたい物を作り出す

ドットインストールでのお勉強が終われば、早速、あなたの作りたいものを作ってみよう。おそらく、改造しながらドットインストールを使っていれば、どんな風に検索したら自分の望んでる検索結果が出てくるかもだいたいわかってきたことだと思う。

「いきなり、作れと言われても・・・。何から手をつけたらいいの?」

って言う場合は、まずは神とペンを持って欲しい。

例えば、タイマーアプリを作りたいとする。あなたの作りたいタイマーアプリにどんな機能があれば、完成するかをできるだけ細かく分割していく。

まず、タイマーアプリなので時間を測る機能がいるだろう。出来ればユーザーが自分の指定した時間を図れる方が便利なので、計測時間を設定する機能もいるだろう。タイムアウトした時にお知らせで音かバイブレーションがあったほうが良いのでその機能も・・・。

といった感じ、更に出てきた必要な機能を更に分割していく、、、。

(また、今度ココらへんに図入れます。今はサボります。ごめんなさい。)

そうすると、最終的には、「あ、これドットインストールのあの動画でやり方説明してたな」って行き着く場合が多い。そうならなくても、ググるとすぐに答えが見つかる状態になるはず。

 

「どっから手を付けたら良いの?」状態になる時は、だいたい問題の分割が出来ていない場合がほとんどなので、1つの大きな問題を、細かく切り分けよう。

どうしても進まない時は

自分のアプリを作り出すと、なぜか思い通りにいかずに、壁にぶち当たるときがよくある。そういう時の解決法は、時間を区切る!!!

1時間だけとか45分だけとか決めて、ググったり、ブレークポイント(コードがどこまで正しく動いているか確認するもの)を設定したり、して思いっきり調べて、解決しなかったら諦めて時間を置く!

プログラミングに集中するとどうしても、木を見て森を見ず状態に陥りがち。

おじいちゃんが「わしのメガネ、メガネ」と言いながら、オデコのところにメガネあるのに永遠とメガネを探している状態に陥りやすい。そんな時は、お散歩したり、昼寝したり、気分転換すると「あれ?なんでこんなことに気づかなかったんだ?」って解決する場合が多い。

それでも進まない場合は

中には、いくら時間をあけようが、お散歩しようが、昼寝しようが解決しない場合も出てくる。そんな時は、手段にこだわらず別の方法を見つけよう。

うまくいかないとどうしてもその方法に拘りがちだが、あなたのしようとしていることを達成するための方法はいくらでもある。なので、上手くいかない手段にこだわらず、別の方法でトライしてみよう。

 

8割出来たら人に見せる

なんだかんだで、ある程度動くものが出来てきたと思う。

そしたら、完成まで突っ走るのじゃなくて、家族や友達に見せてしまおう♪意外と、最後の詰めの部分が一番大変だったりする。そこで心が折れてしまわないように、知り合いに見せてみよう。だいたいみんな褒めてくれるか、こんなの作れるんだって反応してくれるはず。自分以外の誰かが使っていると開発も少々しんどくても続けられるので、最後のしんどい2割を走り切るために、他の人の力を頼ってみよう。

最初のアプリは、最悪完成しなくてもいいと思う。僕も一番始めに作った「割り勘電卓」はApple storeに申請しなかった。(iPhone7の画面サイズで開発していたが、いざリリースしようと思ってiPhoneSEなでで試すと、はみ出して操作出来なかった。)

そんな感じで、人に見せれるレベルのも(動いてたら見せていいと思う)のを1つ作ると凄い自信つくし、楽しくなってくる。あとは、同じ様な流れで2.3個アプリ作ったら、

「いつも同じことしてるな。」とか「もっと、修正しやすくする方法ないか?」っていうところに行き着くと思う。そしたら、初めて「オブジェクト指向」とか「デザインパターン」とか「リーダブルコード」とか技術書読む時期だと思う。

この頃には、技術書の楽しさもわかって来ているはず。

 

まとめ

とりあえず、やってみては?

 

 

今日は長くなってしまったが、実は、もっとここ大事だよなってことあんまりかけていない。笑

やっぱり、人にうまく伝えるって苦手。

また、自分の文章レベルが上ってきたら、プログラミング系のお話も再度書こうと思う。

最後にまたまた宣伝になるけど、こんな↓アプリ作ってるので、よろしければどうぞ!

 

最後まで読んでくれた方ありがとうございます。

ほいじゃーまたー