プログラミングという概念とプログラミングをする上で必要な考え方を身につけるための本
コンピュータと仲良くなろう
意識してないだけで自販機、スマホもコンピュータ。誰かが指示を出したのを忠実に成し遂げるのがコンピュータであり、全く怖がる必要はない。
コンピュータは指示通りにしか動かない。そのため、細かいことに気を使って、指示を細かく正確に伝えることが大事。また、もしも、を考えることで、より良いプログラムを作ることができる。
心の準備(コンピュータと仲良くなれる習慣)
① 新しいことは好きですか?②細かなことは好きですか?③もしもの時の備えがありますか④負けず嫌いですか?⑤こだわりは強いですか?
これらの要素を持っているプログラマは良い仕事をしがち、ただし、それにもバランスはある。
プログラマーへの道。
プログラミングの基本は「プログラム作りに必要な考え方」「プログラムの世界で使う言葉」、「プログラム、言語の使い方」、前者2つがとても重要
一番最後のプログラミングはコツさえ掴めば誰でも絶対にできるようになる。ただ、プログラミングに近道なんてない。正しい努力を愚直に続けることしかない
日本語でプログラミングする7ステップ
プログラムを作る流れは。
テーマを決めること→あらすじを作ること→シナリオを書くこと→プログラム言語に翻訳すること→動かしてみること→確認すること→バージョンアップすること
テーマを決めること
何をしたいのか決めるということ。最初から欲張らないこと、これがないと〇〇と言えないよなっていうような本質を考えてる。機能を増やすことは後からできる。例)計算ウェブアプリをつくろう
あらすじを作ること
設定したテーマを実現するためにどういった処理が必要なのかを考えるフェーズ。少し高いところから考えること、順番を意識することが大事。もっと具体的なところはシナリオでやるから、大丈夫。例)レイアウトはこんな感じで・・・。真ん中のところに数字を入れる→計算される→計算結果が表示される
シナリオを書くこと
あらすじに沿って細かいところまで煮詰めるフェース。コンピュータは短文しか理解できないため、これ以上細かくできない、詳細に説明できないといった部分までブレイクダウンさせることが大事。また、あらすじ同様、処理の順番を考えることが大事。
適切な流れに沿って作ることが重要であり、パソコンを触る機会というのは、実はそんなに多くない。いかに日本語で作れるかということが大事
例)レイアウトはHTML、CSSでシンプルにまとめる。
真ん中のボックスはHTMLで指定して、inputされた数値をjavascriptで受け取る→受け取った数値を関数に入れる→戻り値を別のboxに出力
あらすじ、シナリオのヒント
データの変化を考える
そのデータはどういう形なのか、どの処理でどういう形に変わってどういう意味を持っているのかなど、
処理の流れを考える
何をどうするのか、次に何をどうするのか、といった処理を書き出してみる(図でもOK)
俯瞰して流れを見るとあらすじ、シナリオを決めれる
プログラムの考え方を身につけるためには
日常からテーマを決める、あらすじを作る、シナリオを書くということを習慣的に行うことが重要、プログラミング能力はプログラミング以外を通してでも成長していく
一歩前に踏み出そう(エラーの対処法)
様々なバグが起きる。そのバグの見つけ方には最適化されたものがある。
日本語のプログラムを利用する
日本語のプログラムにはシナリオがあり、それに沿って考えてみると間違いに気づくことができる可能性がある。プログラムを少し離れた場所から見ることがバグを見つける。有効な手段
スピーカーやモニターを利用する
プログラムは動いてるけど、どうも結果がおかしいと言う場合には、処理ごとにコンピューターの音源を鳴らしてみるのが有効である。また処理の区切りごとに、変数の内容を画面に出力するのも効果的だ。プログラムをじっと見つめているだけでは、デバッグはいつまでも終わらない。
エラーとなった時のためには
エラー対する命令が事前に用意されていることがある。エラートラップというもしも停電になったらジェットコースターを止めなさいとかね。そういう安全装置を意識的につけることで、暴走を抑えられる
プログラマの心得五箇条
1.「どうして」「なぜそうなるの」を意識すること
どうしてテレビのリモコンを触って操作するとテレビは変わるのといったようなことを日常から意識するようにしましょう
2. 紙とえんぴつを持ち歩こう
紙に書き出したほうが自分の考えをまとめることができます人間の思考はとても早く、思いついたらすぐ消えてしまいます
3. ポイントをはっきりさせよう
良いプログラムとはユーザが望んだ結果をきちんと返してくれるプログラムですどんなにおいしい
レストランであっても、ハヤシライスを注文したのに、カレーライスが出てきたらがっかりするでしょ。プログラムの経験を積んでくると、あんなこともできる。こんなこともできると誰かに見せたい、機能ばかりを搭載した自己満ソフトウェアを作ってしまいがちです本当に必要なのは本当に必要なことが間違いなく実行できるプログラムあるので、本質を考えることが重要です。
4. プログラムの先にいる人の顔を思い浮かべましょう。
使う人が決まっていて、その人の顔も浮かべられる場合は料理と同じです。こんなことができたらきっと驚くだろうなぁ。この手順を簡単にしてあげたら、きっと喜ぶだろうな。そう考えるだけで不思議と良いプログラムが出来上がるものです。
5. 人の意見に耳を傾けよう
プログラムが完成すると、ほとんどの人がよくやった。俺って天才って自分で自分のことを褒めるものです。しかし自分では完璧に作り上げたと思っていても、他の人から見れば不完全な場合もありますことです。自分では考え方が違う。これまでの経験を違うし、同じものを見るときでも視点が違います。
プログラムが完成したら、他の人にも見てみまましょう。
すごいね〜