(移行済み)胡瓜のプログラミング日記

エンジニアを目指して少しずつプログラミングを学んでいきます。

C言語の学習状況

こんにちは。

昨日で卒研発表も終了し、少し精神的にも落ち着いてきました。

そこで、昨年11月からちょっとずつ取り組んでいるC言語の学習についてまとめたいと思います。

 

1.進捗状況

・簡単な文法事項は理解

 変数の宣言からはじまり、演算子、制御文、配列とポインタ、関数、構造体あたりまでは、基本的には理解できています。ただし、ポインタとメモリの話は微妙……

 

・メモリを意識した使い方は微妙……

 上でも触れていますが、ポインタとメモリの扱い方についてはまだまだな部分が多いです。わかった!と思ってコードを書いてコンパイル、いざ実行!というところで「動作を停止しました」の一文が……という経験を何度も笑

 ポインタの宣言だけでは実体が生成されておらず、値を入れるなどの操作ができないんだろうなーとはわかるんですが、それだけではエラーが消えないことが多く…。

 とりあえず、ポインタ解説に特化した書籍を購入したので、4月の入社までになんとかせねば…

 

・ただただコードを書いているだけ

 現状、ただひたすらコードを書いているだけです。その他の情報系知識がほとんど身についてません(基本情報技術者とは)。

 検索して出てくる問題をいろいろ解いてみているという段階です。paizaやAtcoderなどの競プロ的なやつから、北ソフト工房さんのコマンドプロンプト上で動く簡単なゲームをつくる問題などなど。

 

・一応、Gitは触れた

 コードを書く以外にやったことは、Gitのアカウントをつくったくらいでしょうか。最初に少しコードをあげただけで、最近は全然触れていません……

 

2.ここまでの感想

 一言で言うと、

「認識が甘すぎた」

でしょうか。 

 独学することの難しさをひしひしと感じています。中高の自分がいかに学習環境に恵まれていたかを通過しています(大学は…)。

 特にC言語に関しては、Web系の言語などに比べるとプログラミングスクールなどは全く活発ではないようですし、自分で書籍を買って進めていくことが必要そうです。twiiterを見ていても、それほど活発には動いていないような……(これは自分の世界がまだ狭すぎるからかもしれません)

 いずれにせよ、エンジニアとして一生勉強をしていくことに対して、軽く考えていたことは深く反省しております……

 

3.これからのこと

 とりあえず、現在読み進めている書籍は

アルゴリズムの入門書

・ソフトウェアエンジニアリングの入門書(新卒研修で使われているやつ)

の2つ。この2つは4月の入社までに終わらせたいところです。

 今後新たに取り組みたいのは、

・ポインタ制覇!みたいなやつ

応用情報技術者試験の対策本

の2つでしょうか。応用情報は、内定先からの指示というのもあります。基本知識が圧倒的に足りていない私には、基本情報の方を復習しつつ進めていくことになると思いますが、これで少しでも知識をつけることができればと考えています。いきなり実践で使えるとは思っていませんが。

 ポインタは、研修中に遅くともなんとかできればと考えています。ポインタ使えないと、Cやってる意味ない気もするので……。

 

 現状はとりあえずこんなところでしょうか。独学で、周りに情報系に強い人もいないので、変な方向に突っ走っているのではないかという不安が常に付きまとっています。環境って大事だなあと笑

 卒業研究は終わりましたが、3月末に学会に出席する予定なので、それまではバリバリ学生です。思いの他両立に苦戦していますが、ここを乗り越えられれば、はたらいてからも仕事+αで学習し続けられるはずだと思って、頑張ろうと思います。