大神们都藏起来的25个编程技巧!新手小白绝对不知道
如果只是周而复始地写代码,想必编程的工作会让很多程序员发狂。如何在看似枯燥的工作寻找乐趣,我认为对工作的激情和兴奋感、始终学习的态度,还有掌握一些实用高效的编程技巧,对于提升工作乐趣和效率大有裨益。今天小星就跟大家分享一下25个实用编程小技巧,希望可以给大家的工作和学习带来更多的思考。
1. 不要毫无计划地写代码,思考、调研、计划、编码、测试、修改,一个都不能少;
2. 不要写代码前过度计划,在一头钻进代码前做点计划是好事,但是即便是好事,也可能物极必反。
3. 请勿低估代码质量的重要性,如果你只能够关注你所写的码的一个方面,那么肯定是可读性。表意不明的代码就是垃圾,甚至是不可回收的垃圾;
4. 使用实现功能的最简单方案,作为专业的程序员,你的职责不是找出问题的一个解决方案,而是找出问题的最简单的解决方案;
5. 适时放弃,当你开始怀疑一个解决方案的时候,你就应该考虑抛弃它,并且重新思考这个问题。不管你已经在这个解决方案中投入了多少精力。像 GIT 这样的版本控制系统能够帮助你分开管理和尝试多种不同的解决方案,把它利用起来吧;
6. 擅用 Google,除非你正在使用一种极其前沿的技术,否则当你遇到一个问题时,很可能别人早就遇到过同样的问题了,并且也找到了解决方案了。给自己省点时间,先 Google 一下;
7. 做好封装,基本的想法就是你想你的代码高内聚和低耦合,意思是说保持相关的代码在一起(在一个类中),降低不同类之间的相互依赖;
8. 做好规划,写好需求再写代码,尽可能编写目前正在实现的方案所需的最少量代码;
9. 要懂算法,使用合适的数据结构;
10. 不要写重复性代码,要用好配置文件,不要使用没必要的条件语句和临时变量;
11. 做好代码注释,但是不要给傻子都知道的代码写注释;
12. 一定要写好测试,如果可能的话,甚至在开始写代码实现需求之前,你就应该开始预估和设计需要测试校验的情况了。测试驱动开发 (Testing-driven development, TDD)不是什么花俏的炒作,它是会实实在在会对你思考功能特性、寻找更好的设计方案产生积极影响的。
13. 不要觉得代码运行起来就是正确的,有些时候代码的 bug 可能并不是显而易见的;
六星——手把手带你入门编程
14. 要能够质疑既有代码,作为一个初学者,总是应该假定那些你读不懂的、且没有文档注释的代码很可能就是糟糕的代码。质疑之,询问之,使用 git blame 揪出罪魁祸首!
15. 不要过度迷恋最佳实践,我觉得“最佳实践”其实是害人的,它暗示着你不需要深入研究它,这就是有史以来最佳实践,不用质疑!
16. 不要过度迷恋性能优化,如果你在运行代码之前就在优化它了,那很可能你就是在过早优化代码了,也很可能你正在费时费力做的优化是完全没必要的。
17. 以用户体验为目标,要站在最终用户的角度看问题。专业的开发者要考虑这个特定功能的用户需要什么、怎样使用,要想方设法使得这个功能容易让用户发现和使用,而不是想方设法在应用中用最便捷添加这个功能,毫不考虑这个功能的可发现性和可用性。
18. 为你的开发任务挑选合适的工具,你可以使用最原始的工具建造房子,然后享受甜蜜时光。你也可以花费一些时间和金钱去了解先进的工具、更快地建造更好的房子。工具在不断地改进中,你要乐意去学习它们、使用它们。
19. 要理解好代码问题和数据问题之间的关系,即使是程序中最小的 bug 也会导致它所管理的数据去到一种不可预测的状态。尤其是当所有数据校验都完全在这个有 bug 的程序中进行时。
20. 切勿重复造轮子,使用好现有的轮子和各种开源库,会让你事半功倍。当然,不要仅仅为了使用一两个函数就引入一整个代码库,在 JavaScript 中的典型例子就是 lodash 代码库;
21. 对代码审查保持正确的态度,应该把每一次代码复审当作是学习的机会,欢迎他们、感激他们、从中学习,最重要的,当你从你的代码复审人员那里学习到东西的时候,要感谢他们;
22. 用好版本控制工具和系统,新手往往低估了一个好的版本控制系统的威力,我这里所说的好的版本控制系统其实就是指 Git;
23. 不要过度使用共享状态,一个新手可能会尝试使用定时器来解决这个共享变量的竞态条件问题,特别是当他们必须处理一个数据锁的问题时。这是危险的标志,别这么做,注意它,在代码复审中指出它,永远也不要接受这样的代码。
24. 正视 Error,Error 是好东西。Error 意味着你在进步,意味着你可以通过简单的后续修改就获得更多的进步。专业程序员喜爱 Error。新手则痛恨 Error;
最后,也是最重要的!学会休息,任何人的大脑都需要休息,身体也需要休息。
以上就是“大神们都藏起来的25个编程技巧!新手小白绝对不知道”的详细内容,如果对编程感兴趣的小伙伴,欢迎前往编程学习网,从基础知识到进阶技能,带你全方位入门编程!
相关文章
-
重磅:贾跃亭乐视股权再减1077万股,网友:老贾不在乎!
-
美团携手深兰科技:小蚂哥物流机器人日配送曾超1000单
-
【PW早报】任天堂Switch面临全球缺货,欧美4月初将断货
-
苏宁活成“别人家的公司”:逆势招聘、年终大赏、多维福利
-
新iPhone测试USB-C接口/iOS13或支持「夜间模式」/微信红包可发表情包
-
消息称字节跳动接盘锤子科技,今日头条回应系正常人才流动
-
从张小龙的4小时演讲说起……
-
中央网信办等部门:到2023年底,IPv6技术创新和融合应用试点工作取得明显成效
-
终于!微信新增语音暂停功能,60秒长语音不用重头再听了
-
Lyft上市第二天破发,股价下跌12%;国美澄清黄光裕出狱新闻;Airbnb向OYO投资逾1亿美元
-
深度资讯|Q1财季业绩十八年来首次下滑,苹果在中国缓神依旧艰难
-
华为做操作系统备用,但谷歌其实不敢将Android私有化
-
为了寻求增长十岁的阿里云决定“后退一步”
-
【钛晨报】神州租车:陆正耀已辞任董事会主席及非执行董事职务;苹果Mac电脑将改用自研ARM芯片;任天堂:共有30万账号被黑客入侵
-
36氪独家|微信朋友圈第三条广告全量开放,商业化变现时隔一年再次提速
-
涨超10%,阅文逃离合同风波?
-
AI 创作的东西,到底有没有著作权?
-
何止鸿蒙OS!华为还有一张“底牌”,花粉迎来福利
-
亚马逊作恶?搜索算法或故意导向自家商品
-
微博账号怎么养才能权重高?下面几步告诉你
-
视频伪app
-
破局数字教育:与出行、物流领域“同出一辙”,铺平最后一公里?
-
青城码21日零点正式上线,注册流程、使用说明看这里
-
“彩色世界”体育版块继续起航,国际球星比利亚课程视频拍摄完毕
-
华为回应《华为美》歌曲,王思聪公司起诉斗鱼|天下网事2.28
-
又一外卖巨头倒下!年销售额曾接近10亿,如今亏损4.74亿
-
郭台铭回应:这是微软和Google之间的竞争,起诉供应商是霸权心态
-
深度资讯|PayPal曲线入华,与支付宝微信角力跨境电商
-
兵役登记操作方法(附流程步骤图解)