• 原文地址:https://programmers.blogoverflow.com/2012/08/20-controversial-programming-o工商银行pinions/
  • 原文作者:Giuseppe Picciano
  • 译者:秦一

创建这个博客(blogoverflow)的其间一个初衷是在咱们网站(StackOverfl程序员薪酬一般多少ow)的古早阶段,网站还未受到那么多的约束,有一些appear像宝石一般HTTPS夸姣的问题尽管被删帖,但仍然值得去记载。即便它们现已不适用于https和http的差异程序员范畴,软件库但却不能否认,它们早年风靡过社区。

我选中的榜首个被删除的问题是 Jon Skeetappreciate 提出的 “你以为最有争议的编程观念是什么?”(只需 10K 的用户看过这个问题,为此感到抱愧),自 2009 年 2 月 2 号被提出以来,有 391+ 的答复。下文将列出前 20 高赞答复,不分次序。

1.业余时间不编程的程序员,永久比不上在业余时间编程的程序员

我以为即便是最聪明以及最有天赋的程序员,假https安全问题设只把编https和http的差异程当作作业,那他/她将永久无法成为一个好的程序员。不只将编程当作作业是指他们会在业余时间其他做approach一些枸杞小项目或捣鼓一些不同的言语和主意。枸杞

— rustyshelf.

2.单元查验不会帮你写好代码

单元查验存在的仅有原因是确保现已出色作业的代码不会崩。先写查验或许为查验去编写代码有些可笑,假定你这样做了,你乃至不知道什么是距离查验用例。你仍是会写appear出那些尽管查验经过,但在未意料的场景下失利的代码程序员培训班要多少钱。此外,一个好的开发者将坚持作业总结代码低聚合,这样新的代码不太或许引发老代码问题。

— Chad Okere

3.随时都需求用上的仅有“公积金最佳实践”是“动动你的小脑筋”

有太多人跳起来追逐流行,还强制将一些办法、办法、结构等用在不适宜它们的当地。或由于新,或由于一些权威人士的观念,但这些理由都无法证明它适宜全部人。
— Steven Robbins

4.事实上大多数代码注释都是有害的代码重复

平时咱们会花费大多数时间去保护自己或别人写的代码,那枸杞些差的、差错的、过期的、简略appear让人误解的注释肯定能登上最软件测试招人烦的人为因素程序员那么心爱榜单榜首名。我想大多数人最终都会把它们删个精光,特别是那些花箱怪物[译者猜想是值外面美观,但里面可怕的东西]。比起这些,把心思花在代码可读性,必要时重构以及减少语义不明的习惯用语更好。另一方面,许多程序员培训班要多少钱课程都说注释公积金几乎比代码自身更重要,导致代软件应用码上一行是订单流水样式的代码注释。

— Ed Guiness

5.“谷歌一下” 是能够的!

是的。我知道这个观念冒犯了一些人,他们多年来软件工程的考虑和/或引以为荣的编程书正在开始沦落为全部人在几秒钟内触程序员怎样学手可得的资源,但也不应该对立那些运用查找引擎的人。我听过太多针对谷歌问题答案的批判,其实是不讲道理。首要,参考材料是全部人都需求都。你什么都不知道所以你需求去查材料。考虑到这些,从哪里取得信息真的有那么重要吗?从书里面获取,仍是从谷歌查找,乃至是错觉里的青蛙奉告你信息,有什么关系呢?不重要,正确答案便是正确答案。重要的是你了解这些材料,将它运用于appleid优异的解决方案,得到客户以及雇主的认可。

— PhoenixRede枸杞emer

6.全部程序员的产出并不持平

项目经理常常以为由于开发枸杞者 A 和开发者 B 有着相同的阅历水平,所以他们持平。事实上,两个开发者之间的距离或许有 10倍乃至 100倍。评论这个有政治approach风险,可是有时分我仍是想说尽管团队里的几个成员看起来技能水平恰当,实践上或许不像看起来那样。我早年看过技能领导“没救了”,初级开发者完毕了全部实践作业——我敢确保他们同软件享了夸奖。

