読者です 読者をやめる 読者になる 読者になる

新人エンジニアにオススメする6つの本

そろそろ新人も入ってくる頃のなので、新人エンジニアに読んで欲しい6つの本をピックアップしてみた。

レベルとしては研修でif文とかfor文とかは習ってる感じ。目先の入門書というより土台作りの本です。
DBやサーバ関係は外して一旦プログラミング特化。とは言うものの自分はWeb屋さんなので、その視点で選んだのであしからず。 

UNIXという考え方 その設計思想と哲学

UNIXという考え方

UNIXという考え方
著者:マイク・ギャンカ-ズ
価格:1,680円(税込、送料込)
楽天ブックスで詳細を見る

Webアプリで良く利用されるOSであるLinuxをはじめとしたUNIX系の概念をまとめた本。
と言ってもマニュアル集とかではなく哲学とあるように設計思想が記述されている。
UNIXとは何か? を知ることによりUNIXに関する理解はもちろん、そのアキーテクチャを知ることで
今の開発にも活かせる概念がバンバン出てくるのでぜひ読んでほしい。
薄いし、読み物なので、とっつきやすいので最初に読む本としても悪くない。

 

レガシ-コ-ド改善ガイド 保守開発のためのリファクタリング

レガシ-コ-ド改善ガイド

レガシ-コ-ド改善ガイド
著者:マイケル・C.フェザ-ズ
価格:4,410円(税込、送料込)
楽天ブックスで詳細を見る

あなた方が進む道は決して平穏ではない。教科書的なコードばかではなく、クソースに出会うときも1度や2度では無いだろう。
そんな時に手助けとなるのがこの1冊。既存のコードに以下にテストを書くか? という実践的な観点が記述されている。
また、なぜテストを書くべきなのか? という点も記述があるので、初心者が読むのも良いと思う。
レガシーコードをこれ以上増やさないためにもぜひ読んでほしい。いろんな人の開発経験の話を引き出せるので読書会向きの本でもある。 

 

Java言語で学ぶデザインパターン入門

現在最も広く利用されているプログラミングパラダイムであるオブジェクト指向
わんにゃークラスだけでは理解できない実用的な利用方法を学ぶことができます。
また、デザインパターンの最大のメリットは名前付による説明の省略です。プログラマの一般教養なのでぜひ覚えておきましょう。
Rubyなどスクリプト言語が好きな人はRubyによるデザインパターンもお勧めです。

 

定本 Cプログラマのためのアルゴリズムとデータ構造

自分でクイックソートを書くことはあるでしょうか? -> ほとんどありません
まあ、無いのですが最低限のものは自分で記述できることは重要です。
アルゴリズムやデータ構造を変えることでプログラムの実行性能は10倍にも100倍にも変わります。
適切なアルゴリズムを 理解することでベストな選択ができるようになると共に、実際に記述できるようになることで基礎体力の向上も見込めます。
 好き嫌いがわかれる分野ですがぜひ挑戦してみてください。

 

プログラミングGauche

プログラミングGauche

プログラミングGauche
著者:Kahuaプロジェクト
価格:3,360円(税込、送料込)
楽天ブックスで詳細を見る

関数型言語の一種であるSchemeと呼ばれる括弧良い言語の入門書です。
Schemeの入門書であると同時に関数型言語の概念にもきちんと触れてある本なので、
JavaScriptRubyなど関数型言語のエッセンスを取り入れた近代的なオブジェクト指向言語を利用する上でも非常に役に立ちます。
おそらく、今まで利用してきた言語とはかなり異質な内容ですが、それ故に考え方の枠がかなり広くなるはずです。
視野を広げる意味でもぜひ読んで書いてみてください。もちろん気に入ればぜひ自分の道具箱に入れる感じで! 

 

達人プログラマー システム開発の職人から名匠への道

達人プログラマ-

達人プログラマ-
著者:アンドリュ-・ハント
価格:3,990円(税込、送料込)
楽天ブックスで詳細を見る

プログラミングの達人。そうなるための一歩が記載されてる。
 DRY―Don't Repeat Yourself を始め、実践で起こりうる様々なことへの示唆が記述されている。
習慣を早めに取り入れるためにもぜひ読んで欲しい。 

まとめ

もちろん、ここで紹介した本を読んだだけで良いエンジニアになれるわけじゃないけど、考える基点を与えてくれるものを選んだつもり。
しかし、この手のものはなんだかんだで色々紹介することになるな。範囲が広いので当然だけど。多少広く浅くな感じでも良いから
「まずは、この一冊を読めばOK!」みたいな本て無いのかな? 試しに自分で書いてみるのも面白いかも。

それでは良いエンジニアを目指してみんなで頑張りましょう! Happy Hacking