zoukankan      html  css  js  c++  java
  • 构建之法阅读笔记01

                                                                              构建之法阅读笔记01 
          上一周只是按老师的要求快速阅读了《构建之法》这本书,虽然大概知道了这本书的内容但毕竟时间太短很多都无法理解。这周又重新读了前三章,发现的确有很大收获。以前总是找不到合适的关系来形容软件工程老师和学生的关系,我很喜欢书中对此的比喻——健身教练和健身学员,一个是身体力行者,一个是自己流汗学习者。老师有足够的理论知识,可以给我们指导,而我们则需要认真努力去学。软件因为人们的某种需求而产生,就像书中阿超为儿子出题的例子,所以我们以后在开发软件时必须仔细考虑人们是否需要它,也就是市场价值。以前总以为没有bug的软件是完美的,但是大的软件又怎么会没有bug,而且是否是bug,有时取决于用户者和开发者不同的态度。如果我们尽量减少bug或者将bug尽可能的掌握在自己手中,就已经很不错了。
           我们都还没有和别人合作开发过软件,所以对团队项目中自己的任务应该怎样去完成并不清楚,原来我以为团队项目中我只要完成自己的任务,实现自己代码的功能就可以了,但在读过这本书的第二章后,我才了解我们还必须要让自己负责的模块功能定义尽量明确,模块内部的改变不会影响其他模块,团队中其他人能够看懂,能够调用。对于这一要求单元测试就是一个很有效的解决方案,所以我们还要去学习怎样对自己的模块进行单元测试。这也是很多软件完成很久后并未发布的原因,必须要保证所有代码经过了单元测试,在软件开发后期发现的Bug,修复起来花更多的时间。这对于我们将来做软件工程师应该是必须具备的技能吧。
          书中告诉了我们评价软件工程师水平的主要方法。而对于初级软件工程师如何成长作者也给出了明确的方法:1 积累软件开发相关知识,提升技术技能 2 积累问题领域的知识和经验 3 对通用的软件设计思想和软件工程思想理解 4 提升职业技能 5 实际成果。 现在的我们也应该尽量去达到这几个要求吧。作者对技能的反面的解说,我发现自己真的有这方面的问题,很多时候我都是在网上找实现目的的相关代码,并没有经过大脑的认真思考,独立完成。这是一个很大的弊端,今后必须改正,让自己拥有真正的实力。

  • 相关阅读:
    记一则玄乎奇玄的ADG误删自救事件
    ORACLE 日常信息查询sql
    Linux脚本判断磁盘容量
    postgresql数据库创建触发器记录表修改时间
    centos7关闭防火墙
    centos7 安装mysql5.7(二进制tar包方式)
    Oracle11G RMAN-06214: Datafile Copy /u01/app/oracle/product/11.2.0/db_1/dbs/snapcf_cpbd.f
    SQLPlus中set命令
    oradehub命令
    记一报错解决:ORA-00845: MEMORY_TARGET not supported on this system
  • 原文地址:https://www.cnblogs.com/jinpeigang/p/5269471.html
Copyright © 2011-2022 走看看