「I部 技法編」「II部 実践編」とあるが、役に立ったのはII部でした。
(I部は特定の環境に特化しすぎて読み飛ばした)
さて、「II部 実践編」は実に『達人プログラマー』的な構成で、
著者の経験談も織り交ぜつつ、いくつかのテーマについて語ったエッセイ風なテイストで面白かった。
特に印象に残ったのは以下:
・本質的な複雑さと偶発的な複雑さを分けて考える
・デルメルの掟
オブジェクトは直接の友達以外に話しかけてはいけない
・「流れるようなインタフェース」で記述したプログラムが、プログラムの素人にも伝わった話
(権威を疑えの章にて)
・Composed Methodパターン
public methodに処理の概略を、具体的な手続きはprivateメソッドに
・SLAP(抽象化レベル統一の原則)
そう特別なことも言っていないが、具体的なコード例も出てくるので、やはり読んでて面白い。
その他、著者があるプロジェクトで独自フレームワークを作った方が良いと主張し、
実際に作って大失敗した教訓話(メンテばかりに工数がかかるようになった)とか、
使えないフレームワークが乱立しすぎて、Javaはもやは反面教師でしかない。といった話は面白かった。
(著者の経験談からくるものだけに勉強になる)
個人的には、II部だけ切り取って膨らました著者の次作を期待したい。
無料のKindleアプリをダウンロードして、スマートフォン、タブレット、またはコンピューターで今すぐKindle本を読むことができます。Kindleデバイスは必要ありません。
ウェブ版Kindleなら、お使いのブラウザですぐにお読みいただけます。
携帯電話のカメラを使用する - 以下のコードをスキャンし、Kindleアプリをダウンロードしてください。
プロダクティブ・プログラマ -プログラマのための生産性向上術 (THEORY/IN/PRACTICE) 単行本(ソフトカバー) – 2009/4/27
生産性の高い人はそうでない人に比べ、同じ時間でより多くの仕事をし、より多くの成果を上げることができます。
本書は、ソフトウェア開発におけるプログラマの生産性についての書籍です。
プログラマ個人が、どのような意識を持ち、どのようなツールを使えば、単位時間当たりの仕事量を増やすことができるかについて示します。
本書は2部からなり、「I部 技法編」では、作業を自動化するためのツールや集中を維持する方法など、開発に必要な作業の生産性を向上するテクニックとツールを解説します。
「II部 実践編」では、テスト駆動開発や、メタプログラミングなど、生産性を高めるために取り入れるべき考え方や習慣について学びます。
ThoughtWorks社でアーキテクト、コンサルタントをつとめる筆者が、自らの経験に基づきプログラマの生産性向上の秘訣を示す本書は、「達人プログラマ」を目指すプログラマ必携の一冊です。
本書は、ソフトウェア開発におけるプログラマの生産性についての書籍です。
プログラマ個人が、どのような意識を持ち、どのようなツールを使えば、単位時間当たりの仕事量を増やすことができるかについて示します。
本書は2部からなり、「I部 技法編」では、作業を自動化するためのツールや集中を維持する方法など、開発に必要な作業の生産性を向上するテクニックとツールを解説します。
「II部 実践編」では、テスト駆動開発や、メタプログラミングなど、生産性を高めるために取り入れるべき考え方や習慣について学びます。
ThoughtWorks社でアーキテクト、コンサルタントをつとめる筆者が、自らの経験に基づきプログラマの生産性向上の秘訣を示す本書は、「達人プログラマ」を目指すプログラマ必携の一冊です。
- 本の長さ284ページ
- 言語日本語
- 出版社オライリージャパン
- 発売日2009/4/27
- ISBN-104873114020
- ISBN-13978-4873114026
この商品をチェックした人はこんな商品もチェックしています
ページ 1 以下のうち 1 最初から観るページ 1 以下のうち 1
商品の説明
著者について
Neal Ford(ニール・フォード):
ThoughtWorksのソフトウェア・アーキテクトであり、同社のMeme Wrangler。ITコンサルタントとしてグローバルな活動をしている。特に、エンド・トゥ・エンドのソフトウェア開発・配布に関心が高い。ThoughtWorks参加以前は、トレーニングとソフトウェア開発で有名なThe DSW Group, Ltd.でCTOを務めていた。
ThoughtWorksのソフトウェア・アーキテクトであり、同社のMeme Wrangler。ITコンサルタントとしてグローバルな活動をしている。特に、エンド・トゥ・エンドのソフトウェア開発・配布に関心が高い。ThoughtWorks参加以前は、トレーニングとソフトウェア開発で有名なThe DSW Group, Ltd.でCTOを務めていた。
登録情報
- 出版社 : オライリージャパン (2009/4/27)
- 発売日 : 2009/4/27
- 言語 : 日本語
- 単行本(ソフトカバー) : 284ページ
- ISBN-10 : 4873114020
- ISBN-13 : 978-4873114026
- Amazon 売れ筋ランキング: - 685,081位本 (本の売れ筋ランキングを見る)
- - 12,418位電気・通信 (本)
- カスタマーレビュー:
著者について
著者をフォローして、新作のアップデートや改善されたおすすめを入手してください。
1978年、神奈川県生まれ。電気通信大学電気通信学部卒業。2001年に松下システムエンジニアリング株式会社入社。札幌支社にて携帯電話ソフトウェアの開発業務に従事した後、2006年に独立。2009年に株式会社えにしテックを設立し、現在に至る。2011年からは一般社団法人日本Rubyの会の理事も務めている。
著者の本をもっと発見したり、よく似た著者を見つけたり、著者のブログを読んだりしましょう
-
トップレビュー
上位レビュー、対象国: 日本
レビューのフィルタリング中に問題が発生しました。後でもう一度試してください。
2018年5月13日に日本でレビュー済み
Amazonで購入
図書館で借りて感銘し、購入しました。
「開発プロセス」をうたったものではなく、「日々に作業改善」をうたったものです。
日々、己の作業を改善し見直し続けることが、ソフト屋さんにとっては重要です。
「開発プロセス」に頼りすぎで、日々努力したくない人は買わない方がよいです。
「開発プロセス」をうたったものではなく、「日々に作業改善」をうたったものです。
日々、己の作業を改善し見直し続けることが、ソフト屋さんにとっては重要です。
「開発プロセス」に頼りすぎで、日々努力したくない人は買わない方がよいです。
2013年3月20日に日本でレビュー済み
Amazonで購入
実際の実務で、是非使いたいと思うようなテクニック、ノウハウが満載です。
全体的に Java に偏っている感は否めませんが、それでも実際の開発の現場に役に立つ知識が身に付きます。
エディタは確かに飛躍的に機能が進化してきましたが、クリップボードの機能だけは昔に比べて退化しています。
なぜ、複数のバッファを使えなくなってしまったんでしょうね?
僕が特にお薦めしたいのは、「11章 権威を疑う」の「怒れるサル」です。なんかよく分からない、惰性だけで
続けられてきた習慣があったら、それが本当に正しいのか、疑ってかかる必要があります。
※本筋とは関係ありませんが、どうしても書きたいので記載します。
P213 「図14-1 Cにおける配列のオフセット」の図に、以下のような C のサンプルのソースコードがあります。
int[] arr = malloc (sizeof(int), 2);
これは、以下の2つの理由により、誤りです。malloc() 関数のプロトタイプは以下です。
void *malloc(size_t size);
引数は一つしか指定できないので、コンパイルエラーとなります。また、戻り値の型は void * なので、int 型の配列
の変数 arr には代入できないので、やはりコンパイルエラーとなります。
上記のようなことをやりたい場合は、以下の様にします。
int arr[sizeof(int) * 2];
全体的に Java に偏っている感は否めませんが、それでも実際の開発の現場に役に立つ知識が身に付きます。
エディタは確かに飛躍的に機能が進化してきましたが、クリップボードの機能だけは昔に比べて退化しています。
なぜ、複数のバッファを使えなくなってしまったんでしょうね?
僕が特にお薦めしたいのは、「11章 権威を疑う」の「怒れるサル」です。なんかよく分からない、惰性だけで
続けられてきた習慣があったら、それが本当に正しいのか、疑ってかかる必要があります。
※本筋とは関係ありませんが、どうしても書きたいので記載します。
P213 「図14-1 Cにおける配列のオフセット」の図に、以下のような C のサンプルのソースコードがあります。
int[] arr = malloc (sizeof(int), 2);
これは、以下の2つの理由により、誤りです。malloc() 関数のプロトタイプは以下です。
void *malloc(size_t size);
引数は一つしか指定できないので、コンパイルエラーとなります。また、戻り値の型は void * なので、int 型の配列
の変数 arr には代入できないので、やはりコンパイルエラーとなります。
上記のようなことをやりたい場合は、以下の様にします。
int arr[sizeof(int) * 2];
2009年7月11日に日本でレビュー済み
内容的には多くのプログラミング状況に応用が利くと思われますが、あまりにも Java と アジャイル開発 に偏った説明の仕方をしているため、ぱっと見るとあまり使い出がないように見える人も多いと思う。特に「計画型開発」現場にいる人にとっては、提示される例自体、全然チンプンカンプンで…と言う可能性は非常に高い。ここが -1 の理由。
しかし、特に導入や最初に見せる問題の実例, 解決策の実例は若干 Java に偏っているために、非 Java な環境で作業している人たちにとっては読みにくい、という側面はあるものの、ここに書かれている解決策の多くは Java のみに、あるいは アジャイル開発においてのみ つかえるようなものではない。
大きく言うと
「道具に目を行き届かせよう」
「1つの言語に拘泥しすぎないようにしよう」
「あるモデル・パターンに拘泥しすぎないようにしよう」
という三事を言っており、自分の環境でもある程度応用は聞くはずの内容が多い。
初心者向きではない。上級者は多分同じようなことをどこかで考え・経験しているだろう。「自分よりもずっとうまくプログラミングをするプログラマがいるが、彼らと自分は何が違うのか判らない」というレベルの人たちが読むと丁度良い。
しかし、特に導入や最初に見せる問題の実例, 解決策の実例は若干 Java に偏っているために、非 Java な環境で作業している人たちにとっては読みにくい、という側面はあるものの、ここに書かれている解決策の多くは Java のみに、あるいは アジャイル開発においてのみ つかえるようなものではない。
大きく言うと
「道具に目を行き届かせよう」
「1つの言語に拘泥しすぎないようにしよう」
「あるモデル・パターンに拘泥しすぎないようにしよう」
という三事を言っており、自分の環境でもある程度応用は聞くはずの内容が多い。
初心者向きではない。上級者は多分同じようなことをどこかで考え・経験しているだろう。「自分よりもずっとうまくプログラミングをするプログラマがいるが、彼らと自分は何が違うのか判らない」というレベルの人たちが読むと丁度良い。
2009年6月14日に日本でレビュー済み
ThoughtWorks社のソフトウェア・アーキテクトNeal Ford氏の著作で、ソフトウェア開発者の生産性向上について、今後の開発で試してみたいツール・ノウハウ・知見がちりばめられています。
ラウンチャーの選び方から始まり、開発のいろいろなフェーズにおける細かな工夫、DSL・多言語プログラミングの活用や、Java開発時のアンチ面(なぜStringクラスにisEmpty()が無いか、なぜStringクラスが拡張できないか、なぜ中核となる処理コード以外の雑雑とした記述を書くのか)に至るまで、JavaでWebシステム中心で開発している人なら、興味を持って読めると思います。
文章は読みやすいです。気が向いたときに気の向くままパラパラ読みましたが、その部分部分で楽しく読めました。
超一流の開発者が読むと「いまさら」的な内容かもしれませんが、普通のJava開発者が開発スキル向上を兼ねて気軽に読む1冊としては十分良いと思います。
ラウンチャーの選び方から始まり、開発のいろいろなフェーズにおける細かな工夫、DSL・多言語プログラミングの活用や、Java開発時のアンチ面(なぜStringクラスにisEmpty()が無いか、なぜStringクラスが拡張できないか、なぜ中核となる処理コード以外の雑雑とした記述を書くのか)に至るまで、JavaでWebシステム中心で開発している人なら、興味を持って読めると思います。
文章は読みやすいです。気が向いたときに気の向くままパラパラ読みましたが、その部分部分で楽しく読めました。
超一流の開発者が読むと「いまさら」的な内容かもしれませんが、普通のJava開発者が開発スキル向上を兼ねて気軽に読む1冊としては十分良いと思います。
2010年12月1日に日本でレビュー済み
この本は技法編と実践編の2部で構成されています。
技法編では具体的なツールの紹介などがされていて、
そうそうこれを知っておかないと開発効率落ちるよな〜っていうものが紹介されています。
実践編ではツールというより、考え方の例がいくつか紹介されています。
ツールは時代が変わったら使い物にならなくなったりしますが、
考え方はそう変わるものではないので、この章を読んで、改めて今の凝り固まった考えを考え直させてくれるきっかけを与えてくれるのではないでしょうか^^
生産性を向上したいって言う人は楽しく読み進められると思います。
技法編では具体的なツールの紹介などがされていて、
そうそうこれを知っておかないと開発効率落ちるよな〜っていうものが紹介されています。
実践編ではツールというより、考え方の例がいくつか紹介されています。
ツールは時代が変わったら使い物にならなくなったりしますが、
考え方はそう変わるものではないので、この章を読んで、改めて今の凝り固まった考えを考え直させてくれるきっかけを与えてくれるのではないでしょうか^^
生産性を向上したいって言う人は楽しく読み進められると思います。