• 构建之法阅读笔记01


        这几天阅读了构建之法这本书,这也是我们这学期软件工程这门课的教材,书中一些内容和思想老师在上学期的java语言这门课程中就给我们逐渐渗透。像书中四则运算、地铁换乘等问题上学期老师也已经布置过,而且对于“做中学”的思想老师上学期已经运用再课堂上了,这对当时刚刚接触软件工程这个专业的学生来说的确受益匪浅。

          这一次我阅读了书中前三章的内容,使我对软件工程的概念有了更深的了解。我感觉这本书主要介绍了软件工程如何学习,它不同于人月神话那样对项目的管理和开发进行系统性的分析,它能够指导初学者一步步的构建起自己的知识网络,课后也有一些习题,即是一本教材,也是领域内一本比较经典的作品。

       在概论部分本书从程序->应用软件->软件服务开始。然后介绍了许多软件工程的技术名词,并且给出了一个十分经典的公式:

    • 程序= 算法 + 数据结构
    • 软件= 程序 + 软件工程
    • 软件企业= 软件 + 商业模式

    这个公式使我对软件工程的认识更加清晰。

          通过第一章我认识了本书的作者邹老师,他的语言干脆明了,条理清晰,这使我增加了对本书的兴趣。书中的故事人物生动形象,完全不同于人月神话那样的书籍,在语言表达上与大道至简有些异曲同工之妙。文中就直接点出了写软件的目的在于创造“足够好”的软件,让用户满意的软件。知道了写软件的目的才能找到学习的方向。

          通过对第二章的阅读我大概了解了软件开发中的流程模式,目前大部分软件基本都是一个原型。Psp就像一个计划表,可以很清楚的看到团队的工作流程。还介绍了单元测试、回归测试、效能分析等知识使我对个人软件开发流程有了基本的了解。

      第三章讲的是软件工程师的成长,使我了解一些软件工程师所需的基本条件:

    1.   积累软件开发相关的知识,提升技术技能(如对具体技术的掌握,动手能力)。例如:对Java、C/C++、C#的掌握,诊断/提高效能的技术,对设备驱动程序(Device Driver)、内核调试器(Kernel Debugger)的掌握;对于某一开发平台的掌握
    2.   积累问题领域的知识和经验(例如:对医疗或金融行业的了解)。第一点和第二点都可以在很多简历上都可以看到,也可以比较容易地检测出来。随着经验的增长,一个工程师可以掌握更广泛、更深入的技术和问题领域的知识
    3.   对通用的软件设计思想和软件工程思想的理解。这一方面就比较虚,什么是好的软件设计思想?什么是好的软件工程思想?一个工程师开了博客,转发了很多别人的文章,这算有思想么?另一个工程师坚持做任何设计都要画UML图,这算有思想么?
    4.   提升职业技能(区别于技术技能)。职业技能包括:自我管理的能力,表达和交流的能力,与人合作的能力,按质按量完成任务的执行力,这些能力在IT行业和其他行业都很重要。
    5.   实际成果。绝大部分软件工程师的工作成果都是可以公开的,你参与的产品用户评价如何,市场占有率如何,对用户有多大价值?你在其中起了什么作用?行胜于言,这些实际的工作结果,是最重要的评价标准。

    成长为一名和合格的软件工程师,还需要加强自己的学习力,这对现阶段的我将是一个漫长的过程。在这个过程中,我要树立正确的学习意识,认真对待每一个程序,尽力提高自己的技能。

        对于这本书,我很认同网上的一个说法:专业、但是不迂腐,很接地气、但是不屌丝,很有情怀。读完前三章使我有了不小的收获,也对这本书起了浓厚的兴趣。

    迷失在灿烂之中 消失在万里晴空
  • 相关阅读:
    web端ip定位
    【树状数组2】洛谷P3368
    【树状数组1】 洛谷P3374
    【割点】洛谷P3388
    【二分图匹配】洛谷P3386
    洛谷P4145 上帝造题的七分钟2 / 花神游历各国
    【线段树2】洛谷P3373
    【线段树1】洛谷P3372
    【乘法逆元】洛谷P3811
    【LCA】洛谷P3379
  • 原文地址:https://www.cnblogs.com/wxy2000/p/11006092.html
Copyright © 2020-2023  润新知