John Ousterhout is the Bosack Lerner Professor of Computer Science at Stanford University. His current research focuses on new software stack layers to allow datacenter applications to take advantage of communication and storage technologies with microsecond-scale latencies. Ousterhout's prior positions include 14 years in industry, where he founded two companies (Scriptics and Electric Cloud), preceded by 14 years as Professor of Computer Science at U.C. Berkeley. He is the creator of the Tcl scripting language and is also well known for his work in distributed operating systems and storage systems. Ousterhout received a BS degree in Physics from Yale University and a PhD in Computer Science from Carnegie Mellon University. He is a member of the National Academy of Engineering and has received numerous awards, including the ACM Software System Award, the ACM Grace Murray Hopper Award, the National Science Foundation Presidential Young Investigator Award, and the U.C. Berkeley Distinguished Teaching Award.
This book addresses the topic of software design: how to decompose complex software systems into modules (such as classes and methods) that can be implemented relatively independently. The book first introduces the fundamental problem in software design, which is managing complexity. It then discusses philosophical issues about how to approach the software design process, and it presents a collection of design principles to apply during software design. The book also introduces a set of red flags that identify design problems. You can apply the ideas in this book to minimize the complexity of large software systems, so that you can write software more quickly
發表於2025-03-22
A Philosophy of Software Design 2025 pdf epub mobi 電子書 下載
減少軟件復雜度是本書的主題,為此作者提齣瞭模塊深度的概念,並從該角度對編程中的種種進行瞭分析。 第四章 Modules Should Be Deep是比較核心的一個章節,我把它的主要內容翻譯成瞭中文,文章是《 軟件設計之Deep Module(深模塊)》,歡迎閱覽和指正。 有人說書中不少內容是...
評分減少軟件復雜度是本書的主題,為此作者提齣瞭模塊深度的概念,並從該角度對編程中的種種進行瞭分析。 第四章 Modules Should Be Deep是比較核心的一個章節,我把它的主要內容翻譯成瞭中文,文章是《 軟件設計之Deep Module(深模塊)》,歡迎閱覽和指正。 有人說書中不少內容是...
評分最近剛讀完的一本書,書名裏麵帶有philosophy,其實大可不必驚慌,這本書的核心就是關於軟件設計中的復雜度。 作者開門見山提齣瞭本書的兩個目標,一個是講述復雜度的各種特點,另外進一步的目標就是介紹減小軟件設計復雜度的各種方法和技巧。 這本書頁數不多,一個周末就讀完...
評分1. complexity is incremental:you have to sweat the small stuff 2. working code isn’t enough 3. make continual small investments to improve system design 4. interfaces should be designed to make the most common usage as soon as possible 5.module should be d...
評分圖書標籤: 軟件工程 軟件架構 計算機 軟件設計 編程 程序設計 架構師 programming
#道理都懂然鵝係列
評分降低復雜度,less is more
評分感覺悟到瞭很多,又有很多抓不住,能實踐的更少,但確實改變瞭我對軟件設計的很多錯誤認識,值得一讀
評分理論和實踐兼具,沒得說。
評分說到底就一句話,多設計
A Philosophy of Software Design 2025 pdf epub mobi 電子書 下載