阅读更多

9顶
4踩

编程语言

转载新闻 10 条“有争议”的编程观点

2012-05-14 11:17 by 副主编 MnouW 评论(5) 有7558人浏览
Stack Overflow上有这样的一个贴子《What’s your most controversial programming opinion?》,翻译成中文就是“你认为最有争议的编程观点是什么?”,不过,在400多个主回贴,以及上千个所有回贴中,好像并不是很有争议,而是令人相当的茅塞顿开,下面罗列一些,希望对你有帮助。

1) The only “best practice” you should be using all the time is “Use Your Brain”.

唯一的“Best Practice”并不是使用各种各样被前人总结过的各种设计方法、模式、框架,那些著名的方法、模式、框架只代表赞同它们的人多,并不代表它们适合你,你应该更多地去使用你的大脑,独立地思考那些方法、模式、框架出现的原因和其背后的想法和思想,那才是“Best Practice”。事实上来说,那些所谓的“Best Practice”只不过是限制那些糟糕的程序员们的破坏力。

2)Programmers who don’t code in their spare time for fun will never become as good as those that do.

如果你对编程没有感到一种快乐,没有在你空闲的时候去以一种的娱乐方式去编程,那么你只不过是在应付你的工作,这样下来,就算是你是一个非常聪明,非常有才华的人,你也不会成为一个优秀的编程员,要么只会平平凡凡,要么只会整天扎在技术中成为书呆子。当然,这个观点是有争议,热情和能力的差距也是很大的。不过我们可以从中汲取其正面的观点。

3)Most comments in code are in fact a pernicious form of code duplication.

注释应该是注释Why,而不是How和What,参看《惹恼程序员的十件事》,代码告诉你How,而注释应该告诉你Why。但大多数的程序并不知道什么是好的注释,那些注释其实和代码是重复的,毫无意义。

4)XML is highly overrated

XML可能被高估了。XML对于Web上的应用是不错的,但是我们把其用到了各种地方,好像没有XML,我们都不会编程了。

5)Not all programmers are created equal

这是那些junior经理爱犯的错,他们总是认为,DeveloperA == DeveloperB,只要他们的title一样,他们以为他们的能力、工作速度、解决问题的方法,掌握的技能等等都是一样的。更扯的是,在某些时候,就算是最差的程序员,他们也会认为其比别人强十倍。

6)”Googling it” is okay!

Google只会给你知识,并不会教给你技能。那里只有“鱼”,没有“渔”,过度使用Google,只会让你越来越离不开它,你越来越不会自己去思考、探索、钻研。如果KFC快餐是垃圾食品对我们的身体没有好处,那么使用Google也一种快餐文化对我们的智力发展没有好处。

7)If you only know one language, no matter how well you know it, you’re not a great programmer.

如果你只懂一种语言,准确的说,如果你只懂一类语类,如:Java和C#,PHP和Perl,那么,你将会被局限起来,只有了解了各种各样的语言,了解了不同语言的不同方法 ,你才会有比较,只有了比较,你才会明白各种语言的长处和短处,才会让你有更为成熟的观点,而且不整天和别的程序在网上斗嘴争论是Windows好还是Unix好,是C好还是C++好,有这点工夫能干好多事了。世界因为不同而精彩,只知道事物的一面是有害的。

8)Your job is to put yourself out of work.

你的工作不应该保守,那种教会徒弟,饿死师父的想法,不但是相当短浅的,而且还是相当脑残的。因为,在计算机世界里,你掌握的老技术越多,你就越没用,因为技术更新的太快。你对工作越保守,这个工作就越来越离不开你,你就越不越不能抽身去学新的东西,你也就越来越OUT了。记住:If you can’t be replaced then you can’t be promoted!

9)Design patterns are hurting good design more than they’re helping it.

很多程序员把设计模式奉为天神,他们过度的追求设计模式以至都都忘了需求是什么,结果整个系统设计被设计模式搞得乱七八糟,我们叫这种编程为“设计模式驱动编程”,正如第一点所说,如果你不懂得用自己的大脑思考的话,知其然,不知所以然的话,那么你不但得不到其好处,反而受其所累。

10)Unit Testing won’t help you write good code

准确地说,我们可以认为这是Test-Driven开发,其实,这种开发就是先写单元测试用例,这样的开发方式的主要目的是,为了防止你不会因为一个改动而引入Bug,但这并不会让你能写出更好的代码。这只会让你写出不会出错的代码。同第一点,这样的方法,只不过是防止糟糕的程序员,而并不是让程序员或代码质量更有长进。反而,Unit Test会成为程序员为自己代码做辩解的一种托辞。

