architecture - 在实现任何代码之前评估设计的任何好方法?

标签 architecture

关闭。这个问题是opinion-based .它目前不接受答案。












想改善这个问题吗?更新问题,以便可以通过 editing this post 用事实和引文回答问题.

4年前关闭。




Improve this question




是否有任何启发式方法可以用来确定设计中是否存在缺陷?或者它几乎是一种伴随经验而来的主观技能?我经常看到工程师先想到他们的第一个设计,然后根据结果进行调整,这样就完成了工作,但很耗时。我想知道 SO 的大师们是怎么想的。

最佳答案

我个人经常使用Alloy以获得对我的设计的更多信心 - 这是一个 article on it (以及其他同类工具)很好地描述了它。并非所有人都相信这些东西,当然也不适合所有人,但每次我接触它时,它都对我有所帮助,即使我不使用它,知道它会如何分析我的东西也有帮助。

我认为设计的一部分确实是一些主观技能。我总是尽量减少设计中的概念。我更喜欢编写一个简单的、最小的核心,并在顶部放置一(或两)层,将概念映射到底层。有时有不止一个最小集合。在人们提出您在原始设计中没有想到的新要求之前,通常不清楚是否做出了正确的选择。然后我想回想一下,如果我选择了另一个最小集合,添加会更容易还是更困难。最近的项目表明我对此慢慢有了好感:)。

所以是的,我想经验很重要。我不认为你可以真正擅长设计,除非你犯了很多错误。

我真的很喜欢这个设计介绍的建议。过去我经常思考这个问题。我认为如果你想把它展示给其他人,你真的需要很好地理解设计(至少,在某种程度上,让每个人都明白你将要做什么)。

关于architecture - 在实现任何代码之前评估设计的任何好方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1234495/

相关文章:

google-app-engine - PaaS 中的 SOA 云可能吗?

azure - Multi-Tenancy 应用程序的数据库设计问题

java - 单页应用程序: page reload

asp.net - ASP.NET 中的沙箱架构?

sql - 面向列的数据库与面向行的数据库

design-patterns - 域实体/对象并向其中注入(inject)服务感觉完全错误,有理由吗?

asp.net - MVVM、SOA 和 AJAX(天哪?)

ios - 在转换应用程序中构建数据

sql-server - Microsoft 立方体使用边界和最佳实践

java - MVC 模型适合基本的纸牌游戏吗?