自分はエンジニアであり、プロでありたいと思っているので、定期的に技術書を読むように心がけています。読むのと理解するのが遅いため冊数は少なめですが、それでも少しでも身につくものがあればと思って読んでいます。
そんな自分が、今年一年でどんな本を読んだか思い返してみたいと思います。
わかりやすいコードを書くための本
- 作者: Robert C. Martin,花井志生
- 出版社/メーカー: アスキー・メディアワークス
- 発売日: 2009/05/28
- メディア: 大型本
- 購入: 27人 クリック: 914回
- この商品を含むブログ (83件) を見る
レガシーコード改善ガイド (Object Oriented SELECTION)
- 作者: マイケル・C・フェザーズ,ウルシステムズ株式会社,平澤章,越智典子,稲葉信之,田村友彦,小堀真義
- 出版社/メーカー: 翔泳社
- 発売日: 2009/07/14
- メディア: 大型本
- 購入: 45人 クリック: 673回
- この商品を含むブログ (157件) を見る
読んでみて、自分がやってきたことが正しかったんだという安心感と、もっと良くするための方法を得ることができました。というか、まだまだ「わかりやすいコードの書き方」はいっぱいあるんだというのを改めて考えさせられた一冊です。
もう一冊の「レガシーコード改善ガイド」は、CleanCodeの中で単体テストの実践例が載っていて、それをより詳しく知りたくて買った本です。
この本で特に印象に残っているのが「きれいなコードよりも、テストができるコードのほうが大事。テストができないなら、きれいなコードであっても崩すべき」という点です。それまでは、いいコード=きれいなコード、というように考えて自分にとっては目からうろこな話でした。
今年最後の仕事では、テストコードとともにプログラムを書きました。残念ながら、リファクタリングのタイミングを見誤ってしまい*1、この知識を生かし切れませんでしたが、次に機会があった時にリベンジしようと思っています。
仕事で使うための本
Java並行処理プログラミング ―その「基盤」と「最新API」を究める―
- 作者: Brian Goetz,Joshua Bloch,Doug Lea
- 出版社/メーカー: ソフトバンククリエイティブ
- 発売日: 2006/11/22
- メディア: 単行本
- 購入: 30人 クリック: 442回
- この商品を含むブログ (174件) を見る
- 作者: John Papa,マイクロソフト株式会社アーキテクトエバンジェリスト鈴木章太郎(監訳),SilverlightSquare
- 出版社/メーカー: オライリージャパン
- 発売日: 2009/09/12
- メディア: 大型本
- 購入: 2人 クリック: 104回
- この商品を含むブログ (10件) を見る
Silverlight入門 C#とブラウザプラグインでらくらくRIA開発
- 作者: 赤坂玲音,マイクロソフト株式会社
- 出版社/メーカー: 翔泳社
- 発売日: 2009/05/29
- メディア: 大型本
- 購入: 2人 クリック: 67回
- この商品を含むブログ (2件) を見る
「Java並行処理プログラミング」は、マルチスレッドプログラミングの難しさを感じて買った本です。読んだ感想は「マルチスレッド版の EffectiveJava だ!」。Java6以降でマルチスレッドプログラミング書くなら必携の一冊だと思います。これを知っているか知らないかで、必要な時間と品質が大きく変わるぐらい大事な本です。
C#の二冊は、今年初めてC#を始めるにあたって読んだ本です。お客様のフレームワークを使っていたので、基礎がない状態でも作れるには作れるんですが、そんな状態のままだといつまでもグダグダになると思って買いました。ただ、これだけじゃ全然足りません。まだまだ勉強が必要そうです…。
趣味で使うための本
JavaScriptパターン ―優れたアプリケーションのための作法
- 作者: Stoyan Stefanov,豊福剛
- 出版社/メーカー: オライリージャパン
- 発売日: 2011/02/16
- メディア: 大型本
- 購入: 22人 クリック: 907回
- この商品を含むブログ (76件) を見る
サイ本も持っていますが、こちらの方が実践的でわかりやすかったです。JavaScriptは、ほかの言語に比べても人によって差異が大きく、「なんでこうやってるの?」という点が自分の中でわからないままになっていました。それがすっきり解消されました。
そういえば、まだライブラリの方にこの知識を反映できていません。読んだだけではだめですね、実践しないと…。
エンジニアとしての今後を考えるための本
エンジニアとしての生き方 IT技術者たちよ、世界へ出よう! (インプレス選書)
- 作者: 中島聡
- 出版社/メーカー: インプレス
- 発売日: 2011/03/11
- メディア: 単行本(ソフトカバー)
- 購入: 11人 クリック: 1,936回
- この商品を含むブログ (67件) を見る
- 作者: フレデリック・P・ブルックス Jr.,滝沢徹,牧野祐子,富澤昇
- 出版社/メーカー: ピアソン桐原
- 発売日: 2010/12/14
- メディア: 単行本(ソフトカバー)
- 購入: 10人 クリック: 91回
- この商品を含むブログ (50件) を見る
- 作者: 和田卓人,Kevlin Henney,夏目大
- 出版社/メーカー: オライリージャパン
- 発売日: 2010/12/18
- メディア: 単行本(ソフトカバー)
- 購入: 58人 クリック: 2,107回
- この商品を含むブログ (350件) を見る
「プログラマが知るべき97のこと」はそのヒントになりました。どういう風に仕事に向かっていけばいいのかを迷ってしまっていた時期に読んで、この中でやっていることを少しでもマネできれば、その分よくなっていくんじゃないかという希望を持てました。
まとめ
長くなりました。
こうやって振り返ってみると、一冊一冊から少しずつでも知識を得られていたんだなと改めて感じました。ただ、読んでそのままになってしまった本が多いです。読むだけでなく、内容を理解するために、本の内容に沿って手を動かすことが必要だったかなと今にして思います。これは、今年の反省点です。
-
-
-
-
-
-
- -
-
-
-
-
-
今年は、「Excelの表(QA表, 不具合表... etc)を、すごく検索しやすくするツールを作りました。」や「Java7 で String クラスがリファクタリングされていました」など、たくさんの方にブログを読んでいただけた貴重な一年となりました。
これまで、はてなブックマークがつくことにすらびっくりしていたのに、それがここまで伸びるとは本当に思ってもいませんでした。
読んでくださった皆様、誠にありがとうございました。
まだまだたくさんのことをやっていくつもりです。
来年も、よろしくお願いします!
*1:リファクタリングはすぐにできるからと、あと回しにしてしまいました。それで、そのまま修正する時間を取れないまま手作業による結合テストに入ってしまい、修正不可になりました。すぐにできるなら、完成したといわずにその場でさっさとやっておくべきべきでした…。
*2:「常に時代の先端を走り続けたいのであれば、『勝ち馬を見つけ出してそこにお金を張る』のではなく、『自らが騎手になって自分がこれと思ったプラットフォームを勝たせる』意気込みが必要」という話。」Life is beautiful: プラットフォームは乗るものではなく、担ぐもの より