程序员自我提高的几点建议 很实诚

一、背景

中国程序员的成长是与其学习环境相关,据统计,现时做计算机软件开发的人员65%是大专及本科学历,15%是来自于其他的培训机构。可见一个开发人员大致的学习经历和初步经验来自于大学。

而在印度,韩国,以及欧美一些软件外包相对发达的国家大部分是采用中专学员,他们从中学阶段即接受最为严谨,最为科学的软件工程培训。一般,大学毕业生后也会从事编码工作,但工作一至两年后即往系统分析师,架构师发展。

二、程序员自我提高的几点建议

下面的几点建议还算比较实诚,关键看你的执行力。

1、提高文档编写能力

误区:认为编好程序,完成任务,即是好的程序员,无须文档;

缺乏文档,对软件开发是致命的,一方面是软件无追溯能力,无法找到软件开发的起源,思想;另一方面,则是为后续软件查错,软件升级带来麻烦。作为早期的程序员,技术文档占用的工作时间应该为30%,而高级程序员、系统架构师等则需更多的时间。一般的软件文档要求,本篇不多说,可以回顾入职前手头上的软件文档要求和样式。

2、养成好的编码规范和编码习惯

作为一些国外知名软件公司,如微软、IBM、甲骨文等,都会对程序员开发的程序进行代码要求,代码的变量名要规范,关键代码段需要注释,注释格式统一,甚至嵌套中行缩进的长度和函数间的空行数字有明确的要求。

中国程序员,一般常会出现,全局变量滥用,注释语言表达不到位,变量名采用拼音等,虽不影响开发,但却影响了后续代码交接和分享工资。

3、提高对软件需求的理解

误区:入门的程序员一般不会对项目的需求进行刨根问底的分析和询问需求人员,拿到文档,即开始进行开发;在B/S架构中,更经常出现前台需求与后台衔接的问题;

因此,在做需求的时候,我们应该做到,了解需求的详细要求,力争到位;加强沟通,了解需求深层次内容,特别是功能点要达到什么要求,怎么使用系统才觉得舒服。对需求的把握不能从感性角度理解,必须多和工作伙伴进行碰撞,才算是真正把握需求——经验。真正的需求把握得恰到好处,所需的是2-3年的时间。

4、复用性和模块化思想

每个程序员在开发一个功能模块或函数的时候,应该多思考,不要局限在完成当前任务的简单思路上,思考一下,该设计的模块能否脱离这个系统存在,是否能够通过最简单的修改方式在其他系统或应用环境直接引用。

通过这两年中的实践与观察,发现我们团队一些同事在起步阶段,经常经历代码重写的事情,是很没有必要的,一方面自己思想需重新确立,另一方面是浪费了提升代码质量的时间去做重构的事情。

5、锻炼自己的测试能力

软件研发一直以来有个好传统,软件开发过程中问题发现的越早,解决的代价就越低。测试工作实际上也不麻烦,一是做正常调用的测试,看软件的基本功能能否实现,这也是许多公司常见的,也是唯一的测试,但强调,这是错误的!二是异常调用的测试,例如在B/S体系下常用的压力测试、破坏性测试、频发异常请求处理测试等,只有全方位的掌握好测试办法,才能提高软件开发的质量。

6、问题是最好的学习机会

日本经营之神松下幸之助曾说过:“工作就是不断发现问题、分析问题、最终解决问题的过程,晋升之门将永远为那些随时解决问题的人敞开着。”可见,工作过程中有问题是正常,没有问题才是真正的问题。在发生问题时,能勇于面对问题、解决问题的人,才是公司真正的骨干。

现实中,很多人总是千方百计回避问题。当上司安排一项艰巨的任务时,也想尽办法推托。殊不知,对于个人而言,问题其实是最好的学习机会。往往那些愿意接受困难工作的人,能力会越来越强,那就是因为他们在克服困难的过程中取得了巨大的进步。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/447534.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《 廊桥遗梦 》:用我的整个余生和全部的心来爱你 ...

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 PS:此书也是在喜玛拉雅上听完的,完全免费,主播的声音我很喜欢 ... 1. 弗朗西斯卡 一个妻子、母亲&a…

如何系统性地保障软件性能

摘要:软件性能贯穿整个软件开发过程,从需求到设计,到开发,到测试,最后到发布反馈,其作为软件用户的第一体验显得尤为重要。如何系统性地保障软件性能呢?文中以QQ为例,分别阐述了在各…

深入理解 AMQP 协议

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 PS:更多详情见 AMQP主页 :http://www.amqp.org/ 。 一、AMQP 是什么 AMQP(Advanced Message Queuing…

广州市科目三电子路考--大观路通过经验

视频:大观路 : http://v.pps.tv/play_3EO9GY.html 大家好,我是2014年5月8日考科目三的,本人是90分通过考试,在掉头的时候死火被扣10分,下面我会说明为什么会被扣10分的。 大观路段考试,总体来…

