A Philosophy of Software Design epub pdf mobi txt 电子书 下载 2025
发表于2025-01-13
A Philosophy of Software Design epub pdf mobi txt 电子书 下载 2025
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
A Philosophy of Software Design epub pdf mobi txt 电子书 下载 2025
A Philosophy of Software Design 下载 epub mobi pdf txt 电子书 2025A Philosophy of Software Design mobi pdf epub txt 电子书 下载 2025
A Philosophy of Software Design epub pdf mobi txt 电子书 下载##本书就是讲怎么降低软件的复杂度(Complexity)。软件是人类历史上最具创造性的活动,取决于我们对所构建系统的理解的深度。不管我们怎么努力,软件的复杂性总会随着时间推移逐渐增加。有两种两种方法来应对复杂度:1. 简单(simple)、容易理解(obvious) 2. 封装好复杂度(encapsul...
评分 评分##本书就是讲怎么降低软件的复杂度(Complexity)。软件是人类历史上最具创造性的活动,取决于我们对所构建系统的理解的深度。不管我们怎么努力,软件的复杂性总会随着时间推移逐渐增加。有两种两种方法来应对复杂度:1. 简单(simple)、容易理解(obvious) 2. 封装好复杂度(encapsul...
评分##看完我想到一个词,“斟酌”。在软件设置的每个阶段都要反复去斟酌,架构设计、数据结构、接口、实现、方法的定义与实现,一段业务逻辑一行注释一个变量都要反复斟酌。总之就是要把软件当成一件艺术品一般去雕刻,一切的一切为了控制软件的复杂性。虽然对于大部分CRUD boy来说都是需求驱动、工期驱动。但请切记,写代码要反复斟酌,这一定可以让你在CRUD boys里面脱颖而出。
评分 评分##复杂度
评分 评分 评分A Philosophy of Software Design epub pdf mobi txt 电子书 下载 2025