1.多看官方文档

不要被这几个字吓到,官方文档其实都是宝藏。一个成熟的技术诞生,可以没有博客没有书籍,但一定会有一个官方文档,毋庸置疑,它一定是最准确、最实时的资料。编写官方文档的人,也通常就是这些技术或者软件的开发者,他们是对这些东西最了解的人,所以编写的文档不仅质量非常高,通常内容也都是最新的。

因此,官方文档远比网上的各种博客和论坛等更适合入门学习。当我们遇到很多问题和技术细节的时候,认真将官方文档过一遍,你会发现很多问题和认识模糊的地方都会清晰起来。

程序员都应该掌握通过官方文档去学习一个技术的能力,掌握了这项能力,你就具备了学会其他一切技术框架的基础;而且原汁原味的官方文档,还能锻炼你的自我学习总结能力。

2面向搜索引擎编程

很多人总以为无论什么都 Google 一下是一件很 low 的行为,但其实,普通程序员+ Google=超级程序员。

用好搜索功能,Google +Stack Overflow + GitHub 能解决你的大部分问题。

所以,在问别人问题之前,先自己搜索一下吧。

当然,超级程序员可不是会Google就行的,把 Google 到的东西吸收并运用起来,才是真正的能力。

不过,无论是看官方文档也好,还是面向 Google 编程也好,都必须要掌握较好的英文能力。这样才能更好的阅读文档,搜索自己所需要的东西。

3规范命名

ITWorld 曾经发起过一个“程序员最头疼的事情”投票,结果,近半数的程序员认为命名是最头疼的事情。

有时候代码写嗨了,命名的时候就开始放飞自我,gousheng、tiedan、xiaonaigou、i、j.....自己是写嗨了,其他人阅读起来就懵逼了。

所以,不论是内部变量还是全局变量,都要形成自己的一种命名规则,能够一眼看明白变量的意思。混乱或错误的命名不仅让我们对代码难以理解,更会误导我们的思维;反之,良好的命名,则可以大大提高我们的代码易读性,也能大大增强代码的可维护性。

4认真注释

和命名一样让程序员头疼的还有两件事:写注释头疼,别人不写注释读着头疼。

之所以要写注释,是因为当你在写某个程序的时候,可能当下记得很清楚,这一段是什么机制、如何实现,但是当你写的程序越来越多,你会忘记当初为什么这样写,改动和交接也十分麻烦,对代码进行注释就可以有效避免这种情况。注释不仅可以让人读懂代码,甚至能让读代码的人获取更多信息。

不过,注释贵精不贵多。要杜绝大姨妈般的“例注”,漫山遍野的碎碎念注释,实际就是背景噪音。

5不要重复造轮子

“不要重复造轮子( Stop Trying to Reinvent the Wheel)”, 可能应该是每个程序员入行被告知的第一条准则。写程序实际上是一个最能“偷懒”的工作:你现在费力实现的每一个功能,可能早已经有极好的解决方法贡献在开源社区,使用好现有的轮子和各种开源库,会让你事半功倍。

当然,要找到一个非常适合的轮子,是非常不容易的一件事。有时候费了九牛二虎之力找了轮子,却发现有这样那样的问题,最后还是无疾而终。

那么,什么样的轮子是一个好轮子呢?

  • 开源,并且 License 宽松。
  • 有文档,代码规范,接口友好,最好有实际用例。
  • 社区相对活跃。
  • 松耦合,定制容易。

总之,只要合适好用,都是一个好轮子。

6多读多写代码

提高编程能力其实没有捷径,最佳方式就是多写代码。

不过,除了写大量代码,提升编程能力还需要大量阅读别人写的代码。

一来,阅读源码可以提高编程能力。学习都从模仿开始,不管是入门时阅读教程里的示例代码,还是进阶时阅读优秀项目源码,都是很好的学习方式。

二来,阅读源码可以提高 debug 能力。只有练习积累的阅读代码的能力,才能看懂代码,从而快速准确地定位代码中的问题。

最后,阅读源码可以帮助形成良好的代码风格 。“开发”不仅要写可以执行的代码,更是 要写别人读得懂的代码 ,这对代码的维护和扩展大有好处。

7预留开发时间

一个程序员能否精确评估开发时间,是一件非常重要的事情。不过对于新手程序员来说,宁可多算一周,不可少估一天。过于“乐观”容易让你的 boss 受惊吓。

毕竟,在评估开发时间的过程中,你需要预设各种修改对其他模块的影响。一个修改后的单元测试,可接受测试,UAT 环境测试,再到上线,很多地方都是需要花时间的。一旦某个测试不通过,然后又得调试,修改,再进行单元测试......谁能保证每次修改都是一次通过的呢。

8大胆重构

重构是程序员的主力技能。

一个程序员最大的勇气就是看自己三个月之前写的代码。但是,学习如何将你的代码重构为一份更好的代码,这是一项很有价值的技能。好的代码是改出来的,代码需要不停的重构, 重构应该贯穿代码开发的整个阶段。

重构也并不应该是在几个月之后重构,最好的方式是实时重构。写一天代码,70%的时间都放到重构上都不过份。

9师傅领进门

最后,作为一个初入职场的新手程序员,找一个可靠的前辈带领自己,是一个非常有利于自己成长的选择。

这个师傅最好能具备这几个特质:

  • 支持你:不会因你的成功而利益受损的人。eg.同事相互竞争
  • 技术技能:是确保你能从他身上实际学到东西的人。
  • 高标准:能让你保持高标准,并不只是为了应付今天的工作,也是为了日后成为更资深的程序员。

