通过这两天时间,我粗读了《构建之法》这本书。老实说,对于这样四百多页的一本书,刚开始把这样的任务当作是一种负担,然而当我开始真正接触它时却被它幽默有趣的风格所深深吸引,它不同于以往学习的教科书晦涩难懂,书中以“阿超”为代表举了很多有趣小例子,读完让人印象深刻,不到一会儿就读了小几十页,同时也让我对软件工程这个概念有了初步的认识。

问题一: 说起来,学习编程也已有两年多的时间,然而回想这段学习,自己似乎从未对编程的内容有过深入的思考,一直以来自己似乎都停留在完成布置任务,无论代码内容如何,只要能达到结果目的即可。读完这本书的目录让我知道,一个完整的软件工程需要很多步骤,它是一个需要整个团队精诚合作所完成的一件事情,每个人的工作都有着相互的依赖性,个人的编程习惯也许能在一时达到某个目的,却也许会因为这样的习惯在后期让整个团队付出很大的代价,那么我们在实际的操作中应当如何使得自己负责的模块不会影响其他模块?应当如何使得自己的模块的质量得到保证呢?

问题二:如何才算得上是一个合格的软件工程师,或者说优秀的东西似乎都具备着一些共同的特质,那么一个合格的软件工程师所写的代码应当都具备哪些特质呢?这些特质该如何融合到我们平时的练习当中去?

问题三:书中P52页提到,“”软件工程师不宜过早的优化,不能过于积极的解决所有依赖性问题”,在平日里写代码时,遇到问题及时解决在最后才不会花费太多精力和代价在代码的改进和优化上,小的工程代码尚且如此,在大一点的软件工程项目中后期岂不是要付出更大代价?

问题四:一个软件的诞生似乎源于用户对于这款软件的需求度,人们在现实社会和生活中遇到各种问题时,需要求助于各种软件,人们的需求往往五花八门。在本书P165页中邹欣老师也曾提到“原来我并不了解海量中国用户,原来真实的用户并不是我想像的那样”。我相信任何一个做软件的程序员一开始都认为自己做的东西是被用户所需求的,所以才会有去设计软件的冲动,只有这样这样自己所做的东西似乎才被赋予了意义,那么做软件的人在做软件前就一定会对这个软件进行需求分析,既然是在做过需求分析后得到的软件,为什么依然存在需求不对称的问题呢,书中提到“不理解为什么有那么多人为了qq上的虚拟形象付钱,现实中的很多人喜欢漂亮和虚荣,因而她们不在乎花点钱打扮自己”,我在想在做软件时有时更重要的也许是这样的“隐性需求”,并不是简单的“用户调查问卷”一类的需求分析所能体现出来的,那么这样的需求分析是否还有必要呢?

问题五:“好的开始,不一定会有好的好的结尾,坏的开始,结果往往会更糟" 对于软件工程这门课程我们都是刚刚开始的学徒,在书中所介绍到的包括软件工程师,项目经理,软件测试人员等等都是软件开发工程中必不可少的关键人员,每个人的分工不同,侧重点也不同,那么作为现在的我们来说侧重点应该放在那里呢? 或者说为了以后更好的完成这些工作,我们现在最应该做好的是什么?

------记于课程的开始

期望自己执着的热情,期待课程后续的内容,但愿在这一学期自己能真正从中学习到些什么……

