关闭。这个问题是opinion-based .它目前不接受答案。
想改善这个问题吗?更新问题,以便可以通过 editing this post 用事实和引文回答问题.
4年前关闭。
Improve this question
是否有任何启发式方法可以用来确定设计中是否存在缺陷?或者它几乎是一种伴随经验而来的主观技能?我经常看到工程师先想到他们的第一个设计,然后根据结果进行调整,这样就完成了工作,但很耗时。我想知道 SO 的大师们是怎么想的。
最佳答案
我个人经常使用Alloy以获得对我的设计的更多信心 - 这是一个 article on it (以及其他同类工具)很好地描述了它。并非所有人都相信这些东西,当然也不适合所有人,但每次我接触它时,它都对我有所帮助,即使我不使用它,知道它会如何分析我的东西也有帮助。
我认为设计的一部分确实是一些主观技能。我总是尽量减少设计中的概念。我更喜欢编写一个简单的、最小的核心,并在顶部放置一(或两)层,将概念映射到底层。有时有不止一个最小集合。在人们提出您在原始设计中没有想到的新要求之前,通常不清楚是否做出了正确的选择。然后我想回想一下,如果我选择了另一个最小集合,添加会更容易还是更困难。最近的项目表明我对此慢慢有了好感:)。
所以是的,我想经验很重要。我不认为你可以真正擅长设计,除非你犯了很多错误。
我真的很喜欢这个设计介绍的建议。过去我经常思考这个问题。我认为如果你想把它展示给其他人,你真的需要很好地理解设计(至少,在某种程度上,让每个人都明白你将要做什么)。
关于architecture - 在实现任何代码之前评估设计的任何好方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1234495/