7.我无法了解为什么咱们以为 Java 肯定是大学课程入门必学“榜首”言语

首要,我程序员在二次元信赖榜首门编程言语应该偏重学习流程控制和变量的必要性,而不是方针或语法。其次,我appstore信赖那些没有尝试过调试 C/C++ 内存走漏问题的人不会了解 Java 带来的优点。学习的天然开展进程应该是从“我应该怎样完毕它”到“我怎样找到完毕它的库(程序员客栈library)”,而不是反过来。

— Dmitri Nesteruk

8.假定你只懂一种言语,不论你把握得多好,你都不是一个好的程序员

这个好像在标明一种你只知晓一门言语像C#或Java或许任何一门你开始学习的言语就满足了。我不信赖这种理软件测试论,每种言语都能教我新的内容,让我能够将它们和其他言Go语融汇运用到作业中。我以为那些将自己限制在一种言语的人本来能够做得更好。这也向我标明他们短少探究性和试验性精力——我期望在一个真实好的程序员身上发现的特质。

— glenatron

9.偶尔写一下废物代码是可软件以的

有时分只需求一些虽https域名快但有污染的废物代码就能够完毕特定的使命。运用办法、ORMs(Object Relational Mapping)、SPR等等快速构建控制台/运用或许APP写一些内联软件工程 SQL 代码(感觉不错)也许会https安全问题超出预期。

— jfar

10.输出打印https域名是一种调试代码的好办法

我觉得运用 System.out.p宫颈癌rintln (或许任何其他言语的输出语狗狗币句)是一种十分好的调试代码办法。它一般比打断点更快,而且你还能够比较不同作业时的输出数据。只需确保上线时删掉打印代码(或许用日志记载它们会更好)。

— David

11.你作业是为了让自己失掉作业

假定你的软件是给雇主写的,代码appearance有必要能便当其他开发者接手且便于了解。代码经过精心规划后逻辑清晰且坚持一起,它格app装置下载局规整appreciate,它该有的文档都有,它每日构建后 push 进代码库房,它坚持出色的版别处理。假定你被公交车撞了,被炒鱿鱼,被软件库解雇或许离任,你的雇主随时都能找人替代你。下一个人很快就能捡起你的代码,并在一周之内作业。假定他/她做不到这点,软件开发那你就输的离谱。风趣的是,我发现使自己失apple掉作业使我对雇主更有价值。我越极力成为随时抛产品,我对雇主的价值就越高。

— Mike Hofer

12.乱用 Gettapp装置下载ers 和 Setters

我现已看过千万软件商铺下载人宣称 public 字段是凶暴的,所以他们 priv作业总结ate 全部字段以及给它们供给 getters 和 setters 办法https安全问题。我深信这个和全部运用 public 没有太大差异,除非你运用线程(不常见)或许你的 accessors 有一些业务/潜在的逻辑(至宫颈癌少有些“奇怪”)或许有那么一点差异。我不喜欢 public 字段apple,可是也对立给全部字段加 getter/setter(或 Property)办法,然后宣称这是封装或软件工程许躲藏信息…哈哈哈!

— Pablo Fernandez

13.像对待代码相同对待appear SQL

这指的是 C#、Java 或许任何其他你喜欢程序员怎样学的 方针/进程言语都需求逐渐构成一种可读和可保护的格式软件库规范。我讨厌看到马虎自在的 SQL 代码。假定你会为界面上两个格式不一起的尖括号鬼叫,你为什么在看到自在格式、软件技能马虎、令人费解application的组合条件 SQL 代码不鬼叫?

— MustStayAnonymous

14.高估 UML

当然,有一些有用的图表,例如复合办法的类图,可是许多UML图肯定没有价值。

— L作业细胞udwig Wensauer

15.代码的可读性是最重要的

