zoukankan      html  css  js  c++  java
  • 程序员修炼之道2

    最近几天读完了一本书《程序员修炼之道》,我认为它是写给程序员看的一本哲学书,因为它侧重的是提升程序员的思维能力,而不是具体的实操能力或者专业知识。看完这本书后,不会给人一种立刻就能上手使用的效果,但是它会给人一种豁然开朗的效果,更多的是思维上的启迪。

    当我们谈论优秀程序员的时候,我们在谈论什么?它代表着一类人,而这类人拥有一些相同的品质,他们有着优秀的思维和工作习惯,他们也许还拥有丰富的经验,更关键的是那些宝贵的经验变成了智慧,有人把这些智慧用文字表达了出来,于是就有了这本《程序员修炼之道》。

    这本书正是给了自己一个机会,一个可以近距离了解一个优秀程序员的机会,看看他都有哪些习惯和认知,之后,再对比一下现在自己脑子里对于编程这件事的认知,感受一下差距。读完后,觉得差距还真的挺大的,小到对于工具的使用,大到对于整个项目的理解。一个项目从开始到结束,里面有太多东西要学习。比如说需求开始前,需求拆解阶段,不要去搜集需求,而是要挖掘需求。理解需求背后的业务逻辑,不能陷入为了开发而开发的状态。

    反观自身,最近2个月以来的工作,就是处于一种盲目开发的阶段,它体现在,原封不动的照着PO的需求文档去开发,却没有考虑到背后用户的使用逻辑,所以在需求文档上有一点业务逻辑偏差的时候,自己毫不知情,导致后面很多的返工,花费多余的时间和精力重新修改代码。而这个失误,是可以在最开始的时候,多想一步,再多挖掘一步,就有可能会避免。这就是一个经验欠缺的开发在需求分析上的不足之处,技术是一方面,对于业务的理解同样是衡量一个开发水平的重要因素。

    再比如说开发过程中,要遵循“Test early.Test often.Test automatically”的原则,不要等着用户发现问题。这也是自己近期工作中暴露的一个问题,测试太少。完成一个功能后,它可能覆盖的情况是有限的,往往会出现一些特殊情况或者其它操作,这个时候,就是问题容易出现的时候。因此,今后的工作中要加强自测的频率和质量,以涵盖到尽可能多的使用场景。

    程序员修炼之道,强调的是修炼,这是一个过程,甚至不是那么一个舒服的过程,不断的犯错,总结,改进,提升,再循环往复,正是这样一个过程,才能够逐渐成长起来。

  • 相关阅读:
    bzoj2957 -- 线段树
    bzoj2209 [ JSOI2011 ] -- splay
    bzoj3874 [ AHOI2014 ] -- 爬山算法
    bzoj1038 [ ZJOI2008 ] -- 模拟退火+二分
    bzoj2428 [ HAOI2006 ] -- 模拟退火
    bzoj3680 -- 模拟退火
    bzoj4500 -- 差分约束
    bzoj3527 -- FFT
    bzoj1013 [ JSOI2008 ] -- 高斯消元
    使用nginx try_files 指令 管理静态资源
  • 原文地址:https://www.cnblogs.com/w669399221/p/13086595.html
Copyright © 2011-2022 走看看