这绝对是主观的,但我想尽量避免它变成争论。我认为如果人们恰当地对待它,这将是一个有趣的问题。

这个问题的想法来自于我对“你最讨厌的语言的哪五件事?”问题的回答。我认为c#中的类在默认情况下应该是密封的——我不会把我的理由放在这个问题上,但我可能会写一个更完整的解释来回答这个问题。我对评论中的讨论热度感到惊讶(目前有25条评论)。

那么,你有什么有争议的观点?我宁愿避免那些基于相对较少的基础而导致相当宗教的事情(例如,大括号放置),但例如可能包括“单元测试实际上并没有多大帮助”或“公共字段确实是可以的”之类的事情。重要的是(至少对我来说)你的观点背后是有理由的。

请提出你的观点和理由——我鼓励人们投票给那些有充分论证和有趣的观点,不管你是否恰好同意这些观点。


当前回答

大多数咨询程序员都很糟糕,不应该被允许编写产品代码。

恕我冒昧,大概60%或更多

其他回答

我认为在c#中使用区域来折叠你的代码是完全可以接受的,而在vs中,太多的人试图说它隐藏了你的代码,让你很难找到东西。但如果你正确地使用它们,它们对识别代码段非常有帮助。

开发人员不应该测试他们自己的软件

开发和测试是两个截然相反的学科。开发就是建造,测试就是拆除。有效的测试需要一种特定的心态和方法来发现开发人员的错误,找到他们假设中的漏洞,以及他们逻辑中的缺陷。大多数人,包括我自己在内,根本无法将自己和自己的代码置于这样的审查之下,并且仍然保持客观。

许多开发人员对在哪里放置东西没有充分的认识,导致在文件、类和方法级别上源代码组织混乱。此外,相当一部分这样的开发人员基本上对代码组织问题一无所知。试图教导、哄骗、威胁或羞辱他们保持代码干净是徒劳的。

在任何一个非常成功的项目中,通常都有一个开发人员,他有良好的组织意识,非常安静地对代码库进行扫把,以防止混乱。

手动停止程序是一种有效的、经过验证的查找性能问题的方法。

可信吗?对大多数人来说并非如此。真的吗?绝对的。

程序员的判断比必要的要多得多。

看看这些帖子中所有被认为是“邪恶”或“可怕”的事情吧。

程序员喜欢数据结构。

见证所有关于类、继承、私有与公共、内存管理等以及如何分析需求的讨论。

微软Windows是软件开发的最佳平台。

推理: 微软用优秀而廉价的开发工具,平台和API都有良好的文档记录,平台正在快速发展,这为开发者创造了很多机会,操作系统拥有庞大的用户基础,这对于明显的商业原因很重要,有一个庞大的Windows开发者社区,我还没有因为选择微软而被解雇。