社内研修でC言語を200時間学習した感想【勉強方法・難しさ・おすすめ度】

【アイキャッチ】C言語を200時間学習

エンジニア職に転職して早2ヶ月、C言語の学習(研修)が終了しました。実務では使わない言語をここまで丹念に学ばせてくれる会社に対して、感謝の気持ちでいっぱいです。

C言語を理解するまでしっかり学習することがエンジニアとしての成長に不可欠である、と伝えられて始まった研修。駆け抜けた今ではすがすがしさと成長を実感しています。

今回はC言語を200時間学習した感想をお伝えしていきたいと思います。

C言語を学び始める前

「独学で勉強すると挫折するって聞くけど」「C言語は他の言語と比べて難しい」

ネット上にはいろいろな意見が転がっていて、私もそんな言葉を耳にしながら学習を開始しました。

どんな感じで勉強したの?

f:id:taiyoutan:20211109134028j:plain

学習方法としては以下の通りです。

学習方法
1 会社がおすすめしている学習教材を使い、基礎を学ぶ
2 会社独自の演習問題を解く

 

上記の1と2でひとつの単元が終わり、それを第12回まで繰り返しおこなっていました。

学習教材としては特別なものではなく一般的なもの。しかも、20年ほど前に出版されているような古い教材です。

初学者の私からしたら良し悪しは分かりませんが、何年経ってもC言語の根幹は変わらないものだそう。

言語自体は便利な機能が追加されているが、多少古いコンテンツでも研修で使うなら十分だということでした。

テキストを読み込むのにそう時間はかからず、実際に苦戦したのは演習問題の方です。

つくりたいプログラムが言葉のみで記述しており、それを一から自分の手でコードを書いていく、という作業を延々と続けるのが演習の内容でした。

かかった時間の比率としては、テキスト1に対して演習問題9くらい。作業に詰まってしまったら質問をし、わずかなヒントをもらいまた挑戦する。

考えてコードを書くという力をひたすら鍛えている感覚でしたね。

実際の学習時間はどれくらい?

f:id:taiyoutan:20211109134133p:plain

学習にかけた時間は、だいたい200時間くらいです。

真の初学者なので「プログラミングってなに?」みたいなところから始まっています。ただ、それを考慮しても、なかなか時間がかかってますね。

というのも演習問題がとても難しかったのがここまで時間を費やした理由です。

実地の経験がある方からすれば簡単な内容なのかもしれませんが、未経験であればそうやすやすとこなせる内容ではなかったと思います。

実際、C言語の内容は難しかった?

f:id:taiyoutan:20211109134239j:plain

はい、難しかったです(笑)

研修がかなり手厚い企業に入社できたので、ゆっくりと時間をかけるだけでなく、分からない部分を理解できるまで教えてくれる環境に身を置いたうえでの学習でした。

学習したことがある方なら分かるかと思いますが、ポインタで一度つまづき、ファイル操作やリストまで進むとさらに混乱します。

「C言語は難しい」というネット上の評判をよく目にしますが、あながち間違いではないなと実感しました。

他の言語と比べてどうなの?

f:id:taiyoutan:20211109134323p:plain

率直に言うと、他の言語との難しさの差は分かりません。というのも他の言語を触ったことがほとんどないからです。

HTMLやCSSを一冊学んだことがありますが、それらはまったくの別物。

C言語のみに関して言えばかなり自由度が高く、メモリのことまで理解していないと仕事上で使うことはできないのではないかという印象です。

逆に言うと、C言語を習得すればコンピュータの内部のことまで理解しているという証明になるのでしょう。

最初に学習する言語としておすすめ?

f:id:taiyoutan:20211109134415j:plain

最初の学習にC言語を選ぶ基準としては、以下の条件次第かなと思います。

最初の学習にC言語を選ぶ基準
・完全独学で誰も教えてくれる人がいないのであれば他の言語から
・教えてくれる人がいるのならC言語がおすすめ

 

私は恵まれた環境下で学習することができたので理解も深く駆け抜けることができましたが、完全独学だったらおそらく挫折していたと思います。

利用する教材やどこまで学習するかによると思いますが、研修中に「独学だと知りえない情報だな」と感じることは多々ありました。

ただ大抵のOSがC言語で書かれていることからも分かるように、コンピュータの内部構造を理解するのに必要不可欠な言語だと感じたのも事実です。

今すぐとはいかなくとも、学びたいと思ったときに取り組んでみるのが良いのではないでしょうか。

C言語を学習して自信がついた

ここまで実務未経験の知ったかぶりな人間の意見を読んでいただきありがとうございます。日々、新しい知識を得て学習する時間が楽しくて仕方ありません。

C言語が終わったのでこれからまた見たこともないJavaの学習が始まりますが、難しいと言われるC言語を学んだことで少し自信がついた気がします。

これまでの私の経験がわずかでも初学者の支えになればと思い、少し長文の備忘録となりました。

【アイキャッチ】変数はプログラムを書くうえで必須の知識

【C言語】変数はプログラムを書くうえで必須の知識【宣言・名前のルール】

2021年1月10日

コメントを残す

メールアドレスが公開されることはありません。