专栏首页Java后端技术栈cwnait程序员路上我的编程感悟

程序员路上我的编程感悟

如果你爱他,那就让他成为程序员,因为编程会使他的人生充满快乐;

如果你恨他,那就让他成为程序员,因为编程会带给他无尽痛苦

  编程的过程是痛苦并欢乐的。作为一个编程人(不敢叫程序员),当在汪洋的代码中苦苦寻找程序的BUG,当面临着一个 个技术难题而冥思苦想着解决办法,我时常带坐在电脑前或者在房间里漫无目的的走来走去,丝毫没有意识到时间在身旁匆 匆流逝,那种令人迷茫无助甚至压抑的感觉就像有一块大石头压在胸口让人喘息不过来;而当这些问题得到解决,我看着一 行行代码从指间飞到荧屏上,一个个功能模块在自己手中不断完成、完善,一切都雨过天晴,总算能交差了,这时只想着倒 头便睡。编程的工作就是一个字——累,尤其是心累,我想多数编程人都有同感。所以,个人觉得编程有时也是个力气活, 要身体好,而且意志坚定。当然除了这些,搞编程还要基础扎实,经验丰富,善于积累总结。多年来,我总结了如下的编程 心得体会。

 ①基本功要好。

  编程的基本理论、概念要掌握,像什么计算机基础操、网络的使用以及对象、类、菜单、函数、常量、变量、数组、集 合、算法、数据类型、存储变量、窗体、控件、事件、属性等概念要明白掌握,还有就是流程控制语句,常用函数关键字等 等都要熟记于心。这些就好像武侠小说中的内功,要练好武功,内功要扎实。有了内功,就可以学习招式——编程语言。比 如常用的C++、C#、Java、VB、PHP等等,有了内功基础,这些招式都可以试练几招,当然每种招式都有差别——类、语句、 函数等的书写格式都不相同,这就需要细致练习,不可混淆,防止走火入魔。当然,本人觉得编程工具的学习只需掌握一辆 们即可,不必每一招都要学精,我们一般人是没有那么多时间精力,除非一些天赋异凛的大侠外。有的大侠会觉得有些编程 语言比其他的更有优势,但我觉得时代在发展社会在进步,每一种编程语言都在发展,都有自己的优势,只要能满足你工作 学习的需要即可。

②勤学苦练,锲而不舍。

  学会了武功,那就需要勤加修炼,只有在实战中才能提升公里,否则就像《天龙八部》中的王语嫣,即使懂得很多武功 而不练习,但是一个菜鸟小兵就能将其打败。编程只有在不断实践学习中才能提升水平,积累经验,而一旦途中长时间撂下 ,虽不至于武功尽废,但想恢复武力也要下很大功夫。本人就有类似经历,不堪回首。今年6月的一天,领导突然通知我参加 省里的程序员比赛,比赛分理论和实际操作两部分,理论部分占30%,实际操作占70%。实际操作要求采用VB .NET、C++、C# 、Java编程语言任选其一,数据库采用SQL Server2005或Oracle 10G,在8小时内完成程序的设计文档、编程调试、测试、数 据库应用。当我看到比赛要求,我有点石化的感觉。这里面只有数据库很熟,我已经好几年不写程序了,这下我可抓瞎了。参赛名单领导已经报上去了,没办法只能硬着头皮上了。经过一个月的地狱训练,我总算找到了使用VB.NET的感觉和熟悉度 ,从中也总结出一些经验,最终考试取得了前几名。

③要耐得住寂寞,坚持不懈。

  编写《九阴真经》的黄裳前辈在山中修炼四十余年,终究神功大成,其毅力非常人能比。编程也是一样,一个功能完善的程序往往都有成千上万行代码,大小几兆几十兆不等,工作量是相当大的。编程人员在电脑 面前一坐就是几小时甚至十几个小时,并不停的瞧着枯燥的代码,翻阅着大量资料。比如本人在写程序的时候经常是一个人 在夜深人静的办公室内彻夜奋战(白天杂事太多,晚上是我编程效率最高的时候),尤其是今年赛程准备阶段更是如此,每 天8个小时的苦练确实要有一定毅力才能坚持下来。这就要求编程的人要耐得住寂寞,要有毅力,要有不完成任务不睡觉的精 神,当然身体要好。如果耐不住寂寞,没有坚持不懈的精神,三天打鱼,两天晒网,老是不能按时完成编程任务,那么就很 难成为一个合格的程序员。当然这种8小时内完成程序的比赛,虽然不怎么提高你的编程水平,但是对检验你的编程能力却是 一个很好的办法,建议大家有时间可以试一试。

