首页 > 其他分享 >构建之法三四章阅读笔记

构建之法三四章阅读笔记

时间:2023-03-07 13:25:00浏览次数:31  
标签:三四 复审 软件开发 错误 代码 自我 笔记 构建 软件

第三章 软件工程师的成长

3.1 个人能力的衡量与发展

①软件工程包括了开发、运用、维护软件的过程中的很多技术、做法、习惯和思想。软件工程把这些相关的技术和过程统一到一个体系中,叫“软件开发流程”,软件开发流程的目的是为了提高软件开发、运营和维护的效率,以及提升用户满意度、软件的可靠性和可维护性。

②初级软件工程师的成长包括以下几种:

(1)积累软件开发相关的知识,提升技术技能(如对具体技术的掌握,动手能力)。例如:对JAVA、C/C++、C#的掌握,诊断/提高效能的技术,对设备驱动程序、内核调试器的掌握,对于某一开发平台的掌握

(2)积累问题领域的知识和经验(例如对医疗或金融行业的了解)

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

(4)提升职业技能(区别于技术技能),包括:自我管理的能力、表达交流的能力、与人合作的能力、按质按量完成任务的执行力

(5)实际成果——最重要的评价标准

3.2 软件工程师的职业发展

自我评估,自我评价清单:

软件工程师能力自我评价表

第四章 两人合作

4.1 代码规范

包括代码风格规范和代码设计规范

4.2 代码风格规范

代码风格原则:简明、易读、无二异性

缩进:4个空格,而不是TAB

行宽:限定为100字符

括号

断行与空白的{}行

分行

命名:匈牙利命名法

下划线:分隔变量名字中的作用域标注和变量语义

大小写(Pascal形式和Camel形式)

注释

4.3 代码设计规范

函数:只做一件事,并且要做好

goto:有助于程序逻辑的清晰体现

错误处理:参数处理、断言

类的处理

4.4 代码复审

①形式:自我复审、同伴复审、团队复审

②目的:找出代码错误、发现逻辑错误、发现算法错误、发现潜在的错误和回归性错误、发现可能需要改进的地方、传授经验

③代码复审后把记录整理出来:

(1)更正明显的错误

(2)记录无法很快更正的错误

(3)把所有的错误记在自己的一个“我常犯的错误”表中,作为以后自我复审的第一步

4.5 结对编程

①角色:

驾驶员:控制键盘输入

领航员:起到领航、提醒的作用

②好处:(1)在开发层次,可以提供更好的设计质量和代码质量,两人合作解决问题的能力更强。

(2)对开发人员,带来更多的信心,高质量的产出带来更高的满足感。

(3)企业管理层次上,有效地交流,相互学习和传递经验,分享知识,取得更高的投入产出比。

标签:三四,复审,软件开发,错误,代码,自我,笔记,构建,软件
From: https://www.cnblogs.com/lmyy/p/17187779.html

相关文章

  • 构建之法一二章阅读笔记
    第一章概论在这一章中,作者为我们介绍了一些关于软件工程的基本知识。①软件=程序+软件工程:正是因为对软件开发活动(构建管理、源代码管理、软件设计、软件测试、项目管理......
  • 构建之法五六章阅读笔记
    第五章团队和流程5.2软件团队的模式主治医师模式、明星模式、社区模式、业余剧团模式、秘密团队、特工团队、交响乐团模式、爵士乐模式、功能团队模式、官僚模式5.3......
  • 性能测试—笔记
     性能测试:模拟用户负载测试系统在负载情况下,系统的响应时间,吞吐量等指标是否满足性能要求性能测试在系统测试同一阶段基于单元测试,集成测试,功能测试都完成的基础上,站在用......
  • python-unittest(部分笔记)
    自带的单元测试框架:创建一个类,必须继承单元测试用例的类——(unittest.TestCase)单元测试的两部分: ①代码级别的功能验证          ②逻辑覆盖单元测试框架......
  • python_selenium(部分笔记)
    什么是自动化?自动化就是以人力驱动的测试行为转化为机械执行的一种过程目的:节省人力,时间或者硬件资源,提高测试效率哪些场景下适合做自动化?1,任务测试明确,不会频繁变动2,每日......
  • python—基础知识(部分笔记)
    命名注释快捷键变量名复制运算格式化字符   ①:%s格式化字符串   ②:%d格式化整数   ③:%f格式化浮点数字   ④:format()转义字符:\n  \t算术运算符:%取余......
  • pytest-笔记
    pytest的固件   模块级别   类级别   函数级别   方法级别setup_module(),teardown_module():(模块级别)一前一后,必须写成声明的函数,不能加self,可以实现整个......
  • requests-笔记
    第一个函数requests.request()post请求 data=""(字典或者元组的列表)get请求params=""(字典,元组的列表)服务器不支持json传入数据,headers来设置请求头信息,(字典的形式传入)co......
  • 接口测试—笔记
    fiddler监听端口为:8888HTTP:从万维网服务器传输超文本到本地浏览器的传送的传输协议tcp/ip协议族的四个层级应用层:HTTP/telent/ftp等传输层:tcp/udp网络层:ip/icmp/igmp链路......
  • 斜率优化学习笔记
    P3195[HNOI2008]玩具装箱容易推出式子\(dp[i]=min(dp[i],dp[j]+(i-j-1+s[i]-s[j]-L)^2)\)故设\(A[i]=i+s[i]-L-1\)(与\(j\)无关的项)\(B[i]=i+s[i]\)故如果\(dp......