What about software design?
启发式?学习消化知识?丰富上下文?抽象?Keep you in a secure situation?Good designer——》Good design?Is design dead?
You know how to do it, and know how to extend it。But you only implement it to meet present requirement? (Kent beck about Succession
)
How to handle complexity(modularized
)?
What is essential of design?
What is essential of architecture design?
也有人说软件开发根本就没有设计,而只有分析和写代码
。大约40年前,就有人这么说了。
分析比设计重要?(分析明白了,设计显而易见)
从制造业的角度来讲,设计是因为社会化分工导致的?
概念完整性是优秀设计的前提?
放眼世界,心怀祖国,始终谨记目标?
XP崇尚简单设计,基本上是弱化设计的作用,一部分由测试驱动来替代。
一个隐喻:好比从上海到北京,你可以预先计划好每一条小路,每一个步骤。然后按计划行事。但你避免不了赶上你预先计划的那条路在修路。敏捷设计:今天我只知道像北走,先到扬州,到了扬州我问了一下,去北京要向北走,下一站是淮北,顶多知道到济南。我的设计知识是路上学的,软件设计很多也是从迭代中学的。而且软件的复杂性远比这个旅程复杂,从做中学习,反馈,改进,必不可少。
上面这个隐喻的前提是,你始终知道你的方向,这个就是架构设计,需要前瞻性。你怎么能获得前瞻性呢?(经验,直觉?)
设计就是不断问题,不断获得概念的完整性,不断的调整?
你简直就是10万个为什么。
以前对软件设计感觉看的很清晰,现在感觉越来越迷茫,头绪太多,一时没法理清。
I don't know, What about software design?
Who tell me and talk about it?
分享到:
相关推荐
What makes a good design? What methods and processes are there to help you design software? Is designing small programs different from designing large ones? How can you tell a good design from a bad ...
Capturing a wealth of experience about the design of object-oriented software, four top-notch designers present a catalog of simple and succinct solutions to commonly occurring design problems....
The main point of the clean architecture is to make clear “what is where and why”, and this should be your first concern while you design and implement a software system, whatever architecture or ...
书的目录 ... About the Author Acknowledgments We Want to Hear from You! Introduction About the Second Edition ... What we've heard from expert reviewers about Ron Patton's Software Testing Index
about good software design in resource constrained environments. It is also a book about understanding what interviewers look for when you apply for an embedded systems job. Each section ends with an ...
Secure by Design teaches developers how to use design to drive security in software development. This book is full of patterns, best practices, and mindsets that you can directly apply to your real ...
Software Architecture for Developers is a practical and pragmatic guide to modern software architecture, ...What "just enough" up front design means. How to identify risks with risk-storming.
It describes the techniques software designers use to reason about medium to large sized problems and points out where you can learn specialized techniques in more detail. It provides practical ...
With the increasing focus on optimized software architecture and design it is important that software architects think about optimizations in object creation, code structure, and interaction between ...
You will then learn how to apply the 23 GoF design patterns in Go and also learn about CSP concurrency patterns, the "killer feature" in Go that has helped Google develop software to maintain ...
What are the functions of the design? What are its constraints? What aspects of the design should be optimized at the expense of others? This is a process of gathering and organizing ...
You will then learn how to apply the 23 GoF design patterns in Go and also learn about CSP concurrency patterns, the "killer feature" in Go that has helped Google develop software to maintain ...
Elevation is about being more polite 273 Elevation means giving your software a better personality 274 Elevation means understanding good design 276 Seek Out and Learn from Great Examples 277 ...
Knowing about design patterns enables developers to improve their code base, promoting code reuse and making their design more robust. This book focuses on the practical aspects of programming in ...
You want to learn the real OO design principles and why everything your boss told you about inheritance might be wrong (and what to do instead). You want to learn how those principles will help the ...