
软件设计的哲学
A Philosophy of Software Design
John K. Ousterhout · 初版 2018 年
166人推荐
236位读者提及
351次提及
为什么值得读
- 提倡小接口深隐藏的模块化类设计
- 深入剖析软件设计中的认知负荷控制
- 篇幅精简,利用一个周末即可通读
Hacker News 上怎么说
正在加载完整评论……

A Philosophy of Software Design
John K. Ousterhout · 初版 2018 年
正在加载完整评论……
《软件设计的哲学》(A Philosophy of Software Design)。写得非常好。全书 190 页,一个周末基本就能读完。哪怕你只读了 70%,价值也极其巨大。作为一套底层原则,它合情合理,让……
A Philosophy of Software Design. Very well-written. At 190 pages, quite likely finish-able in a weekend. But if you get 70% of the way through it, that is still very valuable. It makes sense as an underlying set of principles that…
我是一名软件工程师,但这些东西对我成功的帮助,没有任何一本讲编程的书能比得上(虽然如果约翰·欧斯特豪特(John Ousterhout)的《软件设计的哲学》早点出版的话,或许能比一比)。个人时间/任务管理——经典神作《搞定》(Getting Things Done,https://www.amazon.com/Getting-Things-Done-Stress-Free-Produ...)。它对……
I'm a software engineer, but these have been instrumental in my success in a way no coding book can compare to(though John Ousterhout's "A Philosophy of Software Design" would have, if it came out earlier in my life). Personal time/task management- The classic, Getting Things Done(https://www.amazon.com/Getting-Things-Done-Stress-Free-Produ...). The power this has on…
我很喜欢约翰·K·欧斯特豪特写的《软件设计的哲学》(A Philosophy of Software Design)https://www.worldcat.org/title/philosophy-of-software-design... 不过先提醒一下,全书 180 页,更多偏向启发和理念而不是保姆式指导。这取决于你身处什么样的组织……
I enjoyed "A philosophy of software design" by John K Ousterhout https://www.worldcat.org/title/philosophy-of-software-design... just be forewarned that at 180 pages, it's a lot more aspirational than instructive. It depends on what kind of organizational…
欧斯特豪特的《软件设计的哲学》是我过去几年最喜欢的书。虽然偏短,但里面有些东西我读到第三遍依然在消化,还有很多内容是我以前凭直觉知道、但他……
"A Philosophy of Software Design" by Ousterhout is my favourite of the last few years. It's a shortish book but there is stuff in it I'm still unpacking on the third read through and a lot of stuff I sorta instinctively knew but it's…
我认为关于认知负荷(cognitive load)最精辟的单一洞见就出自欧斯特豪特的《软件设计的哲学》[1]。他在书中倡导类(class)应该是“深(deep)”的,即顶层暴露的 surface API 相对其底层隐藏的复杂性来说应该足够小。这同样适用于微服务/单体架构(microservice/monolith)……
I think the best single observation about cognitive load is in Ousterhout's book A Philosophy of Software Design[1]. In the book he promotes the idea that classes should be "deep", such that their top-level surface API is small relative to the complexity they hide underneath. This applies to the microservice/monolith…
杰拉尔德·温伯格(Gerald Weinberg)的《程序开发心理学》(The Psychology of Computer Programming)。有些措辞过时了(他在 25 周年纪念版里自己也提到了),但总体极好。约翰·欧斯特豪特的《软件设计的哲学》(A Philosophy of Software Design),篇幅很短,读得很快。等我搞清楚我老婆把它藏在哪个书架上之后我会重读一遍(她不喜欢我堆书如山的“整理”方式,把好多东西搬到了书架上……
The Psychology of Computer Programming by Gerald Weinberg. Some dated language (which he calls out himself in the 25th anniversary edition), but overall very good. A Philosophy of Software Design by John Ousterhout, short book, quick read. I'll be rereading it once I figure out which bookshelf my wife hid it on (she doesn't like my bookstack approach to "organizing" and moved many things to shelves…