フレームワークを使っているのではなく
フレームワークに使われている気分です
(良い仕事をしたい普通のプログラマ)
モチベーションが低いプログラマは
なぜそうなっているのか?
どうしてそうしないといけないのか?
それの何が嬉しいのか?
という問いかけが、半端である
コードに「どっちでもいい」ということは
ないのだけど、組織やプロダクトの文脈から
「あえて」そちらを選ぶことは
モチベーションの低下にはならないはずである
本書で書かれている作法は
名前付けといったミクロな事柄から
フレームワークまで取り扱っているが
語られる主張は一貫しているように思う
良いコードとは、そうした一貫した主張が
香ってくるものであるし、チームや組織にも
同じことがいえる
無料のKindleアプリをダウンロードして、スマートフォン、タブレット、またはコンピューターで今すぐKindle本を読むことができます。Kindleデバイスは必要ありません。
ウェブ版Kindleなら、お使いのブラウザですぐにお読みいただけます。
携帯電話のカメラを使用する - 以下のコードをスキャンし、Kindleアプリをダウンロードしてください。
良いコードを書く技術 -読みやすく保守しやすいプログラミング作法 (WEB+DB PRESS plus) 単行本(ソフトカバー) – 2011/4/9
縣 俊貴
(著)
この商品には新版があります:
読みやすく保守しやすい「良いコード」の書き方を解説した入門書です。『WEB+DB PRESS』(http://gihyo.jp/magazine/wdpress)で断トツ人気だった連載を加筆・修正して書籍化しました。 本書を読むと、良いコードを書くための習慣から名前の付け方、コードの分割や集約を行う方法、抽象化の作法、計算量とアルゴリズム、ユニットテストやメタプログラミングまで、プログラマとして長く役立つ基本が身につきます。
- 本の長さ240ページ
- 言語日本語
- 出版社技術評論社
- 発売日2011/4/9
- ISBN-104774145963
- ISBN-13978-4774145969
この商品をチェックした人はこんな商品もチェックしています
ページ 1 以下のうち 1 最初から観るページ 1 以下のうち 1
商品の説明
著者について
縣 俊貴(あがた としたか)
学生時代にMSXで制限された環境でのプログラミングの楽しさを学ぶ。以来、オープンソースのWiki実装「MobWiki」の開発や受託開発などを経て、現在はプロジェクト管理ツール「Backlog」(http://www.backlog.jp/)、ドローツール「Cacoo」(http://cacoo.com/)など、コラボレーション型のWebサービスの企画と製品開発を行う。また、Webアプリケーションフレームワーク「Cubby」(http://cubby.seasar.org/)のコミッタを務める。福岡在住。株式会社ヌーラボ(http://www.nulab.co.jp/)所属。
ブログ :http://d.hatena.ne.jp/agt
Twitter:@agata
学生時代にMSXで制限された環境でのプログラミングの楽しさを学ぶ。以来、オープンソースのWiki実装「MobWiki」の開発や受託開発などを経て、現在はプロジェクト管理ツール「Backlog」(http://www.backlog.jp/)、ドローツール「Cacoo」(http://cacoo.com/)など、コラボレーション型のWebサービスの企画と製品開発を行う。また、Webアプリケーションフレームワーク「Cubby」(http://cubby.seasar.org/)のコミッタを務める。福岡在住。株式会社ヌーラボ(http://www.nulab.co.jp/)所属。
ブログ :http://d.hatena.ne.jp/agt
Twitter:@agata
登録情報
- 出版社 : 技術評論社 (2011/4/9)
- 発売日 : 2011/4/9
- 言語 : 日本語
- 単行本(ソフトカバー) : 240ページ
- ISBN-10 : 4774145963
- ISBN-13 : 978-4774145969
- Amazon 売れ筋ランキング: - 551,608位本 (本の売れ筋ランキングを見る)
- - 9,556位電気・通信 (本)
- カスタマーレビュー:
著者について
著者をフォローして、新作のアップデートや改善されたおすすめを入手してください。
著者の本をもっと発見したり、よく似た著者を見つけたり、著者のブログを読んだりしましょう
-
トップレビュー
上位レビュー、対象国: 日本
レビューのフィルタリング中に問題が発生しました。後でもう一度試してください。
2014年5月28日に日本でレビュー済み
Amazonで購入
上級の方には物足りない内容かもしれませんが、
基礎を学ぶには最適な本だと思います。
わかっているつもり、できてるつもりがスパゲティの元です。
特に新人プログラマの参考書として大変役にたつと思います。
事実、うちの会社では調法しています。
作者のプロダクトなどにも通じるものがあるのかもしれませんが、本質はシンプルなんだと思います。
そのシンプルさが本当に難しいですね。
また上級プログラムを目指している方は一度、基本に立ち返るのもよいと思います。
個人的にはまれにみる良書だと思います。
基礎を学ぶには最適な本だと思います。
わかっているつもり、できてるつもりがスパゲティの元です。
特に新人プログラマの参考書として大変役にたつと思います。
事実、うちの会社では調法しています。
作者のプロダクトなどにも通じるものがあるのかもしれませんが、本質はシンプルなんだと思います。
そのシンプルさが本当に難しいですね。
また上級プログラムを目指している方は一度、基本に立ち返るのもよいと思います。
個人的にはまれにみる良書だと思います。
2019年7月12日に日本でレビュー済み
Amazonで購入
なりたてエンジニアとして基礎からちゃんと見とおこうと思い購入しましたが、想像以上に内容が薄く感じられました。
他の方のレビューを見て購入しましたがまさかここまでないとは…
他の方のレビューを見て購入しましたがまさかここまでないとは…
2011年4月27日に日本でレビュー済み
Amazonで購入
タイトルからよいコードを書くための考え方や思考を学べる本だと思っていたが、実際は表面的な内容で薄っぺらく感じた。
ファウラーのリファクタリングの劣化コピーといった印象であり、本書を購入するよりもそちらをおすすめしたい。
ファウラーのリファクタリングの劣化コピーといった印象であり、本書を購入するよりもそちらをおすすめしたい。
2011年6月9日に日本でレビュー済み
Amazonで購入
初学者が次のステップを目指す為に「どういったものがこの先にあるのか」を示す俯瞰図として。
または、中級者・上級者が自分のプログラミング技能の棚卸しをする為の俯瞰図として。
この2点において、「広く浅く」という構成は非常に良いアプローチだったと考えます。
または、中級者・上級者が自分のプログラミング技能の棚卸しをする為の俯瞰図として。
この2点において、「広く浅く」という構成は非常に良いアプローチだったと考えます。
2015年10月23日に日本でレビュー済み
他のレビュアーが言うように確かに内容は薄い。
というのも本当に当たり前のことしか書いていないのだ。
恐らく「普通のプログラマ」と銘打っているから酷評されているのであって、初学者向けの書籍だと思う。
それを前提に読み進めれば、深い世界はあえて外し混乱をさけるように説明しているように見える。
勿論深い内容を知りたければ、そもそも特定の言語系や、作業に特化した書籍を読む事をオススメする。
ただ何と無くコードを書いている人、Pgレベルの人には良い本なのではないだろうか。
というのも本当に当たり前のことしか書いていないのだ。
恐らく「普通のプログラマ」と銘打っているから酷評されているのであって、初学者向けの書籍だと思う。
それを前提に読み進めれば、深い世界はあえて外し混乱をさけるように説明しているように見える。
勿論深い内容を知りたければ、そもそも特定の言語系や、作業に特化した書籍を読む事をオススメする。
ただ何と無くコードを書いている人、Pgレベルの人には良い本なのではないだろうか。
2012年10月30日に日本でレビュー済み
Amazonで購入
タイトルと帯だけをみて購入しました。
良いコードを書く技術についてはほとんど書かれておらず、他の方のレビューにある通り、薄っぺらな印象を受けました。言語を覚えたての新米プログラマが、次のステップを目指して本商品を選んだとしても、これではきっと物足りないと感じるのではないでしょうか。他の良書と同じぐらいの価格設定だけに、余計に残念に感じます。
良いコードを書く技術についてはほとんど書かれておらず、他の方のレビューにある通り、薄っぺらな印象を受けました。言語を覚えたての新米プログラマが、次のステップを目指して本商品を選んだとしても、これではきっと物足りないと感じるのではないでしょうか。他の良書と同じぐらいの価格設定だけに、余計に残念に感じます。
2014年1月8日に日本でレビュー済み
酷評している人もいるようですが、少なくとも私にはずいぶん勉強になりました。仕事柄プログラムを書く羽目に陥りましたが、正規のトレーニングを受けたことはないし、私の相談相手になった同僚も経験年数は7年にもなりますが、本人も認めるスパゲッティ・コード屋で、ルーチンを維持管理せず、毎回毎回スクリプトを書いているということで、こんなことで本当にいいのかなと戸惑っていました。
全般的に初心者向けの内容だと思いますが、ひと通り重要なポイントが押さえてあるので概観を得るにはよいと思います。
本書での良いコードの定義は、保守性が高い、素早く効率的に動作する、正確に動作する、無駄な部分がないの4つです。
code reading と言って他人が書いたコードを積極的に読むことを薦めています。もちろん必要に迫られてそうしたことはあり、読んだコードを手本にして自分のものに反映させたことはありますが、読むこと自体を意識したことはありませんでした。
ヴァージョン管理ツールというものも初耳で、使いこなせたら便利そうだなと思いました。(この本を読んだ後、他からも薦められて今ではGitを使っており、ここでも恩恵を受けています。)
名前付けにはかなりの分量を割いています。私もいつも鬱陶しいなあと思っていましたが、これを読んで、プログラム言語は英語が元になっているために、日本人のプログラマーはアルゴリズムは思いついても、変数や関数の名前付けでは相当苦労しているはずで、「保守性」という点では欧米のプログラマよりも圧倒的なハンデがあるのではないかと思いました。プログラマ育成には英語教育が必要なのではないでしょうか。よい情報のほとんどは英語ですし。
スコープについても、前から気になっていましたが、スコープを極力小さくせよ、とか、長いスコープの変数には特に分かりやすい名前をつけよ、というのは非常に分かりやすかった。名前の付け方の指針を与えてくれたことで迷いが減りました。
単体テストという概念も初めて知りました。
読者のレベルによると思いますが、目次をご覧になってみてこういった内容にまだ馴染みがない方は本書で得られることは多いかと思います。注文をつけるならば、それぞれの話題について知識を深めるための道筋をもうちょっと示して欲しかった気がします。
全般的に初心者向けの内容だと思いますが、ひと通り重要なポイントが押さえてあるので概観を得るにはよいと思います。
本書での良いコードの定義は、保守性が高い、素早く効率的に動作する、正確に動作する、無駄な部分がないの4つです。
code reading と言って他人が書いたコードを積極的に読むことを薦めています。もちろん必要に迫られてそうしたことはあり、読んだコードを手本にして自分のものに反映させたことはありますが、読むこと自体を意識したことはありませんでした。
ヴァージョン管理ツールというものも初耳で、使いこなせたら便利そうだなと思いました。(この本を読んだ後、他からも薦められて今ではGitを使っており、ここでも恩恵を受けています。)
名前付けにはかなりの分量を割いています。私もいつも鬱陶しいなあと思っていましたが、これを読んで、プログラム言語は英語が元になっているために、日本人のプログラマーはアルゴリズムは思いついても、変数や関数の名前付けでは相当苦労しているはずで、「保守性」という点では欧米のプログラマよりも圧倒的なハンデがあるのではないかと思いました。プログラマ育成には英語教育が必要なのではないでしょうか。よい情報のほとんどは英語ですし。
スコープについても、前から気になっていましたが、スコープを極力小さくせよ、とか、長いスコープの変数には特に分かりやすい名前をつけよ、というのは非常に分かりやすかった。名前の付け方の指針を与えてくれたことで迷いが減りました。
単体テストという概念も初めて知りました。
読者のレベルによると思いますが、目次をご覧になってみてこういった内容にまだ馴染みがない方は本書で得られることは多いかと思います。注文をつけるならば、それぞれの話題について知識を深めるための道筋をもうちょっと示して欲しかった気がします。