如何提高自己的编程水平

编程

不知不觉做软件已经做了十年,有成功的喜悦,也有失败的痛苦,但总不敢称自己是高手,因为和我心目中真正的高手们比起来,还差的太远。世界上并没有成为高手的捷径,但一些基本原则是可以遵循的。   1. 扎实的基础。数据结构、离散数学、编译原理,这些是所有计算机科学的基础,如果不掌握他们,很难写出高水平的程序。据我的观察,学计算机专业的人比学其他专业的人更能写出高质量的软件。程序人人都会写,但当你发现写到一定程度很难再提高的时候,就应该想想是不是要回过头来学学这些最基本的理论。不要一开始就去学OOP,即使你再精通OOP,遇到一些基本算法的时候可能也会束手无策。   2. 丰富的想象力。不要拘泥于固定的思维方式,遇到问题的时候要多想几种解决问题的方案,试试别人从没想过的方法。丰富的想象力是建立在丰富的知识的基础上,除计算机以外,多涉猎其他的学科,比如天文、物理、数学等等。另外,多看科幻电影也是一个很好的途径。   3. 最简单的是最好的。这也许是所有科学都遵循的一条准则,如此复杂的质能互换原理在爱因斯坦眼里不过是一个简单得不能再简单的公式:E=mc2。简单的方法更容易被人理解,更容易实现,也更容易维护。遇到问题时要优先考虑最简单的方案,只有简单方案不能满足要求时再考虑复杂的方案。   4. 不钻牛角尖。当你遇到障碍的时候,不妨暂时远离电脑,看看窗外的风景,听听轻音乐,和朋友聊聊天。当我遇到难题的时候会去玩游戏,而且是那种极暴力的打斗类游戏,当负责游戏的那部分大脑细胞极度亢奋的时候,负责编程的那部分大脑细胞就得到了充分的休息。当重新开始工作的时候,我会发现那些难题现在竟然可以迎刃而解。   5. 对答案的渴求。人类自然科学的发展史就是一个渴求得到答案的过程,即使只能知道答案的一小部分也值得我们去付出。只要你坚定信念,一定要找到问题的答案,你才会付出精力去探索,即使最后没有得到答案,在过程中你也会学到很多东西。   6. 多与别人交流。三人行必有我师,也许在一次和别人不经意的谈话中,就可以迸出灵感的火花。多上上网,看看别人对同一问题的看法,会给你很大的启发。   7. 良好的编程风格。注意养成良好的习惯,代码的缩进编排,变量的命名规则要始终保持一致。大家都知道如何排除代码中错误,却往往忽视了对注释的排错。注释是程序的一个重要组成部分,它可以使你的代码更容易理解,而如果代码已经清楚地表达了你的思想,就不必再加注释了,如果注释和代码不一致,那就更加糟糕。   8. 韧性和毅力。这也许是"高手"和一般程序员最大的区别。A good programming is 99% sweat and 1% coffee。高手们并不是天才,他们是在无数个日日夜夜中磨练出来的。成功能给我们带来无比的喜悦,但过程却是无比的枯燥乏味。你不妨做个测试,找个10000以内的素数表,把它们全都抄下来,然后再检查三遍,如果能够不间断地完成这一工作,你就可以满足这一条。   这些是我这几年程序员生涯的一点体会,希望能够给大家有所帮助。

时间: 2022-12-28

如何提高自己的编程水平的相关文章

如何提高自己的编程水平(转)

不知不觉做软件已经做了十年,有成功的喜悦,也有失败的痛苦,但总不敢称自己是高手,因为和我心目中真正的高手们比起来,还差的太远.世界上并没有成为高手的捷径,但一些基本原则是可以遵循的.1. 扎实的基础.数据结构.离散数学.编译原理,这些是所有计算机科学的基础,如果不掌握他们,很难写出高水平的程序.据我的观察,学计算机专业的人比学其他专业的人更能写出高质量的软件.程序人人都会写,但当你发现写到一定程度很难再提高的时候,就应该想想是不是要回过头来学学这些最基本的理论.不要一开始就去学OOP,即使你再精

如何提高ASP.NET 编程能力???请高手指教!!!!

问题描述 如何提高ASP.NET编程能力???请高手指教!!!!最好能写出学习步骤和方法,谢谢!!!本人目前的水平属于中低水平,只能开发简单的系统,而且不规范. 解决方案 解决方案二:严格来说,我俩不算中低水平,只能算在入门.呵呵~~~个人觉得,最快最有效的方法是:参加培训+找项目做(跟别人一起做)+多看书(上CSDN)解决方案三:1看书,C#高级编程,设计模式2实践AJAX,LINQ,WCF3系统开发解决方案四:能具体点么?最好有高手的自己的心得体会!!!是如何一步步进步的!!!解决方案五:引

