• 构建之法阅读笔记01


    第一章:概论

    为什么我们要反复的敲写、去学习已经存在的方法函数,为什么不能直接调用别人已经实现的算法来完成我们的项目呢,最初学习编程的时候我也有过这样的想法,但是通过本章的阅读学习我对这些问题有了深刻的认识。那就是软件=程序+软件工程,我们程序员用来安身立命的程序是别人能够看得懂,能够维护的程序,程序算法只是基础,我们要加上软件工程的相关知识做出一款款令用户满意的软件,切实的为用户带来方便,切实的给用户解决实际问题。一款看似简单的软件,其不但要有合理的软件架构、软件设计与实现、还要有各种文件和数据来描述各个程序文件之间的依赖关系、编译参数、连接参数等等,这些都是软件构建的过程。只有从基础的程序算法学习做起,才能够将功能做好,而要设计出开发出一款令用户满意的软件,还需要软件工程相关知识。我们必须要学好程序算法,打牢基础,这样才能够在以后的开发过程中避免出现低级错误,才能够做出真正的软件,而不是代码的累计体。

    书中讲到软件的五个特殊性:

    复杂性、不可见性、易变性、服从性、非连续性。软件工程涉及到方方面面,极其复杂的关系和知识,其是把系统的、有序的、可量化的方法应用到软件的开发、运营和维护上。之前我们所了解的软件就是可以实现某个功能的小东西,而现在我对软件有了重新的认识,软件包括太多太多。我过去做的软件存在太多太多问题,满意注重用户体验,存在很多bug,正如书中所言:bug的多少可以直接衡量一个软件的开发效率/用户满意度、可靠性、可维护性。其次我的代码健壮性太差太差,这些都是我以后要去学习去解决的问题。还记得老师说过,一款软件的好坏取决于用户量的多少,而好的用户体验,代码健壮性高的软件其用户量也一定会大。

    软件一定是用来解决用户的需求,而不是凭空想象出来的,NABCD中,NEED即指需求。软件开发的流程也一定是有预计时间的,在这点上我之前做的不好,我从来不计算自己在做某一题某一项目所花费的时间,对自己的效率能力完全的没有概念,以后开发过程中应该尽量严格的掌握时间,不断的了解自己的开发效率。

    第二章:个人技术和流程

    程序模块化对于开发者来说非常的重要,因为一个庞大的项目有还能多人来完成,他们之间相互依赖,方法调用方法,这样必须要保证每个人的方法都必须是稳定的,质量有保证的,所以我们要学会单元测试。并且要写一段测试一段,而不能够等到最后再来测试,往往在软件开发后期发现的bug修复起来要花费更多的时间和精力。好的单元测试必须能够准确快速的保证该模块的基本功能的实现,并且尽量做到自己来做单元测试。要保证单元测试的独立性,可以认为狗仔数据,来保证单元测试提高到独立性和功能的基本实现。文中多次提到GitHub的使用管理,存放源程序和其他文档,到目前我还没有注册实现自己的GitHub,我应该重视GitHub的使用,这是自己的战利仓库。

    第三章:软件工程师的成长

    1. 积累软件开发知识,提高技术技能。这一点我深有体会,在开发web项目中,我们使用的是eclipse软件,这款软件我没有汉化,所以导致很多问题的出现,在前期一个项目要配置的东西,导入的jar包,配置tomcat等都是对这款软件的认识,后来我发现一款设计前端非常好用的软件 sublime,其做前端页面的美工等非常的快捷实用,不需要eclipse那样繁琐运行慢等问题,对开发平台的熟练掌握也是软件工程师的成长,我应该尝试着去了解去使用更多的开发软件,这样我就可以在做项目的某一部分选择最适合的软件来进行开发。

    2. 积累问题领域的知识和经验,博客园对于it人士来说是发表自己文档,问题解决办法等场所,我时常会在里边寻求出现问题的解决方法,这样也不断的积累对问题的认识,对问题的解决。

    3. 对通用的软件设计思想和软件工程思想的理解。

    4. 提升职业技能,这些技能很重要,但是在大学里边学习的还是少之又少,希望以后在企业可以得到锻炼和培养。

    5. 实际成果

    对工作效率和质量的评估,人月这个词汇可以有效的评估程序员的工作效率。

  • 相关阅读:
    UVa 1354 天平难题 (枚举二叉树)
    广西邀请赛总结
    UVa 12118 检查员的难题 (dfs判连通, 构造欧拉通路)
    UVA
    Uva 127 "Accordian" Patience (模拟)
    UVA 10539 Almost Prime Numbers( 素数因子)
    HDU 1272 小希的迷宫(并查集)
    HDU 1213 How Many Tables (并查集)
    POJ 2236 Wireless Network(并查集)
    HDU 1233 还是畅通工程 ( Kruskal或Prim)
  • 原文地址:https://www.cnblogs.com/zjl-0217/p/11019609.html
Copyright © 2020-2023  润新知