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

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

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

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


当前回答

编写小方法。程序员似乎喜欢编写冗长的方法,在这些方法中他们可以做多种不同的事情。

我认为应该在任何可以命名的地方创建方法。

其他回答

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

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

偶尔写一些垃圾代码是可以的

有时,一段快速而肮脏的垃圾代码就是完成特定任务所需要的全部。模式、orm、SRP等等……抛出一个控制台或Web应用程序,写一些内联sql(感觉不错),然后抛出需求。

异常被认为是有害的。

观点:永远不要在“调试”和“发布”版本之间有不同的代码

主要原因是发布代码几乎从未经过测试。最好让在测试中运行的代码与在野外运行的代码相同。

应该禁止调试器。这将迫使人们编写可通过单元测试测试的代码,最终将导致更好的代码质量。

从所有编程ide中删除复制和粘贴。复制和粘贴代码是非常糟糕的,这个选项应该完全删除。然后程序员可能会懒得重新输入所有的代码,所以他会创建一个函数并重用代码。

无论何时使用单例,都要给自己一个耳光。单例几乎从来没有必要,大多数时候只是全局变量的花哨名称。