We don’t allow questions seeking recommendations for software libraries, tutorials, tools, books, or other off-site resources. You can edit the question so it can be answered with facts and citations.
Closed 9 years ago.
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(8)
航天飞机软件?
他们写了正确的东西
The Space Shuttle software?
They Write the Right Stuff
.NET 框架。
The .NET Framework.
特克斯?
Knuth 仍然提供对已确认错误的奖励。
顺便说一句:我不确定高德纳是否赞同任何流行语机制来进行真正稳健的开发。 不知道他是怎么做到的。 也许只是注重细节。
TeX?
Knuth is still offering the reward for confirmed bugs.
BTW: I'm not sure that Knuth subscribes to any buzzword-mechanism for doing really robust development. No idea how he does it. Maybe just attention to detail.
升压库
Boost library
许多其他帖子提到的程序尚未通过 TDD 实现,因此没有给出“我真的很想深入研究并看看好的 TDD/SOLID/等是什么样子”的答案。 例如,我非常肯定 Apache HTTPD Server 和 Firefox 的来源甚至从未见过 TDD。 我只是浏览了一下他们的源代码,测试文件夹中只有几个小文件,而且生产代码看起来也不像是用 TDD 或遵循 SOLID 编写的。
例如 Fitnesse 是由 SOLID 的发明者使用 TDD 编写的。 这应该是此类代码的一个很好的参考,尤其是代码的较新部分(在他的书中 干净的代码,Bob叔叔有一些来自Fitnesse的不良代码示例,然后他清理了这些示例,因此不一定Fitnesse中的所有代码都是干净的)。
我还会加入我自己的项目,Dimdwarf Application Server,它是 100% 使用 TDD 编写的/ BDD 并尝试编写尽可能干净的代码(遵循 SOLID 等)。 那里也有一些丑陋的部分(主要是任务调度和垃圾收集),但这些部分仍在工作中,当这些功能完成时它们将被清理。
Many of the other posts mention programs, which have not been implemented with TDD, and as such do not give an answer to "I'd really like to dig in and see what good TDD/SOLID/etc. looks like." For example, I'm quite positive that the sources of Apache HTTPD Server and Firefox have never even seen TDD. I just browsed a little their sources, and there were only a couple of small files in the test folders, and the production code didn't look like it was written with TDD or by following SOLID either.
For example Fitnesse has been written using TDD by the inventor of SOLID. That should be a good reference of what such code looks like, especially the newer parts of the code (in his book Clean Code, Uncle Bob has some examples of bad code from Fitnesse, which he then cleans up, so not necessarily all code in Fitnesse is clean).
I'll also throw in my own project, Dimdwarf Application Server, which has been written 100% with TDD/BDD and by trying to write as clean code as possible (following SOLID etc.). There are some ugly parts there as well (mostly in task scheduling and garbage collection), but those parts are still under work and they will be cleaned up by the time those features are complete.
谷歌浏览器
Google Chrome
Firefox 2.0
Firefox 2.0
阿帕奇httpd。
另外:Graphviz - 强大、一致性和简单性的绝佳示例。
我见过的最好的计件代码就是礼节; 它已被加工成真正优雅和美丽的东西。 但遗憾的是它必须保持匿名。
顺便说一句:任何可以简化的庞大接口/API,都不是按照定义设计的。 对于许多公司来说,又大又丑的界面只会变得更大和更丑。
保罗.
Apache httpd.
Also: Graphviz - an awesome example of power, consistency and simplicity.
The best piece code I ever saw was propriety; it had been worked into a thing of true elegance and beauty. But sadly it must remain anonymous.
BTW: Any huge interface/api that could be simplified, is not solidly designed by definition. And for many companies, big ugly interfaces only get bigger and uglier.
Paul.