这样,当你的工作遇到各种问题时,你的师傅可以带领你走正确的职业发展方向上。

9个编程好习惯,优秀的程序员坚持了10年,你能坚持多久?相关推荐

  1. 怎样做一个优秀的程序员?这10个问题ChatGPT这样说 ……

    本文目录 1 怎样做一个优秀的程序员? 2 怎样成为优秀的架构师? 3 怎样写容易阅读的代码? 4 怎样做项目管理? 5 怎样学习计算机程序设计? 6 怎样提升个人影响力? 7 怎样提升认知? 8 程 ...

  2. 优秀的程序员都在哪里 如何寻找优秀的程序员?

    优秀的程序员都在哪里 这是你第一次公开招募雇员.如同大多数人一样,你会发布广告,可能也会浏览一些大型的网上论坛,然后你就收到了一吨的简历. 一份份看下去,你会想:"嗯嗯嗯,这人应该可以.&q ...

  3. 转:寻找优秀的程序员(译文)

    今天在阮一峰前辈的博客中翻到这样一篇文章<优秀的程序员在哪里>,感觉写的风趣幽默却又富含哲理.所以转载以分享~ 注:本文是阮一峰前辈翻译Joel On software 博文节选,而 Jo ...

  4. 编程学习了解:一个优秀的程序员必备的五点能力,你都满足了吗?

    与30年前相比,现在互联网时代的程序员已经有了很多细分的研发方向,比如前端.后端.算法.桌面软件.人工智能等等,不同的细分方向,也都有不同的要求.但不论选择什么方向,一名优秀的程序员都应具备下面这五点 ...

  5. 编程规则 - 1 概述 -- 帮助你成长为优秀的程序员 杰出的软件工程师、设计师、分析师和架构师

    作者:Jon Ji 2011/8/20 编码规范往往只是对具体编程的格式及细节要求进行规定,但对于提高软件人员编程能力而言,编程规则更具有价值,下面将我的一些观点和想法提出来供大家参考,也希望大家批评 ...

  6. 学习编程基础知识,进阶成为更优秀的程序员

    "脚本小子"常常从某些网站上复制脚本代码,然后到处粘贴,却并不明白其中的方法与原理 ​​当你看到编程语言编进教材的时候,看到一个文科生也在编写Python程序进行数据分析的时候,你 ...

  7. 寻找优秀的程序员之实战指南-2

    寻找优秀的程序员之实战指南 --选自<软件随想录:程序员部落酋长Joel谈软件> [好消息]本书今天(12.10)互动有货,感兴趣的朋友可以 逛逛去 [续]http://blog.csdn ...

  8. 成为一名优秀的程序员基本要素

    职业要求 一般的程序员都有四年的在专业领域的学习,需要一个在程序领域的学士学位获得者,不论是数学方面的还是工程方面的都是可以的. 程序员 大约有20%的人在这一领域的计算机科学和工程学拥有更高的学位. ...

  9. 优秀 Java 程序员写代码的风格

    转载自 涨姿势 | 优秀 Java 程序员写代码的风格 今天突发奇想,对编码习惯和 编程风格 很感兴趣,于是乎,找了一下关于编程风格(Java篇)的资料,希望对爱好编码或者开始学习编码的同学有帮助! ...

最新文章

  1. 华科计算机国家专项分数线,5所985高校中招,华科、中大被捡漏,专项计划录取异常,原因透析...
  2. UA MATH564 概率论III 期望
  3. easyUI的引用顺序
  4. NFS服务器主配置文件名,NFS服务器的搭建与配置
  5. 847. Shortest Path Visiting All Nodes(三)
  6. 「HNOI 2015」落忆枫音
  7. wamp切换mysql版本_wampserver多版本php切换失败
  8. redis安装----非基于lnmp安装
  9. 各位玩新浪的SAE的 请点个关注http://weibo.com/i/2062352633
  10. android 删除开机动画,Android开机logo和开机动画的修改
  11. Tableau实战 楼市降温分析(七)现期房销售额及累计增长
  12. 程序员须学计算机语言,IT程序员入门必须要学会的是什么?
  13. 如何在码云上面上传本地项目
  14. java spi 热插拔_利用SPI机制实现责任链模式中的处理类热插拔
  15. 基于GoLang的MMO游戏服务器(四)
  16. 让顶尖设计师教你10个色彩运用秘技,赶紧洗耳恭听吧!
  17. 你应该看得懂的RecyclerView嵌套
  18. 从0基础到车载测试工程师,薪资11K,肯拼搏的人,总会有所收获
  19. JAVA实现彩色图片转黑白图片 (ImageIO类)
  20. 美国计算机科学排名前三大学,美国计算机科学专业大学排名(2021 USNEWS)

热门文章

  1. wpa_supplicant.conf文件详解
  2. 实验记录 | mutect问题详解:No tribble type was provided on the command line and the type of the file?
  3. 新闻动态html,news.html
  4. Win7 x64下内核池溢出覆盖配额进程指针(Quota Process Pointer Overwrite)
  5. 传输门、D 锁存器、D触发器、建立时间与保持时间
  6. 债券 零息债 贴现债 计息
  7. 为什么光标停在表格中间_excel中单元格中的光标为什么总在中间位置_word光标怎么设置...
  8. 教你打造基于贝壳内核的最简单一键备份还原软件(源代码)
  9. E22-400T22S1C lora测试说明
  10. 陶晶驰串口屏学习2之全局变量