文档章节

【收藏】程序员必须克服的十大编程禁忌

9
 9秒教育
发布于 2015/12/08 11:18
字数 1326
阅读 85
收藏 5
点赞 0
评论 0

程序员在编程的时候难免会犯错误,但如果不从错误中吸取教训,那么习惯成自然,你会经常犯错的。从错误中不断的学习,锻炼好的行为习惯有助于事业上的稳定。这就是我们如何将小麦从糟糠中区别出来以及如何避免编程禁忌的绝佳经验。此外,最重要的就是可以为客户带来更好的用户体验。


1不提升非技术技能

我们认为非技术技能是项目成功的主要因素。这些非技术技能也可以称之为“软技能”,总体上来说,它已经被公司证明为能够驾驭企业和客户之间的长期商业关系,因此也能决定公司的成长发展路径。一些关键的软技能指标包括:

a.纪律——这是最重要的特征之一,缺乏纪律,最终会让这个开发团队在开发能力上“缺乏自信”。解决这一问题的矫正方法就是每天制定详细的to-do清单:兑现你的承诺、完成你开始做的事情、避免多重任务,因为这些往往会让你的生活产生混乱。


b.顾客的声音——不把客户置于决策的核心地位只会跟你们业务的原始目的相冲突。如果客户不高兴,即使你拥有世界上一流的专业知识和资源也不会起什么作用。保持符合客户期望的解决方案、及时交付才能体现出项目的真正价值。


c.沟通——尤其是当客户和供应商并不在同一地点的时候,明确而及时的沟通是填补服务空白的极好措施。主要集中在这三个方面你就能克服问题——进行主题讨论、清晰表达、干脆简洁。


d.了解需求——在整个开发生命周期过程中,决定成功和失败的之间的一个至关重要的区别将会给人留下深刻的印象。通过最初的头脑风暴法了解问题状态,以及后续的交货程序,这其中都要和客户完美配合。只有这样,客户才会赞赏你的工作,给你好评。


2对编码不理智

古人云:善泅者溺,善骑者堕。但估计绝大多数的程序员都认为自己的编程技术绝对的牛。而同样真实的是,每一个代码,让不同的程序员去实现的话都会不可避免地发现它所存在的缺陷。所以说,只有通过在一个项目上的合作,程序员之间必然有的摩擦才能证明谁是最好的。健康的竞争是好事,但它不应该成为一个本来可以成功的项目的负担。

另一个创意阻碍是无法将预定义的模板使用在对你有利的开发项目里。几乎所有的编程语言有一个很好的在线 /内置的代码片段存储库,可以修补代码,防止重新编程。然而,如果因为不理解需求或缺乏接触各种可用库/模板的话,这就意味着程序员最终会无意间将一开始就创建的代码付之东流。这不仅增加了开发时间,也提高了总体成本。另外一点就是,发布了的代码已经经过了质量检测,所以只有将它用作模板才能发挥它更大的价值。


3不一定什么都要被理解

如果你是刚调到这个团队来的编程人员,对于手头的工作并不是很熟悉,那该怎么办?肯定是先看一些前任留下来的工作计划,要是他写的详细倒也没什么,如果写的不详细,估计会让你更加的挠头。


因此,推己及人,在需要交代的工作上,最好是把任务写的尽可能的详细。这么做也是非常现实的原因:能够把编程问题解决掉,最好是保证使用解释性的语言和英语发音来表示变量。一些基本的指针可以让你的程序更容易被理解,包括:


a. 把所有参数、引用、方法和变量名称尽可能接近英语表达。保持文件名简短但有助于理解的功能。


b. 使用++包装文字是一个好办法,能让代码和注释更加清晰。


c. 将编写的程序保持在一个连续的流程上,尤其是在使用OOP基础上的语言:C#C C++


d. 对于不同的代码块使用不同的描述名称。


4不使用经过验证的工具和技术

程序员的好坏从他使用的编程工具和调试工具上就能看出。在异常情况的跟踪上,下面就是程序员经常会出现的常见错误。


© 著作权归作者所有

共有 人打赏支持
9
粉丝 2
博文 24
码字总数 32297
作品 0
东城
程序员神秘等式(自备纸巾)

假如你是一个程序员,或者你了解程序员,那你可能也会和我一样,能够发现一些非常神秘的等式,屡屡出现在程序员的生活里,让人含泪微笑或笑中含泪。 加班=高效率高产出 泡面+火腿肠=营养午餐...

丨小丶牧灬 ⋅ 2015/07/06 ⋅ 11

程序员必须注意的十大编程禁忌

程序员在编程的时候难免会发生这样那样的错误,对此,我们除了从错误中吸取教训,还可以从前辈得到的经验,避开这些错误。 一、不提升非技术技能 我们认为非技术技能是项目成功的主要因素。这...

丨小丶牧灬 ⋅ 2015/06/12 ⋅ 6

你必须知道的十大编程格言

本文是从 What are your list of must know programming proverbs ? 这篇文章翻译而来。 我读了Kevin Pang 的一篇可能非常老但非常好的有趣文章:每个程序员都该知道的10大编程格言。 Kevin给...

小卒过河 ⋅ 2011/07/01 ⋅ 25

高效程序员的7个特征

有些程序员虽然具有一定的经验技巧,但是他们无法成为高效的程序员,因为他们缺乏所需要的几项特质。业内顶尖高效的程序人员都具有哪些特征呢? 1.主动学习新的技术和非技术两方面的知识 不好...

