お疲れ様です!!
3月19日と20日は、17日にAI先生に出題してもらった演習問題の理解に費やしました!!
昨日(19日)はちょっとバタバタしていたとはいえ、2日かかるとは、、、
というわけで、AI先生の回答例コードの解析をしたノートの写メです!!










【今の僕の問題点】
理解できていない点をあげるとキリがないのですが、
現状の最大の問題点は、
コーディング以前に、「最終的にどういう処理結果を出したいか」がまったくイメージできていないという点です、、、
AI先生に問題を出してもらった時点で、
・プログラムでできること
・条件
を明示してもらっているのですが、条件(今回の問題ではHashMapを使う、Scannerを使う)ばかりに目が向いて、プログラムの全体像を1ミリも想像ができていませんでした、、、
これがないと、
・必要なクラス
・必要な変数
・必要なメソッド
がまったく浮かびません、、、
【プログラム全体像が想像できない理由】
なんでプログラムの全体像が想像できないんだろう、、、
と考えてみました。
・そもそもJavaの機能が頭に入っていない
概要は分かっていても、それを「使える」レベルにまったくなっていませんでした、、、
今回の演習問題を通じて、
HashMap
whileループ
switch(これは今まで学んでなかったやつなのでしょうがない!!)
booleanの使い方(booleanの活用)
booleanとif、NOT演算子の組み合わせ
コンストラクタの使い方
インスタンス化(newで作る場合と既存のインスタンスを上書きする場合)
変数にメソッドを代入する(String name = inputString(“氏名: “);)
戻り値の型と引数の型の関係
が分かっていないということが分かりました!!(ほぼ全部やん、、、)
こういう「Javaでできること」が分かっていないと、プログラムの設計ができない、、、
逆にこれが分かっていると、細かな記述は調べたりしながらある程度コーディングを進めることができると感じてます!!
【今回の演習問題のフローチャート】
Javaでできることの理解が深まったら、プログラムを作る前にフローチャートが書けると思いました!!
今回の解答例の内容が理解できたので、自分でフローチャートを作ってみました!!
今、目指すべきところはこういったフローチャートをプログラム作成前に作れることかな!!
というわけで、今回の最大の収穫は
「分からないことが分かった」
という点です!!
引き続き、楽しんでいきます!!