速读《构建之法》(Build to win)有感的更多相关文章

  1. 学习JAVAWEB第三十七天(读构建之法有感)

    读<构建之法>有感 我今年暑假回去就要升入大二了,在今年的专业分流时,我选择了软件工程专业,起初的想法很简单,做一款优秀的,能拥有大量用户的软件,甚至还想通过自己的软件改变人们的生活.读了 ...

  2. 8th 对软件工程的理解(读构建之法有感)

    对于任何一个学计算机的人来说,软件都不陌生,甚至于一个普通的朝九晚五的上班族,他的每日生活工作也都与软件有着密不可分的关系.然而,程序又是如何从一行行指尖留下的代码,机器存储的数据变成快捷高效的软件的 ...

  3. week1读构建之法-读书笔记

    最开始听见杨老师说邹欣老师这个名字总觉得很熟悉,后来看见博客上老师的头像恍然大悟,原来机缘巧合已经在微博上关注邹老师许久,一直觉得邹老师是个很有意思的人,兴趣一定十分广泛,看了老师的书确实能感觉到邹老 ...

  4. 读着读着《构建之法》(Build To Win) 越精神的白雪儿的思考

    哲学家的宗旨是:我思,故我在 科学家的宗旨是:我发现,故我在 工程师的宗旨是:我构建,故我在 ——<工程学--无尽的前沿> 序言:珍惜角色“人”,注重实践“物” <构建之法>, ...

  5. 201771030106-葛佳诚 实验一 软件工程准备-<初读《构建之法——现代软件工程》有问>

    项目 内容 课程班级博客链接 https://edu.cnblogs.com/campus/xbsf/nwnu2020SE 作业要求链接 https://www.cnblogs.com/nwnu-da ...

  6. Build to win!——获得小黄衫的感想

    UPDATE: 应栋哥要求,上传了无遮挡的正面照(我的内心其实是拒绝的!(ㄒoㄒ)) 一.前言&背景 从大一上C++课程开始,栋哥就开始安利他大三的软工实践课. 时间过得飞快,大学转眼就过去一 ...

  7. 初窥构建之法——记2020BUAA软工个人博客作业

    项目 内容 这个作业属于哪个课程 2020春季计算机学院软件工程(罗杰 任建) 这个作业的要求在哪里 个人博客作业 我在这个课程的目标是 完成一次完整的软件开发经历并以博客的方式记录开发过程的心得掌握 ...

  8. <构建之法>之一至二章

    身在大学,却想起了在高中的生活和初中的生活,特别是初中的生活,为什么这么说呢!因为<构建之法>,看了其中的两章的内容,为什么想到了初中和高中的生活呢,因为在高中和初三的时候看的最多的就是课 ...

  9. <<构建之法>>略读感想

    经过对构建之法这本书的快速阅读和学习,我有以下疑问. 1.对软件工程来说是应该更注重结果和功能的实现还是更注重代码的易读和完整? 2.应该怎样平衡不同用户的不同需求以达到使大多数人满意的目的? 3.应 ...

随机推荐

  1. 网络编程_UDP协议_发送端与接收端

    创建UDP传输的发送端 : 1.建立udp的socket服务   2.将要发送的数据封装到数据包中   3.通过udp的socket服务 将数据包发送出去   4.关闭socket服务(因为调用了系统 ...

  2. 控件_AnalogClock

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools= ...

  3. C++11多线程のfuture,promise,package_task

    一.c++11中可以在调用进程中获取被调进程中的结果,具体用法如下 // threadTest.cpp: 定义控制台应用程序的入口点. // #include "stdafx.h" ...

  4. python第五十一课——__slots

    2.__slots__: 作用:限制对象随意的动态添加属性 举例: class Demo: __slots__ = ('name','age','height','weight') #实例化Demo对 ...

  5. javascript获取指定区间范围随机数的方法

    每天学习一点点 编程PDF电子书.视频教程免费下载:http://www.shitanlife.com/code //获取指定区间范围随机数,包括lowerValue和upperValue funct ...

  6. linked-list-cycle-ii (数学证明)

    题意:略. 这个题最关键的点在于后面,如何找到循环开始的节点. 第一阶段,先用快慢指针找到相遇的节点C.(至于为什么,了解一下欧几里德拓展解决二元不定方程.)A是表头.B是开始循环的位置. 第一次阶段 ...

  7. 从头到尾使用Geth的说明-2-cli可用命令-有2个地方标红,之后查查源码后看看能不能解决

    geth - the go-ethereum command line interface 以太坊命令行接口 格式: geth [options] command [command options] ...

  8. Linux 下的 Redis 安装 && 启动 && 关闭 && 卸载

    转自https://blog.csdn.net/zgf19930504/article/details/51850594 Redis 在Linux 和 在Windows 下的安装是有很大的不同的,和通 ...

  9. slf4j+logback搭建超实用的日志管理模块

    文章转自http://www.2cto.com/kf/201702/536097.html slf4j+logback搭建超实用的日志管理模块(对日志有编号管理):日志功能在服务器端再常见不过了,我们 ...

  10. Python基础(2)——列表、字典、数据运算

    1.列表 #创建列表 name_list = ['alex', 'seven', 'eric'] #或 name_list = list(['alex', 'seven', 'eric']) #访问列 ...