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

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

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

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


当前回答

如果不值得测试,就不值得构建

其他回答

糟糕的IDE会让编程语言变弱

优秀的编程ide确实使某些语言的工作更容易,更好地监督。在我的职业生涯中,我有点被宠坏了,我工作的公司总是有最新的Visual Studio可供使用。

在过去的8个月里,我一直在做很多关于Cocoa的工作,而Xcode编辑器使得使用这种语言变得非常困难。重载很难找到,处理打开文件的整体方式只会让你的屏幕非常混乱,非常快。这真的很遗憾,因为Cocoa是一种很酷且功能强大的语言。

当然死忠的Xcode粉丝现在会投票否决我的文章,但是有很多ide确实更好。

人们正在转向IT行业,而这些人本不该转向IT行业

这是从我去年的一篇博客文章中复制/粘贴的。


我的经验主要是关于荷兰市场的,但也可以适用于任何其他市场。

我们(我将所有软件工程师归为一类)目前处于一个对我们非常有利的市场中。公司正拼命地想要得到软件工程师(从现在开始),无论价格如何。如果你现在换工作,你几乎可以要求任何你想要的东西。在荷兰,现在有一种趋势,甚至给两辆租赁车一份工作,只是为了让你为他们工作。这有多奇怪?我怎么能同时开两辆车?

当然,这听起来对我们来说很好,但这也造成了一个非常不健康的局面。

例如: 如果你目前正在为一家快速发展的公司工作,你正试图吸引更多的同事,最终从地面得到一些严肃的软件开发,没有人能找到不提供天价薪水的人。寻找优秀的同事是非常困难的。很多人被我们这种工作所吸引,因为高薪,但这也意味着很多没有正确激情的人正在进入我们的市场。

Passion, yes, I think that is the right word. When you have passion for your job, your job won’t stop at 05:00 PM. You will keep refreshing all of your development RSS feeds all night. You will search the internet for the latest technologies that might be interesting to use at work. And you will start about a dozen new ‘promising’ projects a month, just to see if you can master that latest technology you just read about a couple of weeks ago (and find an useful way of actually using that technology).

如果没有这种激情,市场可能看起来很好(因为汽车、金钱,当然还有我们吸引的辣妹),但我认为,只要是消防员或战斗机飞行员,市场就不会那么有趣。

听起来我是在保护自己的工作,这在一定程度上是对的。但我也在努力保护自己不受我不想共事的人的伤害。我想就我读到的东西进行热烈的讨论。我希望能够与那些对工作有同样“热情”的人进行辩论。我希望同事与我共事是出于正确的原因。

我要找的人在哪里!!

你不需要编写所有的程序

我厌倦了所有的事情,但所有的事情都需要塞进一个程序,这样总是更快。一切都需要基于网络,一切都需要通过计算机完成。请用你的笔和纸。它更快,更少维护。

不是很有争议,但是… AJAX早在这个术语被创造出来之前就已经存在了,每个人都需要“放手”。人们用它做各种各样的事情。但是没有人真正关心它。

然后突然嘣!有人创造了这个术语,每个人都加入了AJAX的潮流。突然之间,人们成了AJAX的专家,好像动态加载数据的“专家”以前并不存在似的。我认为这是导致互联网被残酷摧毁的最大因素之一。还有“Web 2.0”。

设计模式对优秀设计的伤害大于帮助。

IMO软件设计,尤其是优秀的软件设计,变化太大,无法在模式中有意义地捕捉,特别是在人们实际能记住的少量模式中——而且它们太抽象,人们实际上只能记住少数几个。所以他们帮不上什么忙。

另一方面,太多的人迷恋于这个概念,并试图在所有地方应用模式——通常,在生成的代码中,你无法在所有(完全没有意义的)单例和抽象工厂之间找到实际的设计。

远离Celko!!!!

http://www.dbdebunk.com/page/page/857309.htm

我认为使用代理主键比使用“自然”主键更有意义。


@ocdecio: Fabian Pascal给出了(在他的书《数据库管理中的实际问题》的第三章中,引用于你链接的页面的第3点)作为选择键的标准之一,那就是稳定性(它总是存在并且不会改变)。当一个自然键不具有这样的属性时,必须使用一个代理键,原因很明显,您在注释中暗示了这一点。

你不知道他写了什么,你也懒得去检查,否则你会发现你实际上同意他的观点。这里没有什么争议:他说的是“不要教条主义,根据情况调整一般的指导方针,最重要的是,思考,用你的大脑,而不是教条主义/食谱/大师的话”。