软工个人作业-博客作业-WEEK2

1.是否需要代码规范:
    (1)这些规范都是官僚制度下产生的浪费大家的编程时间、影响人们开发效率, 浪费时间的东西。
        首先来说,从短期上和个体上来看,一个团队的代码风格必然会在一定程度上与个人的代码习惯有所冲突,所以在这个层面上来说,他对个体的开发效率在短期上会有一定影响。
        然而,在宏观上,从长远角度出发,开发一个项目,是一个团队的事,制定一套代码规范会让团队的合作更加高效,更加紧密,因为代码规范的制定会让团队成员更易理解他人的代码,并且能让迭代更加轻松,并且一个好的编码风格也会让个体有所提高。
    (2)我是个艺术家,手艺人,我有自己的规范和原则。
        我认为这句话是正确的,若是真把程序员比作艺术家手艺人,那每个coder必然有自己的规范和原则,在我们进行单独开发时,秉持这些原则无可厚非,然而程序员并不能像艺术家一样始终以一个个体存在着,当他加入团队开发时,就必然不能总凭着自己的性子来我行我素,所以在团队开发时,还是要坚持团队的开发规范和方向原则。
    (3)规范不能强求一律,应该允许很多例外。
        这句话我保持中立态度,因为了解不多。其实我觉得,一个代码规范也是有好坏之分的,这个好坏的评判是在与项目需求的覆盖程度相关的,如果真的是需要大量例外才能支持这个项目实现功能的话,可以说这个代码规范是不合格的。所以,在不必要的时候,即代码规范和功能实现不发生冲突的时候,还是要遵守规范的。
    (4)我擅长制定编码规范,你们听我的就好了。
        代码规范是一个团队所共用,所以应该由一个团队有经验的人员一起制定,这样在大家的代码习惯和需求实现的逻辑上找一个折中的结果。
2.代码复审:
    (1)Does the code work? Does it perform its intended function, the logic is correct etc.
        代码可以正常运行,经过测试没有发现明显的逻辑错误。
    (2)Is all the code easily understood?
        代码还是比较容易读懂的,变量和函数名有实际意义,所以比较容易理解。
        使用了大量库函数,所以功能逻辑也比较清晰。
        中文处理的一些部分写的着实有点复杂,不太容易理解。。。。
    (3)Does it conform to your agreed coding conventions? These will usually cover location of braces, variable and function names, line length, indentations, formatting, and comments.
        代码风格我比较认同,变量名,函数名,常量名有实际意义,又有不同格式,表达式符号之间有空白符,清晰明了。使用驼峰法命名。
    (4)Is there any redundant or duplicate code?
        代码重用率很高,把功能封装成函数,进行调用,减少冗余。
    (5)Is the code as modular as possible?
        做了一定程度上的模块化,然而在面向对象方面做的并不是特别完全,还是可以看出明显的面向过程的编码思想。
    (6)Can any global variables be replaced?
        没有全局变量
    (7)Is there any commented out code?
        有注释掉的代码,是被否定掉的代码,还有一些功能上的说明。。。。还有一些表达情绪的话。。。
    (8)Do loops have a set length and correct termination conditions?
        有,经过测试没有死循环出现。
    (9)Can any of the code be replaced with library functions?
        额。。。对cpp的库不是太熟悉,并没有发现明显的可以用库函数替换的地方。
    (10)Can any logging or debugging code be removed?
        被注释掉了。
    (11)Are all data inputs checked (for the correct type, length, format, and range) and encoded?
        如果-r后的参数要求大于1,-n后的参数要求大于0,否则会报错。
        如果-e -a后的文件名对应的文件不存在,则会报错。
    (12)Where third-party utilities are used, are returning errors being caught?
        没有用到第三方开发库。
    (13)Are output values checked and encoded?
        进行了检验,并按照规定的格式对数据进行了编码。
    (14)Are invalid parameter values handled?
        对参数值和参数名都进行了检测,不会处理没有规定的参数名,对于错误的参数值会进行报错。
    (15)Are all functions commented?
        没有对所有函数进行之注释。
    (16)test
        没有提供单元测试,但是进行了性能测试。

时间: 2024-11-05 00:26:43

软工个人作业-博客作业-WEEK2的相关文章

软工_个人博客作业1

阅读<构建之法>中的问题 关于变量名的问题 在书中我看到了在C等弱类型语言中因为变量语义多样所以需要用“匈牙利命名法”等方法来规范变量的命名.实际在我平时的编程之中,对于变量的命名也有很大的困惑,见到有些同学的拼音首字母命名法等等,我想问一下,在实际的工程运用中,对于变量命名又是怎样处理的呢?有没有一个约定俗称的规范呢?如何才能写出更加工程化的命名方式?这点在书中并没有详细说明. 关于结对编程的问题 在阅读课本之前,我脑海中对于结对编程的概念是两个人分配好任务,然后各自完成.但是在书中介绍的结

软工个人作业-博客作业

