读《构建之法》有感
我今年暑假回去就要升入大二了,在今年的专业分流时,我选择了软件工程专业,起初的想法很简单,做一款优秀的,能拥有大量用户的软件,甚至还想通过自己的软件改变人们的生活。读了构建之法后,我发现并不是那么的简单。
我看了构建之法后,才知道了程序=算法+数据结构,软件=程序+软件工程的概念,这打破了我以往对软件的认知,做一款好的软件,要熟练的掌握算法和数据结构,学会从工程的角度思考问题。还学会了一个重要思想,做中学,当你真正上手一个项目的同时你会发现,你有不会的技术,你更有没见过的技术,你不可能等学完所有的技术再去做项目,什么不会学什么,这不像期末考试一样,拿来一张卷子,让你做足了准备去答题,对于软件工程的学生来说,凭借试卷来毕业是不可能的,重要的是能做多少项目,掌握多少技术,这是关键,以后我一定要摆脱试卷考试的思想,始终有做工程的观念。
其实书中的一些讲解我现在的理解还不是那么深刻,像软件设计流程,毕竟我还没有真正意义上的完成一个项目
还没接触过软件开发,软件需求分析,软件设计,软件构造,软件测试等。
想要成为一名优秀的软件工程师,代码量是一定要保证的,代码敲的少,你见过的bug就少,甚至连软件开发工具都用不熟练,这是绝对不行的,敲代码不能没有逻辑的敲,要分析完之后,做一个合理的分解,这样的思想同样适用于软件开发,前端后端,dao层,service层,三层架构,我觉得这都是拆分并且再组合的思想,这样才能让软件设计的思路更加的清晰,而不是一锅粥的去乱写代码,这其实就是算法思想,设计一个最优流程去完成某件事。
书中还讲了团队的重要性,这是非常必要的,因为一款优秀的软件不可能由一个人开发,软件团队可以大大加快开发速度,解决更多的bug,不断维护软件,团队的交流就显得十分重要,但现在我的认识还不是太深,因为没有组建过团队,不明白团队开发的流程,我想在今后的日子里我会慢慢体会到团队的重要性。
掌握熟练的算法与数据结构,学会软件工程,带着做中学的思想,与软件团队的人进行良好的沟通,不断的写代码,总结,写博客,改bug,不断使自己学习新的技术,向着成为一名优秀的软件工程的目标不断前进。做一个小小的憧憬,将来中国乃至世界,一定会有人使用着我和团队成员们开发的优秀的软件,用户必将有着良好的体验,我们的软件一定会在某个方面改变着人们的生活。

学习JAVAWEB第三十七天(读构建之法有感)的更多相关文章

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

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

  2. 2nd 阅读构建之法有感

    阅读构建之法有感 利用这一周的时间,我大致了解构建之法一书,这本书带我走进了一个全新的领域.它让我以一种新的视角去了解软件产业的发展和工作,领略软件工程的独特魅力,更给出了简单易懂的方式去理解何为软件 ...

  3. Dynamic CRM 2013学习笔记(三十七)自定义审批流7 - 初始化(整套审批流下载、安装)

    前面介绍了自定义审批流的配置.使用,这篇介绍下如何进行初始化. 一. 下载 从下面的地址下载整个审批流: http://yunpan.cn/cZ5Rdx5HCt3VF 下载完后,一共有三块内容: 二. ...

  4. C# Lambda 表达式学习之(三):动态构建类似于 c => c.Age == null || c.Age > 18 的表达式

    可能你还感兴趣: 1. C# Lambda 表达式学习之(一):得到一个类的字段(Field)或属性(Property)名,强类型得到 2. C# Lambda 表达式学习之(二):LambdaExp ...

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

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

  6. [extjs5学习笔记]第三十七节 Extjs6预览版都有神马新东西

    本文在微信公众号文章地址:微信公众号文章地址 本文地址:http://blog.csdn.net/sushengmiyan/article/details/45190485 [TOC] 在Ext JS ...

  7. 学习JAVAWEB第三天

    ## 数据库的设计· 1. 多表之间的关系 1. 分类: 1. 一对一(了解): * 如:人和身份证 * 分析:一个人只有一个身份证,一个身份证只能对应一个人 2. 一对多(多对一): * 如:部门和 ...

  8. Unity3D学习笔记(三十七):顶点偏移和溶解

    顶点偏移 沿向量方向偏移,沿自身坐标系方向偏移 沿法线方向偏移,球体放大,立方体拆分 Shader "Lesson/VFVertOffsetVertex" { Properties ...

  9. 【WPF学习】第三十七章 触发器

    WPF中有个主题,就是以声明方式扩展代码的功能.当使用样式.资源或数据绑定时,将发现即使不使用代码,也能完成不少工作. 触发器是另一个实现这种功能的例子.使用触发器,可自动完成简单的样式改变,而这通常 ...

随机推荐

  1. 【LeetCode】409. Longest Palindrome 解题报告(Python & C++)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 方法一:字典统计次数 方法二:HashSet 方法三 ...

  2. C++ switch 语句的用法

    C++ 判断 一个 switch 语句允许测试一个变量等于多个值时的情况.每个值称为一个 case,且被测试的变量会对每个 switch case 进行检查. C++ 中 switch 语句的语法: ...

  3. Certified Adversarial Robustness via Randomized Smoothing

    目录 概 主要内容 定理1 代码 Cohen J., Rosenfeld E., Kolter J. Certified Adversarial Robustness via Randomized S ...

  4. Python Revisited Day 08 (高级程序设计技术)

    目录 8.1 过程型程序设计进阶 8.1.1 使用字典进行分支 8.1.2 生成器表达式与函数 8.1.3 动态代码执行与动态导入 动态程序设计与内省函数(表) 动态代码执行 eval(), exec ...

  5. uniapp滑动操作

    <view @touchmove="handletouchmove" @touchstart="handletouchstart" @touchend=& ...

  6. <数据结构>图的最短路径问题

    目录 最短路径问题 Dijstra算法:中介点优化 基本步骤 伪代码 在实现过程中的关键问题 代码实现 邻接矩阵版 邻接表版 时间复杂度:O(VlogV+E) 算法存在的问题:存在负权边时会失效 Be ...

  7. 【C#】C#中使用GDAL3(三):Windows下编译插件驱动

    转载请注明原文地址:https://www.cnblogs.com/litou/p/15720236.html 本文为<C#中使用GDAL3>的第三篇,总目录地址:https://www. ...

  8. Java练习小题_猴子吃桃问题分别用for循环和while循环实现程序。

    要求说明: 猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个.以后每天早上都吃了前一天剩下的一半零一个.到第10天早上想再吃时, ...

  9. MongoDB分片集群机制及原理

    1. MongoDB常见的部署架构 * 单机版 * 复制集 * 分片集群 2. 为什么要使用分片集群 * 数据容量日益增大,访问性能日渐下降,怎么破? * 新品上线异常火爆,如何支撑更多用户并发? * ...

  10. Java 获取客户端浏览器中的语言设置

    获取客户端的首选语言 javax.servlet.ServletRequest.getLocale() 根据Accept-Language请求头返回客户端的首选语言.如果客户端请求没有Accept-L ...