• 记录自己的一些思考


    1. 重视单元测试
      首先为什么要写单元测试呢?
      一开始我也觉得是一件挺浪费时间的是事情(有这个想法是因为当时写的代码太少了,同时没有考虑到后面的可维护性),记得在上一家公司的时候,架构师要求必须要写单元测试,不写不让上线。当时还是一名实习生,也不明白为什么要写呢,我自己大致测一下,为什么还要花时间去写单元测试呢?当时是有点迷茫的。
      现在我觉得需要写的原因主要有以下几点:
      a. 保证逻辑正确
      b. 重构或者优化的时候有一个标准,自己心里也有底
      c. 方便其他同事接手,可以跑单元测试帮助了解业务逻辑和代码逻辑

    2. 编程语言(主要是服务端开发)
      PHP: 从大二开始学习和使用PHP,到现在发现还只是会用的阶段,它背后的设计以及为什么这样用,自己还没有了解,同时感觉PHP的生态和社区不是很活跃,所以PHP已经不能作为我的主力开发语言了(强大的数组把数据结构给隐藏掉了,如果不去思考数据结构和算法,是写不出性能高效并且优雅的代码的,同时也不会成为一名合格的工程师)
      Go: 喜欢Go,名字很简单,看到名字就很喜欢,哈哈哈,Go的生态和社区也比较活跃,目前把Go当作是自己的主力开发语言,因为自己的定位是一名分布式后端工程师。
      Java: 了解的比较少,感觉Java的生态是最强大的,没有之一
      C: 保留项,如果有需要和感兴趣的话,C是需要掌握的,因为很多软件都是C写的,如Linux/Nginx/Redis等等
      C++: 了解较少,在C的基础上了解了一点点
      Python: 了解的少,可以用来做数据分析和人工智能等
      综上:
      以Go为主,PHP为辅进行过渡,对Java保持开发态度,有机会有需要的话可以学习的。C是要掌握的,C++、Python的话和Java一样持开发态度。

    3. 改动一点要小,局部分解化:less is more
      遇到Bug,或者大项目的时候,一定要将任务拆解为细粒度的,因为拆分为细粒度的更加具体化,可控性更强,更容易找出问题的所在。
      a. 改动要小
      b. 任务分解要小
      c. 小步快走

  • 相关阅读:
    【Manacher(马拉车)算法】
    【可持久化数据结构】
    react-dva修改默认端口的方法
    关于React Hooks使用
    react hook useContext 跨文件接收
    el-select中使用el-tooltip时,在下拉滚动时整个网页会出现滚动条,并抖动
    react的onClick执行函数和bind(this)问题
    禁用h5页面中长按图片弹出的弹层
    JS树结构操作:查找、遍历、筛选、树结构和列表结构相互转换
    js树结构查找节点
  • 原文地址:https://www.cnblogs.com/zhangpengfei5945/p/13093769.html
Copyright © 2020-2023  润新知