SpringBoot:Actuator 监控管理工程各项信息

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 在微服务体系中,有很多工程相互作用,如果其中某一个Down 了,可能就不是那么容易快速定位 bug 所属了…

2013科目三道路驾驶技能通用评判标准

一般规定:道路驾驶技能考试满分为100分,成绩达到90分的为合格。 道路驾驶技能通用评判 不合格情形:考试时出现下列情形之一的,评判为不合格: a)不按规定使用安全带或者戴安全头盔的; b)遮挡、关闭车内音视频…

如果编程语言是超级英雄……

摘要:此前我们曾假设过如果编程语言是女人,如果编程语言是把刀,现在我们将编程语言设想成电影中的超级英雄会是怎样一番情景呢? 说到编程语言,当然是萝卜白菜,各有所爱。假如要你在钟爱的语言之前加个超级…

Springboot:监控与管理 Actuator

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 前言: Actuator是一个暴露自身信息的模块,主要实现对应用系统的监控与管理。主要有三大功能: …

视频编解码,bbv 缓冲区的上溢和下溢

使用硬件相似的数据处理.一般都是数据进来,处理后立即发出去的形式.所以一般有一个数据进,一个数据出,2个接口. 硬件处理基本都要求实时.数据进来,处理之后马上发处理,这个时间要求非常短,一般要求控制在好多毫秒以内,才能达到实时的要求.一般硬件每秒钟能够处理的数据大小,在…

《Spring Cloud 与 Docker 微服务架构实战》笔记

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 PS:springcloud系列文章见:springcloud 系列,一看就会 。 在此,只是记录细碎知识点。 1…

视频测试序列下载:YUV文件

1、http://www.tkn.tu-berlin.de/research/vid/(此网站已经移走,正在寻找。) CIF: Akiyo、Bridge (far) 、Bridge (close) 、Bus 、Container 、Coastguard 、Flower 、Football 、Foreman 、Hall 、Highway 、Mobile & Cale…

MyBatis : Example 条件查询 in 用法

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 只是记录下。 Example example new Example(UserxxxLog.class);Criteria createCriteria example.createCriteria();List<String&…

跨平台2D/3D游戏开发框架libGDX发布1.2.0更新

摘要&#xff1a;基于OpenGL (ES)的跨平台2D/3D游戏开发框架libGDX不仅开源免费&#xff0c;而且具有极为强大的兼容性和高效性&#xff0c;近日&#xff0c;libGDX发布全新1.2.0版本&#xff0c;除修复Bug之外&#xff0c;还新增了OpenGL性能分析、gdx-ai等一系列功能扩展和方…

不把C作为第一门语言是个好主意么?

摘要&#xff1a;不少人认为&#xff0c;第一门语言最好不要学C&#xff0c;而V众投发起人李智勇却不这么看。他认为如果真想做好开发&#xff0c;想更好地实现人生价值&#xff08;包括现金价值&#xff09;&#xff0c;那么打基础很必要&#xff0c;而从C语言&#xff0c;这种…

系统集成项目管理工程师(软考中级)重点知识、背诵版

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 为了入户广州报考了软考中级&#xff0c;一次通过。 以下为背诵笔记&#xff1a;

如何成为一位杰出的程序员

如何成为一名杰出的程序员&#xff0c;这是一个比较复杂的问题&#xff0c;什么叫杰出&#xff1f;下面我给你大家总结一下&#xff0c;文中说的一些观点&#xff0c;你可能不认同&#xff0c;没关系&#xff01;评论反馈一下&#xff01; 一、解决问题的能力和创新能力 个人…

JVM的新生代、老年代、MinorGC、MajorGC

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 参考&#xff1a; http://blog.csdn.net/flamezyg/article/details/44673951 http://www.blogjava.net/ldwblog/archive/2013/07/24/4…

Bash脚本:怎样一行行地读文件(最好和最坏的方法)

用bash脚本读文件的方法有很多。请看第一部分&#xff0c;我使用了while循环及其后的管道命令&#xff08;|&#xff09;(cat $FILE | while read line; do … )&#xff0c;并在循环当中递增 i 的值&#xff0c;最后&#xff0c;我得到了非我所想的 i 。主要的原因是&#xff…

解决:无法获取实体类com.xxx.xx.xx.xx.dto.XxxDTO对应的表名

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 1.报错如题&#xff1a; 无法获取实体类com.xxx.xx.xx.xx.dto.XxxDTO对应的表名 2. 报错原因&#xff0c;如下图红框中部分&#xff0c…

IDEA 查看最近修改、已提交文件

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 如图&#xff1a;点击 Version Control --> Repository --> 最左边蓝色圆圈 --> 选择一条提交日志&#xff1a;右边就…