こんばんわ、TF's appsです。
今回は私の会社でも新人教育が始まり
講師役として説明している事もあり
【新人教育】と【C言語課題】
について紹介したいと思います。
私は20年ほど前に初めてプログラムを覚えました。
その言語が「C言語」でした。
未だC言語が活躍する場は多く、
私の会社でも機械制御を扱うため
現在もこの言語を主流として使用しています。
1.参考書の紹介
20年前に私がお世話になった本を紹介します。
林晴比古さん監修のこのシリーズ
プログラムを1から学ぶには良本です。
読者レベルに応じて、ビギナー編、シニア編などもあり
理解度に合わせて選べます。
私はこのシリーズ本が他の言語も含めて5冊あります。
新C言語入門(スーパービギナー編)新訂 (C言語実用マスターシリーズ) [ 林晴比古 ] 価格:1,728円 |
2.教育内容(課題例)
まずは言語を覚える必要がありますので
一通りその知識があった上での課題とします。
私のオススメなのが「標準関数」を作る課題です。
・・・
・・・
「ん!?」
・・・
・・・
「例えば、strcpy関数」を
自前で実装するという内容です。
もちろん、strcpyを使ってはダメですよ(笑)
できれば、可能な限りstrtok、memcpyなど
他の標準関数も使用せずに解くのを推奨します
自分でメモリマップを想像し
メモリを確保して、
条件文(例:if、for)、演算子(例:+、-)、
論理演算子(例:&&、||)などを駆使して
解くことがベストです
おすすめ理由としては
この課題は一通りの言語知識が入ってないと
解けないですし、何よりゴールが明確です。
成果物の確認は、同じインプットをして、
標準関数と同じ結果が得られるかそれだけです。
3.レビュー
新人さんが複数人いる場合は、ソースレビュー
をみんなでする事をお勧めします。
十人十色、必ずソースコードは異なります。
人のアルゴリズムを知ることは、凄く勉強に
なります。
自分の頭の中が覗かれているようで少し良い
気分ではないかも知れませんが(汗)
プロジェクトに入れば複数人で同じソース
コードを共有して作っていく事になりますので
大事なことです。
また自分のソースコードを説明する機会を
与えればプレゼン能力も向上します。
まさに一石二鳥です(^^v)
さらには不正メモリアクセスなどレビューで
見つける事ができれば、危険なコードを皆で
共有することができます。
もっと言えれば、プロジェクトに入れば目的
を達成するだけでなく、保守性の良いコード
も求められます。
他人が読みやすいコードは重要です。
そんなところまでレビューできればベスト
だと思います。
如何でしたでしょうか?
【プログラミング教育】について考えてみました。
実際私はこのような課題を出している側です。
教師側の立場としてもシンプルな内容で
効率的に教育できるので気に入っています。
ではまた次回お会いしましょう♪