わさっきhb

大学(教育研究)とか ,親馬鹿とか,和歌山とか,とか,とか.

補習おしまい

10月より,毎週木曜日の5限に演習室にて,プログラミング補習をしてきましたが,とりあえず昨日でおしまいとなりました.(年明けは教員も学生も何かと忙しいのです.)
11月30日から,受け持ち学生3人に渡した課題は,完成に至りませんでした.課題設定にも,プログラミングの進め方にも,まずさがありました.
とはいえ昨日は,プログラムの根幹部分が,それぞれの学生のところで動くようになりました.仕様を満たすためにはもう少し処理が必要ですし,昨日はやり方だけ言ってその動作原理は説明できませんでしたが,あとは,それぞれの自発性に委ねたいと思います.
これで終わると,学生にも自分にも,何をしたのかが分からないので,「プログラミングの心得」を綴ってみました.以下,学生配布分から少し手を加えています.

  • 成功への道筋は一つではありません.これを一つに決める作業が「設計(デザイン)」です.
  • 課題に基づいて,曖昧な記述を(自分で適切なものを選ぶなどして)なくしていき,利用可能な文法・技法やライブラリ関数などを活用して,テスト・デバッグにより,動くものを作るまでが「プログラミング」です.非常に泥臭いものです.一つでも間違えると,永遠に成功に至らないこともあります.
  • 課題文には作法があり,プログラムにも作法があります.課題文の流れと,出来上がるプログラムコードの流れは異なるものです.プログラミングの流れ(作業プロセス)もまた異なります.
  • デバッグしやすいコードを書くよう,心がけましょう.
    • 適切なコメントをつけましょう.動くコードができたときや,うまく動かなくて何がどうなっているか分からないというときに.
    • 複雑なデータ構造を定義したならすぐ,その中身を出力する機能(関数や動作確認プログラム)を作ようにしましょう.
    • 段階を踏んで書いて,その都度,動作確認をしましょう.一気に作ると,バグの原因が分かりにくいです.
  • インターネットの情報に親しみましょう.
    • 毎日少しずつ,技術的な情報を読む習慣をつけましょう.
    • 検索エンジンと親しくなりましょう.
  • 思いついたらコードにするのもいいでしょう.失敗だったたり,他のファイルに組み込まれたりしても,そのファイル(苦悩の跡)は消さないように.