全球程序员编程水平排行榜TOP50,中国排名第一

哪个国家的程序员水平最高?这个容易引发弹幕混战的问题可不好回答.最近软件工程师水平测定平台HackRank发起了一系列编程挑战竞赛,给出了一个目前为止貌似靠谱的统计调查结果. 全球程序员编程水平国家(地区)排行榜TOP50 https://yqfile.alicdn.com/0165338aef0c1602c9a6bc5cac684e2a8888ae7c.png" > 全球数以十万计的软件工程师参加了HackRank的系列编程挑战大赛,比赛项涵盖从Python.算法.网络安全到分布式系统多

智慧城市和低碳城市发展计划:全面提高信息基础设施建设水平

[<政府工作报告>"十项计划"之"智慧城市和低碳城市发展计划"原文表述] 全面提高信息基础设施建设水平,年内实现旅游景区和主要公共场所WIFI全覆盖.从政务.交通.城管.旅游.医疗等方面的信息共享平台和大数据应用入手,坚持"互联网+"战略,促进互联网与其他产业融合发展,积极打造智慧城市.今年要完成智慧城市和低碳城市的发展规划,并积极向前推进. [<三亚市国民经济和社会发展第十三个五年规划纲要>相关表述] 以数字化管理为基础

中国足球要上去,也离不开提高足球本身的水平

&http://www.aliyun.com/zixun/aggregation/37954.html">nbsp;看了西班牙与爱尔兰的比赛.西班牙的球的确漂亮,没得比. 一个人的坚持有多重要?托雷斯首场比赛,两个必进球没进,这对队员与教练的压力都很大.博斯克今天能够让托雷斯首发,可以看出一名教练的执着.这种执着,有了丰厚的回报. 从爱尔兰球迷身上看到的是另一种感动.足球由三个部分组成:球迷.足球本身.组织者.爱尔兰今天输了球,但他们的球迷是世界上最好的球迷. 这几天,新闻里说了,

大数据的地质灾害应急系统 提高城市公共安全管理水平

5月30日消息,国土资源部地质环境司(国土资源部地质灾害应急管理办公室).中国地质环境监测院(国土资源部地质灾害应急技术指导中心).中国地质灾害防治工程行业协会在西安于5月21日组织召开了"2013年全国地质灾害应急工作会议暨技术培训班",来自全国 各地的省厅环境处及总站的领导专家.部领导.厅局级领导以及地质灾害应急工作人员齐聚古都西安,同方股份有限公司做为培训主讲单位之一应邀出席. 本次会议的目的在于提升全国地质灾害应急能力.会议邀请多位专家,就大型滑坡的应急处置,地灾应急管理中需要

提高软文写作水平

软文写作是决定网络营销和SEO推广的一个重要环节,http://www.aliyun.com/zixun/aggregation/25499.html">软文写作水平的高低就直接影响着网络营销和SEO推广的质量以及水平.作为站长们,尤为重要,我们要学习软文写作,多多阅读同行中的高手们的文章有利于我们提高软文写作水平. 在这里,我们首先应该明白软文有什么特点?为什么会受如此众多的SEO推广青睐呢? 软文和硬广告相比,软文更具有优势,其精妙之处就在于一个"软"字,好似绵里藏

在校学生如何提高编程水平?

问题描述 在校生如何提高?找实习单位很难啊.各位有什么找实习单位的窍门么?俺做过一些java项目了,但是总觉得水平不够- 解决方案 多实践, 有兴趣的话可以参加一些开源的项目 提高挺快的...

善于运用大数据创新提高政法工作能力水平

信息科技向数据科技的发展,不仅更新了我们认识世界的思维方法,也给我们做好政法工作提供了新途径新手段. 大数据战略行动是我省抢占绿色发展先机.增强经济发展动力的关键举措,是必须抢占的发展制高点.大数据表示的是过去,但表达的是未来,其意义就在于通过对海量数据的整合.挖掘,揭示传统技术方式难以展现的关联关系,让我们更清楚地理解事物本质.把握未来走向,从而发现新规律.提升新能力.全省政法机关务必要在大数据战略中发挥好作用,坚持用数据说话.用数据管理.用数据创新.用数据决策.用数据服务,全力建设"政法平安