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

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

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

问题三:书中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. easyui的datebox控件如何只要年月不要日谢谢知道的说一下

    例子2015-01 格式easyui-datebox 加上 data-options="formatter:myformatter,parser:myparser"function ...

  2. Intent加强

    Intent是一种运行时绑定(runtime binding)机制,它能在程序运行的过程中连接两个不同的组件.通过Intent,你的程序可以向Android表达某种请求或者意愿,Android会根据意 ...

  3. console.time和console.timeEnd用法

    console.time和console.timeEnd这两个方法可以用来让WEB开发人员测量一个javascript脚本程序执行消耗的时间.随着WEB应用越来越重要,JavaScript的执行性能也 ...

  4. WebService基础入门 CXF(WS + RS)

    一.基本介绍 Web Services是一个软件接口,它描述了一组可以在网络上通过标准化的 XML 消息传递访问的操作.它使用基于 XML 语言的协议来描述要执行的操作或者要与另一个 Web 服务交换 ...

  5. http请求的全过程

    参考资料 http://blog.jobbole.com/106632/ https://www.cnblogs.com/engeng/articles/5959335.html https://ww ...

  6. 查看mysql执行的线程,并杀掉他

    文章转自https://www.cnblogs.com/weiok/p/5672238.html 1.进入mysql/bin目录下输入mysqladmin processlist; 2.启动mysql ...

  7. CVE-2017-5123 分析报告

    系统信息 系统:ubuntu 14.04 64位 内核版本:4.13 (KASLR关闭 但是参考文档一中的哥们已经提到如何绕过:利用对非法地址写的保护) 漏洞背景 CVE-2017-5123是一位葡萄 ...

  8. docker运行tomcat

    1.下载tomcat docker pull tomcat 运行tomcat docker run -it -p 8888:8080 tomcat 查看tomcat内的文件 docker exec - ...

  9. 【Codeforces 86C】Genetic engineering

    Codeforces 86 C 题意:给\(m\)个串,要构造长度为\(n\)的串,而且必须由这些模式串们覆盖(可以重复),问可以构造多少种. 思路:首先构造AC自动机,然后\(dp(i,j,k)\) ...

  10. Android 让图片等比例缩放的三种方法

    方法一:客户端等比例 前提条件:服务器端需要返回原始图片的“宽和高”或者“宽高缩放比例”,客户端要显示的图片的宽或者高只要其一是固定的(例如:高度为200,宽度未知,或者高度为400宽度未知) 在这种 ...