Skip to Content
ルールズ・オブ・プログラミング ―より良いコードを書くための21のルール
book

ルールズ・オブ・プログラミング ―より良いコードを書くための21のルール

by Chris Zimmerman, 久富木 隆一
August 2023
Intermediate to advanced
452 pages
5h 11m
Japanese
O'Reilly Japan, Inc.
Content preview from ルールズ・オブ・プログラミング ―より良いコードを書くための21のルール

ルール12大きなチームには強い規則が必要

 本書の一番基本的な考え方は、プログラミングとは複雑なものであり、個人として、またチームとしての生産性は、そういう複雑性の制約を受けるってことだ。物事を複雑にすればするほど、あるいは物事が複雑になるに任せておけばおくほど、成功は遠のくだろう。物事を単純に留めておけばおくほど、大きく成功するだろう。だから、物事を単純な状態に保とう!

 このアドバイスは、取り掛かってるプロジェクトがどんな種類だろうが当てはまる。でも、当てはまる度合いはプロジェクトによって異なる。

 複雑性が余分にあったとしても問題にならないほど、小規模で単純なプロジェクトもある。とある午後に100行のコードを1人で書き、用が済んだら捨てるつもりなら、とにかくどんな風にでも好きに書ける。そうしたからといって、人に何か言われることもない。

 チームに入ると、たとえ2人のチームであっても、そういうわけにはいかなくなってくる。「自分のコード」と「他人のコード」の間に線を引いて、線で分けられた自分側のコードの書き方を各人が決めるようにしようとするかもしれない……でもあまりうまくいかないだろう。自分側の部分が、別の部分から非常にきれいに分かれていて、プロジェクトの存続期間中ずっとそのままってわけでもない限り、その境界の両側を短い間に定期的に行き来することになるだろう。半分に分かれた各部分同士のインターフェイスを定義する場合すら問題になる。例えば、境界線の両側にインターフェイスが半分ずつある場合、インターフェイスの名前をどうするかは誰が決めるのか?

 そういう「自分側と他人側」パターンを、もっと規模が大きいチーム向けに拡張する良い方法は、存在しない。にもかかわらず、やろうとする者が後を絶たない。プログラマーによっては、「自分の」コードに関するありとあらゆる決定を自分でやることに強い魅力を感じる者もいる。プログラミングとは創造的な行為であり、制約があれば創造性が失われていってしまうと主張したりする風潮も見られる。また、あるプロジェクトに属する別々の部分は、必要とするものも別々なので、別々に扱われるべきと主張しがちだ。あるいは、自分のプログラミングスタイルの一番細かい部分に執着してしまいやすい。でも、中括弧の場所 ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

行動を変えるデザイン ―心理学と行動経済学をプロダクトデザインに活用する

行動を変えるデザイン ―心理学と行動経済学をプロダクトデザインに活用する

Stephen Wendel, 武山 政直, 相島 雅樹, 反中 望, 松村 草也
レガシーコードからの脱却 ―ソフトウェアの寿命を延ばし価値を高める9つのプラクティス

レガシーコードからの脱却 ―ソフトウェアの寿命を延ばし価値を高める9つのプラクティス

David Scott Bernstein, 吉羽 龍太郎, 永瀬 美穂, 原田 騎郎, 有野 雅士
リーンエンタープライズ ―イノベーションを実現する創発的な組織づくり

リーンエンタープライズ ―イノベーションを実現する創発的な組織づくり

Jez Humble, Joanne Molesky, Barry O'Reilly, 角 征典, 笹井 崇司, Eric Ries

Publisher Resources

ISBN: 9784814400416Other