丨小丶牧灬 ⋅ 2015/07/09 ⋅ 2

国外艺术妹纸自学编程的第一年总结回顾

本文由伯乐在线 -way 翻译。未经许可,禁止转载! 英文出处:Jennifer Dewalt。欢迎加入翻译组。 一年前的今天,我开始了一项改变我生活的项目。这种说法听起来似乎有点儿老套了,但是这是真...

伯乐在线 ⋅ 2014/04/24 ⋅ 0

程序员最艰巨的十大任务

本文的作者: Craig Buckler 程序员最艰巨的任务跟编写代码没有多少关系。编码是逻辑思路的一种实践,这跟程序员日常工作中的其它任务比起来相对简单。如果你认为自己还是一个水平一般的程序...

oschina ⋅ 2013/12/09 ⋅ 40

GUI设计禁忌2.0

第1章 基本原则 1 1.1 基本原则1:关注用户及其任务,而不是技术 2 1.1.1 理解用户 3 1.1.2 理解任务 5 1.1.3 考虑软件工作的环境 9 1.2 基本原则2:首先考虑功能,然后才是表示 10 1.3 基本...

晨曦之光 ⋅ 2012/03/09 ⋅ 0

程序员最经常用的5大编程学习网站,你用过几个?

编程现在越来越受人们的欢迎。Python居然成了高考项目,纳入浙江省信息技术高考范畴。 有些新手程序员可能并不清楚在哪个网站学编程,下面我们不妨来看下程序员必须收藏的5大网站(适用于PHP...

W3Cschool ⋅ 2017/12/13 ⋅ 0

三十五年经验分享:程序员进阶八法

这八法十分可靠,可提高你写代码的技能,你可要收藏好了。时间到了,提高你的编程技能,认真+严肃,走起!如果你的目标仅仅是提高自己,那么很容易实现,但是如果你的目标是成为一个伟大的程...

蓝神100 ⋅ 2017/09/04 ⋅ 0

框架的出现是为了弥补编程语言的劣势?

  【IT168 评论】不可否认,框架是技术圈比较前沿的选择,但框架如何接手传统编程语言的世界呢?本文将会与大家讨论“为什么程序员将来会主要用框架进行编程?”   以前的计算机编程可能就...

it168网站 ⋅ 2017/06/22 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

zblog2.3版本的asp系统是否可以超越卢松松博客的流量[图]

最近访问zblog官网,发现zlbog-asp2.3版本已经进入测试阶段了,虽然正式版还没有发布,想必也不久了。那么作为aps纵横江湖十多年的今天,blog2.2版本应该已经成熟了,为什么还要发布这个2.3...

原创小博客 ⋅ 今天 ⋅ 0

聊聊spring cloud的HystrixCircuitBreakerConfiguration

序 本文主要研究一下spring cloud的HystrixCircuitBreakerConfiguration HystrixCircuitBreakerConfiguration spring-cloud-netflix-core-2.0.0.RELEASE-sources.jar!/org/springframework/......

go4it ⋅ 今天 ⋅ 0

二分查找

二分查找,也称折半查找、二分搜索,是一种在有序数组中查找某一特定元素的搜索算法。搜素过程从数组的中间元素开始,如果中间元素正好是要查找的元素,则搜素过程结束;如果某一特定元素大于...

人觉非常君 ⋅ 今天 ⋅ 0

VS中使用X64汇编

需要注意的是,在X86项目中,可以使用__asm{}来嵌入汇编代码,但是在X64项目中,再也不能使用__asm{}来编写嵌入式汇编程序了,必须使用专门的.asm汇编文件来编写相应的汇编代码,然后在其它地...

simpower ⋅ 今天 ⋅ 0

ThreadPoolExecutor

ThreadPoolExecutor public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, ......

4rnold ⋅ 昨天 ⋅ 0

Java正无穷大、负无穷大以及NaN

问题来源:用Java代码写了一个计算公式,包含除法和对数和取反,在页面上出现了-infinity,不知道这是什么问题,网上找答案才明白意思是负的无穷大。 思考:为什么会出现这种情况呢?这是哪里...

young_chen ⋅ 昨天 ⋅ 0

前台对中文编码,后台解码

前台:encodeURI(sbzt) 后台:String param = URLDecoder.decode(sbzt,"UTF-8");

west_coast ⋅ 昨天 ⋅ 0

实验楼—MySQL基础课程-挑战3实验报告

按照文档要求创建数据库 sudo sercice mysql startwget http://labfile.oss.aliyuncs.com/courses/9/createdb2.sqlvim /home/shiyanlou/createdb2.sql#查看下数据库代码 代码创建了grade......

zhangjin7 ⋅ 昨天 ⋅ 0

一起读书《深入浅出nodejs》-node模块机制

node 模块机制 前言 说到node,就不免得提到JavaScript。JavaScript自诞生以来,经历了工具类库、组件库、前端框架、前端应用的变迁。通过无数开发人员的努力,JavaScript不断被类聚和抽象,...

小草先森 ⋅ 昨天 ⋅ 0

Java桌球小游戏

其实算不上一个游戏,就是两张图片,不停的重画,改变ball图片的位置。一个左右直线碰撞的,一个有角度碰撞的。 左右直线碰撞 package com.bjsxt.test;import javax.swing.*;import j...

森林之下 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部