一.五个问题: 1.软件开发时,比如web2.0的rest风格架构,前后端完全分离,然而其交接时,很可能出现问题,并且因为完全分离,所以有可能出现开发不同步的问题,前后端的交互耦合,开发同步的问题该如何解决. 2.数据操作,和逻辑操作,实体操作等如何分离解耦. 3.如果有效果的分层解耦,三层框架是什么. 4.过度解耦,或者大规模模块化开发时遇到的依赖冗余问题如何解决. 5.如何在开发成本和收益之间权衡需求,如何判断刚性需求,伪需求. 6.如何在开发过程中设计框架和预留接口使得迭代更加高效,维护更

软工网络15个人阅读作业1

软工网络15个人阅读作业1 Task1:注册个人博客账号 博客园地址:齐畅 http://www.cnblogs.com/qichang/ Task2:注册码云账号 目的:管理你的项目,记录(源码.文档,历次版本变更,bug发现与修复)等信息. 码云地址:https://gitee.com/hudkahfk/ Task3:完成博客-阅读与思考 阅读参考材料,并回答下面几个问题: (1)回想一下你初入大学时对网络工程专业的畅想 当初你是如何做出选择网络工程专业的决定的? 答:听专家意见报的志愿,他

文件服务相关博客作业

nfs和sameba博客作业 博客实践作业: (1) nfs server导出/data/目录: (2) nfs client挂载/data/至本地的/mydata目录:本地的mysqld或mariadb服务的数据目录设置为/mydata, 要求服务能正常启动,且可正常 存储数据 (3) 客户端(lamp)部署wordpress,并让其正常访问:要确保能正常发文章,上传图片: (4) 客户端2(lamp),挂载nfs server导出的文件系统至/var/www/html:验正其wordpres

https的博客作业

博客作业:分别使用httpd-2.2和httpd-2.4实现 1.建立httpd服务,要求: (1) 提供两个基于名称的虚拟主机www1, www2:有单独的错误日志和访问日志: (2) 通过www1的/server-status提供状态信息,且仅允许tom用户访问: (3) www2不允许192.168.0.0/24网络中任意主机访问: 2.为上面的第2个虚拟主机提供https服务: 前提准备: 172.16.1.1测试httpd-2.4,这是centos7系统 172.16.1.2测试htt

C语言博客作业--一二维数组

一.PTA实验作业 题目1:7-2 求整数序列中出现次数最多的数 1. 本题PTA提交列表 2. 设计思路 定义变量n,i,j,max等于0,a[]10用于存放输入的值,b[10]用于存放a[]中各个数有多少个; 输入n的值 i从0开始,每次加1,输入a[i]的值,直到i==n结束循环 i从0开始,判断i是否<n,,进入下一步,每次加一,直到条件不满足 j从0开始,判断j是否<n,,进入下一步,每次加一,直到条件不满足 如果a[i]==a[j],b[i]加一 i从0开始,判断i是否 输出a[j

博客作业1--抽象数据类型

一.作业题目 实验题目 试仿照三元组或复数的抽象数据类型写出有理数抽象数据类型的描述 (有理数是其分子.分母均为整数且分母不为零的分数). 有理数基本运算如下所示: 1.构造有理数R,元素x1,x2分别被赋以分子.分母值 2.销毁有理数R 3.用e(引用类型参数)返回有理数T的分子或分母,当入参i为1时返回分子, i为2是返回分母. 4.将有理数R的分子或分母更改为e,入参i为1时改变分子, i为2是改变分母 5.有理数R1,R2相加,结果存入有理数R3 6.有理数R1,R2相减,结果存入有理数

软工第0次个人作业

一.你为什么选择计算机专业?你认为你的条件如何?和这些博主比呢? 首先说明,在进入大学之前,对于计算机专业的相关问题一无所知,对编程一无所知,对于计算机的理解仅仅存在于玩游戏和瞎捣鼓的层面上,唯一感兴趣或者自己能够想到的问题就是计算机的硬件是如何处理我们的操作指令的,软件又是通过怎样的方式写成的. 抱着这样的观点,以及相比于其他的工科专业,计算机专业给我有一种高大上的感觉,充满科技气息,再加上口耳相传的计算机专业人员在未来一定会发挥重大作用,报酬丰厚等等原因,最终选择了计算机专业,这也是我的第一

第八次个人博客作业

软工课程总结 一.回望开学初对于软件工程课程的想象,回望博客开篇时对于这门课和这学期的期望 对比开课前的我,现在的我写的代码的规范性和可扩展性越来越好了,可以更快更好地完成工作,最主要的是通过结对编程和团队编程学到了如何与他人合作编程,编程过程中与他人的意见出现分歧如何解决,走过整个软件开发的所有过程,受益匪浅.       最开始由于作业的紧张,觉得太占用自己的时间,有想过放弃,但后来还是坚持了下来,随后的结对编程和团队项目,证实了我的决定是正确的,虽然我的贡献不是最大的,但我从项目中学到了很