首页 > 编程语言 >程序员如何保持优秀

程序员如何保持优秀

时间:2023-05-08 19:32:58浏览次数:57  
标签:优秀 编程 技术 程序员 保持 永远 代码


1. 小范围的选择一些有用技术,透彻的学习它们,拥抱它们。然后不断的扩展这个范围。

2. 理解各种数据结构的优点和缺点,包括它们在内存中和在硬盘上的各自表现。

3. 理解各种算法的优点和缺点。

4. 了解你的工作领域。关上电脑,去做你的用户们在做的事。

5. 有准备,有愿望,有能力在任何时候投入到多种技术层面中。你必须知道表象下的技术原理。在“各个技术层面的掌握程度”和“编程能力”上有着密切的联系。

6. 发挥你的想象力。永远都要问,“有更好的方法吗?”跳出常规思维约束。最好的解决方案也许还没有被发现。

7. 优秀程序员:我优化代码。更优秀程序员:我设计数据。最优秀程序员:他们的不同之处是什么?

8. 正确的构造你的数据。任何的缺陷都将造成你的代码里无尽的技术债务。

9. 正确的命名事物。使用“动词-形容词-名词”格式来命名程序和函数。变量名要足够长,尽量短,有意义。如果其他程序员不能够理解你的代码,说明你写的不够清楚。在大多数情况下,针对下一个程序员而编码要比针对环境而编码重要的多。

10. 把分析和编程分离开做。它们不是同类的事物,需要不同类型的劳力资源,需要在完全不同的时间和地点分开做。如果同时做它们,你一样都做不好。(我喜欢在一天的末尾做不涉及技术的分析,而在第二天早上进行编程。)

11. 永远不要图省事走近道。永远不要把相同的代码部署两次。永远不要把一个变量命名成另一个变量名的一部分。也许你不明白这些规则,也许你要辩解。但如果你是 遵守着这样做的,这些规则就会约束你正确的构造你的程序。图省事的做法是让那些低等级的程序员永远停留在低等级的原因。

12. 学习如何测评程序性能。你会惊奇的发现从中能学到很多之外的知识。

13. 学会区别对待问题细节和问题后果。问题细节不会导致太大的差别,而问题后果能导致世界灭亡。只关注后果。

14. 密切关注你的用户/客户/管理人员。帮助他们认清楚他们的“what”,这比帮助他们明白他们的“how”要重要的多。

15. 写一个框架,不论你是否打算用它。你将从中学到从其它途径中学不到的东西。

16. 把你知道的东西教给他人——通过口口交流或通过写作。最终这将成为教育自己的机会。

17. 永远要对你的客户/用户说“Yes”,即使在你不确定的情况下。90%的情况下,你会最终找到方法实现它。10%的机会,你将会去向他们道歉。这是重要的个人成长中付出的一点小代价。

18. 寻找别人的做出神奇的事情但却一滩糊涂的代码。重构它。然后丢掉它,并发誓自己永远不要犯他们犯下的相同错误。(这样的程序你会发现很多。)

19. 数据永远 > 理论或观点。通过开发东西来学习数据。

20. 有可能的话,开创自己的业务(服务或产品)。你将从中学到很多你做雇员永远学不到的关于编程的知识。

标签:优秀,编程,技术,程序员,保持,永远,代码
From: https://blog.51cto.com/u_8650007/6255583

相关文章

  • mac版DataSpell2023:专业数据科学家的 IDE,macbook程序员必备
    DataSpell2023forMac是一款强大的数据科学工具,它提供了广泛的功能和工具,帮助用户更好地分析、处理和可视化数据。无论是数据分析师、数据科学家、商业分析师还是研究人员,DataSpellforMac都是一个理想的选择。mac软件下载:https://mac.macsc.com/mac/4116.html?id=MzI1OTY2......
  • 使jenkins.war保持后台运行的方法
    直接使用命令java-jarjenkins.war 启动Jenkins,这样当退出窗口时,进程就会结束,怎么样能够让Jenkins保持后台运行呢?在网上搜集到以下三种办法,请参考 ​1.java-jarjenkins.war--httpPort=8080&​​​ 2.执行以下三步:(1)执行java-jarxxx.jar后(2)ctrl+z退出到控制台,......
  • 好奇心: 保持对未知世界用不停息的热情
    2023第三本书,之前下决心每次读完书就要写一篇读后感,加深认识。结果下决心后的第一本《乡土中国》就写不下来读后感,感觉读后感太多太密,还不如想起来的时候回头浏览一遍书。但是最近听路障的视频,发现他也建议写读后感来增加对书的认识,这样能更好的帮助记忆,加上这本书好奇心里面......
  • 程序员面试金典---23
    整数英语的表示思路:三位一写。/***@param{number}num*@return{string}*/varnumberToWords=function(num){constsingles=["","One","Two","Three","Four","Five","Six","Sev......
  • 一个28岁程序员入行自述和感受
    我是一个容易焦虑的人,工作时候想着跳槽,辞职休息时候想着工作,休息久了又觉得自己每天在虚度光阴毫无意义,似乎陷入了一个自我怀疑自我焦虑的死循环了。我想我该做的点什么去跳出这个循环。。。自我叙述我相信,每个人都有一个自命不凡的梦,总觉得自己应该和别人不一样,我不可能如此普......
  • 一个28岁程序员入行自述和感受
    我是一个容易焦虑的人,工作时候想着跳槽,辞职休息时候想着工作,休息久了又觉得自己每天在虚度光阴毫无意义,似乎陷入了一个自我怀疑自我焦虑的死循环了。我想我该做的点什么去跳出这个循环。。。自我叙述我相信,每个人都有一个自命不凡的梦,总觉得自己应该和别人不一样,我不可能如此普......
  • 在编程语言越来越高级的情况下,程序员学习汇编有什么意义?
    汇编(Assembly)是一种计算机编程语言,用于编写计算机程序。与高级编程语言不同,汇编语言更接近计算机硬件的语言,可以直接控制计算机的底层操作。汇编语言使用助记符来表示指令和操作数,这些助记符可以被转换成计算机能够理解的机器语言指令。汇编语言编写的程序通常比高级语言编写的程序......
  • [软件人生]思考:软件的目的是什么,程序员实际在做什么
    推荐一篇文字李航博士的《浅谈我对机器学习的理解》机器学习与自然语言处理http://www.thebigdata.cn/JieJueFangAn/13162.html李航博士的《浅谈我对机器学习的理解》机器学习与自然语言处理此文写得不错,属于入门可以理解的。要知道,我们所做的一切其实最终目标都是拟人化,拟人化的......
  • 程序员面试金典---22
    跳水板代码:/***@param{number}shorter*@param{number}longer*@param{number}k*@return{number[]}*/vardivingBoard=function(shorter,longer,k){if(k===0)return[]if(shorter===longer)return[k*shorter]letres=[]......
  • Linux下面让程序保持后台运行
    我们远程登录linux服务器,希望退出终端后,启动的命令仍然在后台运行。首先要说明的是,让程序以daemon方式运行,应该要求更复杂一点,参见https://en.wikipedia.org/wiki/Daemon_(computing)。我们的简单要求,希望退出终端后命令仍然运行,实际上是希望消除终端退出对命令进程的影响。就......