PoohSunny's blog

生きるために食べるのか、食べるために生きるのか。

自分を育ててくれたオブジェクト指向の本たち

チームメンバーと1 on 1してて、オブジェクト指向とか良い設計とか体系的に学びたいんだけどどうすれば。。。 って話が出て、どちらも体系的に学ぶ方法は知らないので、自分が何を読んで勉強してきたかを話をしていた。 おそらく再利用するから考え直して棚卸ししとく。

最初の一歩

一番最初は会社に入った先輩に勧められて読んだこれら。

増補改訂版Java言語で学ぶデザインパターン入門

増補改訂版 Java言語で学ぶデザインパターン入門 マルチスレッド編

特にマルチスレッド編の方は、当時それを読むのに十分な知識がなくて挫折した記憶がある。 (後にいろんな苦労をして読み直して良い本だったと気づいた)

つかいどころ模索期

デザインパターンは頭に入れたけど、どうも普段の仕事に応用できない、って課題感があって悩んでいた時に助けてもらった本たち。

Java言語で学ぶリファクタリング入門

まずこれで自分の書いたコードや、今仕事で使っているコードのどこがよくないか、どうしたらいいのかを教えてもらい(この本はその時のも問題意識にぴったりハマってた)、少しずつ仕事コードへの適用を始めた。 で、もっといろんな部分に適用できないかな、自分の引き出し増やしたいなと考えてこれを辞書的に読み始めた(当時は新装版じゃなかったけど)。

新装版 リファクタリング―既存のコードを安全に改善する― (OBJECT TECHNOLOGY SERIES)

これは読んでると何かしら仕事に活かせる部分があって、行きや帰りの電車ですこーしずつ読み進めてた。

仕事で少しずつデザインパターンを適用するようになって、本格的にこれを読むようになる。適用しどころが何となくわかり始めるのもこの頃

オブジェクト指向における再利用のためのデザインパターン

そしてしばらく麻疹にかかった感じになっていく。

実践期

自分でどうも無理してデザパタを使っているような感じが来て、良い設計って何だーって悩んでいた時に読んでなるほどって思った本。

アジャイルソフトウェア開発の奥義 第2版 オブジェクト指向開発の神髄と匠の技

その中での言及があった(多分)ので、一緒にこれも読んでた。

Clean Code アジャイルソフトウェア達人の技

これを読んでこうやって実践するのかーってのが知識としてしっくり来た感じ。その後この本と出会ってそれが深まったように思う。 ファサードパターンの使い方に感動したなーという遠い思い出。

オブジェクト指向のこころ (SOFTWARE PATTERNS SERIES)

一周回って学習期

その後、オブジェクト指向は禁止するべきを読んで、がびーんってなって慌てて読んだ。

オブジェクト指向入門 第2版 原則・コンセプト (IT Architect’Archive クラシックモダン・コンピューティング)

エキサイティングだったけど辛かった。なお先述のブログの注釈を後に読んで再度がびーんとなるのだが、その時にはこの本を一周していた。

まだ未読だけど読んでみたい本

現場で役立つシステム設計の原則 ~変更を楽で安全にするオブジェクト指向の実践技法

これはKindleで予約して(もう配信されてるはず)、積読状態。読む。

あとこのブログを書くに際して再度先述のブログエントリー読み直したのだけど、そこに載ってたこれも読みたい。

オブジェクト指向をきちんと使いたいあなたへ (Software Design別冊)

最後に

おすすめ本あれば教えてください!!

読んだ:いちばんやさしいグロースハックの教本

下記の本読んだのでそのレポート。

いちばんやさしいグロースハックの教本 人気講師が教える急成長マーケティング戦略 (「いちばんやさしい教本」シリーズ)

きっかけ

id:i2key と話していて、知識レベルが全然違ってこのままだとついていけんな、と慌てたので、彼にオススメ本を聞いた。 その結果2冊オススメしてもらい、これはその1冊。 なおもう一冊はLean Analytics ―スタートアップのためのデータ解析と活用法 (THE LEAN SERIES)こちらは購入済みなのでGW中に読む予定

わかったこと

  •  やっぱり自分はこのあたりの知識全然足りてなかった(読んでよかった)
  • ARRRAの説明とてもしっくりきた
  • 他の用語としては、「顧客開発」が一番しっくりきている
  • 考え方、測り方をザクッと俯瞰できて全体像掴みやすい
  • 地味に付録として書かれているツールのレビューがめっちゃ良い
  • 小難しいことを考えたりやろうとしたりするより、まずはシンプルに考えて、やっちゃう方が良い
  • しれっとすごいこと言ってる
    • 「データを見てユーザーの行動が目に浮かぶようになるまで徹底的にデータを分析し、理解していく
  • 前の会社で、エンジニアリングで価値貢献したいと言いながら、うまくいかず(そもそもうまく言語化できず)モヤモヤしたのを思い出した。前の会社にいるときに知れればまた違ったのかもなー(遠い目)
  • 広い意味で、いかにエンジニアリングで価値を生み出していくか、あるいは生み出していることを認識するかってのを考える上で大事な武器を手に入れた気がする。

わからなかったこと、あるいはわからなくなったこと

  • 例で出てくるピボットが「え、こんなんでピボットしちゃうの??」って感じの素早さだったのだけど、これは実際でもそうなのか、書籍だから軽めなのか。。。
  • あれ? これ自分の仕事に活かそうと思った時色々わからないことあるぞ?
    • 自分(のチーム)にとってのKGI, KPIって本当にこれでいいんだっけ?

印象に残った言葉

  • 「大事なことなので2回言います。『君が神でもデータを持ってこい』」