可读性甚appear至比正确性更重要,假定代码可读,就很简略被批改。一起优化、改动、了解代码也简略。期望其他开发人员也能够从代码Go中学习到些什么。

— Cra龚俊ig P. Motlin

16.XML 被高估了

我想太多人想都没想就跳进了 XML 的浪潮…XML 在 Web 体现HTTPS不错,由于它https和http的差异便是为 Web 规划的。所以我以为在用它之前,应优先考虑一些定义问题和规划思想。

— Over Rated

17.软件开发仅仅一个作业

我十分享用软件开发,曩昔几年我都在写关于这个主题的博客。我花了满足的时间,也得到了大于 5000 的点赞。我在一个草创公司作业,典型地作业 60 个小时,尽管钱比我做外包少,可是团队很棒,作业风趣。可是在生命的宏伟蓝图中,它仅仅一个作业。它比许多作业都排名低,例如家庭、我的女朋友、朋友、美好等等。假定我有花不完的钱,我还有许多其他作业去做,例如骑摩托https域名、玩帆船、滑雪。我觉得许多开发者有时分会appleid忘了,程软件商铺下载序开发容许咱们具有生射龚俊中更重要的作业(具有它们经过咱们享用的办法),而APP不是成为自己终极方针。软件库

— Greg Beech

18.开发就应该能写代码

上一年我面试了许多人,其间程序员薪酬一般多少一个环节是查验面试者的思想办法,经过在白板上写下简略-中等算法。最开始我会问一些问题例如:
已知 4 * (1 – 1/3 + 1/5 – 1/7 + …) 能够估计 Pi 值,请增加代码让 Pi 值更精确,要程序员是学什么专业求精确到五位小数。
这的确是个需求考虑的问题,可是阅历丰富的程序员不应该掌控不作业总结了它https安全问题(大约 10 行 C# 代码appleid能够得到答案)。可是,咱们许多面试者(猎头公司挑选的)都答不上来,乃至无法解释如何做能找https协议到答案。所以在此之后我初https认证步问他们更简略的问题如:已知圆的面积由 Pi 乘以半径的平方得到,编写一个函数来核算圆的面积。。
结果几乎令人拍案叫绝,超越一半的面试者无法用任一言语写出这个函数(大多数流行言语我都看得懂,所以approach我容许他们自在挑选言语,包括伪代码)。咱们有“C# 开发人员”不会用 C# 完毕这个函数。这太出乎我的意料approach了,我一软件商铺下载直都觉得开发人员应该会写代码。现在看来是个有争议的观念。这争议当然是存在于面试中的提名人之中。

— Greg Beech

19.规划方HTTPS式对优异规划Go的损害大于帮助

软件规划,尤其是优异的软件规划差https认证别很大,这导致无法在办法中提取有意义的内容。特别是咱们实approach在知道的少数办法——它们程序员是做什么的太抽象以至于咱们真实记住的东西很少,因而他们其实没有太大帮助https域名

另一方面,太多的人沉溺于于概念,想要把办法运用到任何当地。你一般无法在代码中找到全部(完全没有意义的)单例和抽象工厂之间实践的规划。

— Greg Beech软件应用

20.代码少总比多好!

假定用户说“就这?”,且你的作业对他来说不行见,这说明你https安全问题正在做正确的作业。荣耀自有去路,仅仅不在此处。

— Jas Panesar

appear者漫笔

拖拖拉拉的翻译了一个月,涂涂改改了几回。

原文在 2012 年发布,2021年的枸杞今天看,很appearance多观念我竟觉得并没有争议,例如偶尔写一下废物代码是能够的(哈哈哈哈)appreciate。由于现在现已找不到原问题的评论了,所以在看文章的时分,我只程序员培训班要多少钱能自己考虑为什么不能偶尔写一下废物代码,有软件什么坏处?降低代码质量程序员薪酬一般多少,后续形成不必要的保护本钱…