④注意积累,善于总结。

  凡事武功大成的大侠,往往著书立注或者留下自己的新的体会,而这些就是后人所争抢的秘籍。很多人每次开发完成程 序不怎么注意总结积累,当然我们自己总结编程经验不会成为武林秘籍,但对我们个人来说确是一笔不小的财富。每个人编 写代码都有自己的习惯,而善于总结,每次完成程序开发后,都将编写的特殊功能、函数、通用的功能模块以及特殊方法技 巧单独保存起来,下次编写类似程序时就可以直接使用,而很多程序中的通用功能模块往往大同小异,这样就节省时间,大 大提升了编程效率。比如数据库方面程序不外乎数据库的创建、存储过程、视图的编写以及数据库中数据的增、删、改、查 各功能都可以将其单独保存好,以备下次使用。而唱起坚持积累总结的人编程起来无往不利。记得我以前的一位老师,他善 于C语言。每次有人找他写程序,一般情况就是别人一边说功能需求他一边写程序;需求说完了,他的程序差不多写完了,然 后调试一下就搞定了,因为很多功能函数他都有现成写好的,他编程只需要将这些函数接口调用一下就可以了!

⑤写代码一定要加注释。

  比如上面的代码加了比较详细的注释,很容易看懂,但很多人写程序往往不加注释或注释太简单,所以他写的程序除了 他本人外,别人要读他写的代码就太困难了,有时完全看不懂。就像郭靖,如果不是他遇到了一个即懂中文又懂印度文的一 灯大师,恐怕他到死也不知道《九阴真经》总篇当中那些稀奇古怪的文字含义。不加注释有时是要累死人的。本人就有内伤经历。那次同事休息,他的编写的系统需要大改,而我接受了这个系统完善的任务,结果没有想到他的程序一个注释都没有 ,看得我头昏脑胀,始终理不清他的思路,只得一遍一遍给同事打电话询问。最后他没休息好,而我也累得够呛。

 ⑥变量、函数、控件命名要规范。

  我以前不太注意这个问题,结果每次看自己的程序都是一大堆text1、text2…,button1、button2…,看得我自己都 要琢磨半天才搞清楚代码逻辑关系,浪费时间。所以以后写程序,我都尽量按照改进型匈牙利表示法来命名变量控件等。编 写程序命名规范这也是一个良好的编程习惯。

⑦编程工具版本问题。

  有些人很爱追新,只要编程工具出新版本,立马换上。个人觉得这个问题有待商榷,新版本固然功能强大,但是在编程 时还要逐步适应新工具,很可能改变你的编程习惯,从而降低你的编程效率。不是版本越新越好,而是你最习惯的工具最好 。

原文:https://www.cnblogs.com/ncong/p/3899218.html

本文分享自微信公众号 - Java后端技术栈(t-j20120622),作者:田老师

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-02-27

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 多线程整体阅览

    用户4143945
  • MySQL 性能优化之骨灰级,高阶神技 !

    MySQL调优对于很多程序员而言,都是一个非常棘手的问题,多数情况都是因为对数据库出现问题的情况和处理思路不清晰。

    用户4143945
  • SpringBoot+SpringSecurity处理Ajax登录请求

    最近在项目中遇到了这样一个问题:前后端分离,前端用Vue来做,所有的数据请求都使用vue-resource,没有使用表单,因此数据交互都是使用JSON,后台使用...

    用户4143945
  • 编程小白 | 每日一练(7)

    这道理放在编程上也一并受用。在编程方面有着天赋异禀的人毕竟是少数,我们大多数人想要从编程小白进阶到高手,需要经历的是日积月累的学习,那么如何学习呢?当然是每天都...

    闫小林
  • 90%家长都不知道关于少儿编程的这些疑题!

    2017年7月,国务院印发《新一代人工智能发展规划》。其中明确提出:广泛开展人工智能科普活动。实施全民智能教育项目,在中小学阶段设置人工智能相关课程,逐步推广编...

    企鹅号小编
  • 编程小白 | 每日一练(154)

    这道理放在编程上也一并受用。在编程方面有着天赋异禀的人毕竟是少数,我们大多数人想要从编程小白进阶到高手,需要经历的是日积月累的学习,那么如何学习呢?当然是每天都...

    闫小林
  • 少儿为什么要学编程:程序才是未来世界的通用语言

    “不要只是买一个新的电脑游戏,自己做一个;不要只是下载最新的应用程序,帮助设计它;不要单纯在手机上玩,编写它的代码。无论你在城市还是农村,电脑将是你未来的重要组...

    企鹅号小编
  • 中小学编程教育是培养“码农”?北京专家:绝对不是

    小学生在老师指导下进行编程操作 郑嘉伟 摄 中新网北京12月22日电“编程教育绝不是在培养码农,而是培养学生的程序设计能力,而这其中最重要的就是流程,在呈现逻辑...

    企鹅号小编
  • 零基础学编程025:前24课总结

    学会如何学习 2016年12月21日,写下了“零基础学编程”的首篇文章:“零基础学编程”都需要哪些基础?计算机都是从0开始计数,所以就叫第0篇文章了。学习任何技...

    申龙斌
  • 【编程指导】学习编程6条箴言

    1、在学习编程之前,想清楚自己到底想写什么程序。 学习编程基本就是在学习建造东西。如果你知道你到底想造什么,你的编程学习之路将会豁然开朗。如果你的目标只是“学习...

    程序员互动联盟

扫码关注云+社区

领取腾讯云代金券