来自: 酷壳
9
4
评论 共 5 条 请登录后发表评论
5 楼 BruceXX 2012-05-15 11:50
我已经成为观点2中的书呆子了~~哈哈,没事自己写点东西娱乐
4 楼 tlde_ti 2012-05-14 20:41
毫无质量的转帖。
点链接 原文都找不到.
3 楼 leric 2012-05-14 14:59
不是什么好观点
2 楼 flyfan 2012-05-14 13:02
既然翻译,就翻译得全面一点嘛
1 楼 yangxiutian 2012-05-14 12:53
文中所述的都是一些观点,貌似并非什么争议

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • 最具争议的10个编程观点

    你认为最具争议的编程观点是什么?C#专家Jon Skeet曾在StackOverflow上提出这个问题。这里列举最热门的前10条讨论。 1. 业余时间不以编程为乐者,永远赶不上那些以此为乐的同行 即使最聪明、最有才华的人,若只是将...

  • 10条最具争议的编程观点

    10条最具争议的编程观点: 1、The only "best practice" you should be using all the time is "Use Your Brain". 唯一的"best practice"并不是使用各种各样被前人总结过的各种设计方法、模式、框架,那些著名的...

  • 20个具有争议的编程观点

    是的,我知道这冒犯了一些人,他们多年的高质量记忆和/或大量的编程书籍...如今,这似乎是一个有争议的观点。去年我做了相当多的面试,我的面试部分是测试人们的思维方式,以及他们如何在白板上实现简单到适度的算法。

  • 那些争议最大的编程观点

    知名问答网站StackOverflow之所以成功,合理的规则与严格...这不,他们的博客8月29日的文章“20个最受争议的编程观点”说的就是这样一个被删帖。此文一出,立刻在Reddit、Hacker News等各大技术新闻站上引起了热议。

  • 10 条“有争议”的编程观点-转载自开源中国社区

    10 条“有争议”的编程观点 50人收藏此新闻,我要收藏 | 新闻投递 oschina 发布于: 2012年05月14日 (10评) 在Stack Overflow上有这样的一个贴子《What’s your most controversial programming opinion?》,...

  • 盘点那些争议最大的编程观点,你是什么看法呢?

    接下来让我们来看看那些争议最大的编程观点。 1. 业余时间不会为了好玩而编程的程序员,永远比不上那些以编程为乐的同学。 我认为即使是最聪明、最有才华的人,如果只是将编程作为工作,也永远成不了真正优秀的...

  • 【程序人生】那些争议最大的编程观点

    那些争议最大的编程观点 编程相对来说是一门专业性非常强的技术工种,全世界也有大量的编程人员,每天都有人讨论什么编程语言最好,优秀程序员的标准等。接下来让我们来看看那些争议最大的编程观点。 1. 业余...

  • 十个有争议的编程观点

    》,翻译成中文就是“你认为最有争议的编程观点是什么?”,不过,在400多个主回贴,以及千把个子回贴中,好像并不是很有争议,而是令人相当的茅塞顿开,下面罗列一些,并通过我自己的经历和理解发挥了一些,希望对...

  • 第11讲:深入理解指针(1).pdf

    第11讲:深入理解指针(1)

  • springboot整合 freemarker方法

    springboot整合 freemarker方法

  • 第14讲:深入理解指针(4).pdf

    第14讲:深入理解指针(4)

  • 同行者4.1.2语音助手

    《同行者4.1.2语音助手:车机版安装详解》 在现代科技日新月异的时代,智能车载设备已经成为了汽车生活的重要组成部分。"同行者4.1.2"便是这样一款专为车机设计的语音助手,旨在提供更为便捷、安全的驾驶体验。该版本针对掌讯全系列设备进行了兼容优化,让车主能够轻松实现语音控制,减少驾驶过程中的手动操作,提升行车安全性。 我们来了解下"同行者4.1.2"的核心功能。这款语音助手集成了智能语音识别技术,用户可以通过简单的语音指令完成导航、音乐播放、电话拨打等一系列操作,有效避免了因操作手机或车机带来的分心。此外,其强大的语义理解和自学习能力,使得它能逐步适应用户的口音和习惯,提供更个性化的服务。 在安装过程中,用户需要注意的是,"同行者4.1.2"包含了四个核心组件,分别是: 1. TXZCore.apk:这是同行者语音助手的基础框架,包含了语音识别和处理的核心算法,是整个应用运行的基础。 2. com.txznet.comm.base.BaseApplication.apk:这个文件可能包含了应用的公共模块和基础服务,为其他组件提供支持。 3. TXZsetting.apk:这

  • 市场拓展主管绩效考核表.xls

    市场拓展主管绩效考核表

  • “线上购车3D全方位体验:汽车模型展示与个性化定制功能”,three.js案例- 线上购车3d展示(源码) 包含内容:1.汽车模型展示;2.汽车肤;3.轮毂部件更;4.开关车门动画;5.汽车尺寸测量

    “线上购车3D全方位体验:汽车模型展示与个性化定制功能”,three.js案例- 线上购车3d展示(源码) 包含内容:1.汽车模型展示;2.汽车肤;3.轮毂部件更;4.开关车门动画;5.汽车尺寸测量;6.自动驾驶;7.镜面倒影;8.hdr运用;9.移动端适配; 本为html+css+three.js源码 ,核心关键词:three.js案例; 线上购车3D展示; 汽车模型展示; 汽车换肤; 轮毂部件更换; 开关车门动画; 汽车尺寸测量; 自动驾驶; 镜面倒影; HDR运用; 移动端适配; HTML+CSS+three.js源码。,"Three.js源码:线上购车3D展示案例,含汽车模型、换肤、轮毂更换等九大功能"

  • (数据权威)中国城市_县域统计面板数据二合一

    数据名称:2000-2022年各县市区主要社会经济发展指标面板数据 数据类型:dta格式 数据来源:中国县域统计

  • 120页-环卫车项目初步方案.pdf

    一、智慧环卫管理平台的建设背景与目标 智慧环卫管理平台的建设源于对环卫管理全面升级的需求。当前,城管局已拥有139辆配备车载GPS系统、摄像头和油耗传感器的环卫车辆,但环卫人员尚未配备智能移动终端,公厕也缺乏信息化系统和智能终端设备。为了提升环卫作业效率、实现精细化管理并节省开支,智慧环卫管理平台应运而生。该平台旨在通过信息化技术和软硬件设备,如车载智能终端和环卫手机App,实时了解环卫人员、车辆的工作状态、信息和历史记录,使环卫作业管理透明化、精细化。同时,平台还期望通过数据模型搭建和数据研读,实现更合理的环卫动态资源配置,为环卫工作的科学、健康、持续发展提供决策支持。 二、智慧环卫管理平台的建设内容与功能 智慧环卫管理平台的建设内容包括运行机制体制建设、业务流程设计、智慧公厕系统建设、网络建设、主机和储存平台需求、平台运维管理体系、硬件标准规范体系以及考核评价体系等多个方面。其中,智慧公厕系统建设尤为关键,它能实时监控公厕运行状态,保障公厕的清洁和正常运行。平台建设还充分利用了现有的电子政务网络资源,并考虑了有线和无线网络的需求。在功能上,平台通过普查、整合等手段全面收集环卫车辆、企业、人员、设施、设备等数据,建立智慧环卫基础数据库。利用智能传感、卫星定位等技术实现环卫作业的在线监管和远程监控,实现对道路、公共场所等的作业状况和卫生状况的全面监管。此外,平台还建立了环卫作业网格化管理责任机制,实现从作业过程到结果的全面监管,科学评价区域、部门、单位和人员的作业效果。 三、智慧环卫管理平台的效益与风险规避 智慧环卫管理平台的建设将带来显著的环境、经济和管理效益。环境方面,它将有力推进环境卫生监管服务工作,改善环境卫生状况,为人民群众创造更加清洁、卫生的工作和生活环境。经济方面,通过智慧化监管,大大降低了传统管理手段的成本,提高了监管的准确性和效率。管理方面,平台能够追踪溯源市民反映的问题,如公厕异味、渣土车辆抛洒等,并找到相应的责任单位进行处置,防止类似事件再次发生。同时,平台还拥有强大的预警机制功能,能够在很多环卫问题尚未出现前进行处置。然而,平台建设也面临一定的风险,如部门协调、配合问题,建设单位选择风险以及不可预测的自然灾害等。为了规避这些风险,需要加强领导、统一思想,选择优秀的系统集成商承接项目建设,并做好计算机和应用系统的培训工作。同时,也要注意标准制定工作和相关法律法规的制定工作,以保证系统建设完成后能够真正为环卫管理工作带来便利。

  • 36 -企业管理主管绩效考核表1.xlsx

    36 -企业管理主管绩效考核表1

  • 1.1 -1.4 工程代码

    1.1 -1.4 工程代码

Global site tag (gtag.js) - Google Analytics