こんにちは。しゅんです。
IT企業に入社して5年目になりました。
プログラミング言語で挫折しなかったのは、ある本のおかげでした。
それは、株式会社インプレスの「スッキリシリーズ」です。
初めての言語を学ばれる際には、ぜひこのシリーズを購入されることをお勧めします。
では、紹介していきます。
スッキリわかるJava入門
入社前に読んだ本です。
当時はオブジェクト指向について全く理解しておりませんでしたが、この本でばっちり理解できました^^。
オブジェクト指向の考え方について、RPG(ほぼドラクエ?)に例えて分かりやすく解説してくれます。
他の書籍ではさらっと触れがちな、細かいところまで丁寧に解説してくれているので、なんとなくではなく、厳密に理解することが可能です。
個人的には「継承」に関する説明が秀逸だと思いました。
サブクラス、抽象クラスやインターフェースといったところは、理路整然と理解できている人はどれくらいいるでしょうか。
後輩に「どういうときに、インターフェースを定義するんですか?」と聞かれて焦った経験はないでしょうか?
私はあります(笑)
この本を読めば、そのあたりも後輩に説明できるレベルになるでしょう。
また、私が初めて携わったプロジェクトはC#の案件でしたが、同じオブジェクト指向言語なのでこの本で勉強したことが生かせました。
スッキリわかるSQL入門
私が初めて携わった案件はWebアプリで、サーバーにSQLサーバーを構築するものでした。ですので、SQLの知識は必須でした。
しかし、その時点では、SELECT文くらいしかわからないレベルでした。
もちろん基本構文だけならネットで検索すればすぐに知ることはできます。
しかし、この本は一味違います。
基本構文について、意味も含めて説明しています。
ですので、UPDATE文に間違ってFROM句を書くとかいうことがなくなります。
(考えれば当たり前のことですが、丸暗記とか感覚でやっているとたまにそういうことをやってしまいますw)
何も見なくても、そらでSELECT、UPDATE、INSERT、DELETE構文が書けるようになります。
(それが生かせるのは、おそらく情報技術者試験くらいでしょうが^^;)
また、この本のもう一つの素晴らしいところは、テーブルの「結合」についての説明です。
内部結合、外部結合についてはテーブルの各レコードがどのように結合するか、どのレコードが消滅し、どのレコードが複製されるか、などをすべて頭でイメージできるくらいにならないとビューを作成できないと思います。
でも、大丈夫です。
この本では図を使って各レコードがどのように結合するのかを一レコードずつ丁寧に解説してくれています。
そのため視覚的なイメージを持つことができます。
図を書いて説明しろと言われれば説明できるレベルになりました。
正直、この本に書いてある図をそのまま書いているだけですが^^;
「結合」を使いこなせるだけでも一目置かれるようになるでしょう。
スッキリわかるC言語入門
「ポインタ」や「文字列操作」が難しいといわれるC言語。
他の言語と同じ感覚で取り組むと痛い目に遭います。
しかしこの本は、PCのメモリとはなにか、といったコンピュータの深い部分の説明からポインタの説明につなげています。よって、ポインタを操作するとはデータをどうすることなのかといったイメージができるようになります。
よく大学の図書館に置いてあるような、「&を付ければポインタになります。おわり」といった不親切な本とは違います。
またC言語を使用するうえで初心者がやってしまいがちな、メモリを壊す恐れのある危険な実装についても、なぜそれが危険なのか、どうするべきなのかも含め丁寧に解説されています。
この本を読めば、ちゃんと理解せずにネット上から文法だけコピーしてきて、危うい実装をしてしまうといったことはなくなるでしょう。
スッキリシリーズのまとめ
私がプログラミングで挫折しなかったのはスッキリシリーズのおかげです。
根底の仕組みを理解していれば、応用がきくし、人に説明もできます。
ぜひスッキリシリーズで学んで、どんな言語でも使いこなせるエンジニアになってください。
P.S
スッキリシリーズにPython編が出たようです(゚∀゚)
私も買います(笑)。