软件工程师的成长

  我在上大学之前,对于软件工程师之类并无概念,并且高初中的电脑课也从未提及过写代码之类的东西,更多的都是一些教一些办公软件的使用(笑,明明电脑课总是因为老师“有事”变成其他课,根本就没上过几节吧),来到大学后得知一些同学高中就开始搞各种竞赛后,我感到十分惊讶,什么,从小热爱学习XX,一路坚持,最终成为XX大师的人小说以外真的有啊。大学之后的课余时间更是鲜有与软件工程相挂钩的事情,用一句话概括,就是过着这些博主批判对象的生活,十分尴尬。选这个课就是觉得应该做出些改变了,然而在第一次作业就尴尬了,说实话第一次作业我先前还真写过,没错,就是地铁规划,一模一样的题目,于是想当然得觉得很简单,没有好好构思就直接动手,然后就出现了BUG调了很长时间。。然而具体的改变应该做些什么,还是不甚确定,希望能够在这学期中找明自己的道路。

Add:

   关于他们的个人成长这里我作为文章中批判的对象看的着实缺乏实感,难以讲出什么感想。但这些经历让我切实感受到了读书的分量,作者的专业书籍的阅读量,着实令我震惊。我上大学之初便跟随C课程老师的推荐买下了poj上的那本书,并计划当时那个学期读完练完,然而每次拿起都是一时热情,一遇到各科作业等各种事情暂时放下后,下次拿起就是很长一段时间之后了。直至今日书还很新,以至于卖给学弟都没问题的程度,那些读了几十本书,自己动手写了诸多游戏的人的经历让我感到着实羞愧不已。然而即便是课本,上课的教材,也鲜有在课程结束之后再次拿起。平时看书倒是看得挺挺多,可都是闲书,说来惭愧,上大学后在图书馆借的最多的书是闲书。至于未来发展变数太多,不好妄下定论,不过捏他一句文中的话,磐石方能筑高台,现阶段先安心学习,多读书,增强自己的实力,以后的事情在慢慢考虑吧。

General

  • Does the code work? Does it perform its intended function, the logic is correct etc.答:存在一些问题,如

  • Is all the code easily understood?

  Yes

  • 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.

  Yes

  • Is there any redundant or duplicate code?

  No.

  • Is the code as modular as possible?

  No.

  • Can any global variables be replaced?

  No.

  • Is there any commented out code?

  No.

  • Do loops have a set length and correct termination conditions?

  No.

  • Can any of the code be replaced with library functions?

  No.

  • Can any logging or debugging code be removed?

  No.

Security

  • Are all data inputs checked (for the correct type, length, format, and range) and encoded?

  Yes.

  • Where third-party utilities are used, are returning errors being caught?

  No.

  • Are output values checked and encoded?

  Yes.

  • Are invalid parameter values handled?

  Yes.

Documentation

  • Do comments exist and describe the intent of the code?

  No.

  • Are all functions commented?

  No.

  • Is any unusual behavior or edge-case handling described?

  No.

  • Is the use and function of third-party libraries documented?

  No.

  • Are data structures and units of measurement explained?

  No.

  • Is there any incomplete code? If so, should it be removed or flagged with a suitable marker like ‘TODO’?

  No.

Testing

  • Is the code testable? i.e. don’t add too many or hide dependencies, unable to initialize objects, test frameworks can use methods etc.

  Yes.

  • Do tests exist and are they comprehensive? i.e. has at least your agreed on code coverage.

  No.

  • Do unit tests actually test that the code is performing the intended functionality?

  No.

  • Are arrays checked for ‘out-of-bound’ errors?

  No.

  • Could any test code be replaced with the use of an existing API?

  No.

个人作业-Week3:代码复审的更多相关文章

  1. 个人作业week3——代码复审

    1.     软件工程师的成长 感想 看了这么多博客,收获颇丰.一方面是对大牛们的计算机之路有了一定的了解,另一方面还是态度最重要,或者说用不用功最重要.这些博客里好些都是九几年或者零几年就开始学习编 ...

  2. 个人博客作业week2——代码复审

    1.代码规范 这些规范都是官僚制度下产生的浪费大家的编程时间.影响人们开发效率, 浪费时间的东西. 代码规范并不是从官僚制度下产生,它是为了提高项目团队开发效率而产生的一种工具,能够极大的增强代码可读 ...

  3. [2017BUAA软工]第二次博客作业:代码复审

    〇.comment链接 https://github.com/hanayashiki/Sudoku/issues/1 一.代码复审 1.概要部分 (1)代码能符合需求和规格说明么? 经测试,对于合法输 ...

  4. 个人作业 - Week2 - 代码复审

    代码复审Check List 概要部分 代码能符合需求和规格说明么? 能完成1~1000000个数独的求解与生成,并能处理异常输入,满足需求. 代码设计是否有周全的考虑? 为输入单独开设了一个输入检测 ...

  5. 作业三: 代码规范、代码复审、PSP

    分) 对于是否需要有代码规范,请考虑下列论点并反驳/支持: 这些规范都是官僚制度下产生的浪费大家的编程时间.影响人们开发效率, 浪费时间的东西. 我是个艺术家,手艺人,我有自己的规范和原则. 规范不能 ...

  6. 作业三 代码规范 代码复审 PSP

    1.是否需要有代码规范(5分) 对于是否需要有代码规范,请考虑下列论点并反驳/支持: 1这些规范都是官僚制度下产生的浪费大家的编程时间.影响人们开发效率, 浪费时间的东西. 反对.我并不认为代码规范都 ...

  7. 个人作业Week 2 ----------代码的规范和代码复审

    1.是否需要有代码规范 从个人理解的角度出发,我认为代码规范还可以细分为代码的风格还有代码的结构设计(就好比排版一类的) 以前在上C语言课程的时候就看到过,老师会在打“{”的时候进行一个换行,但是有些 ...

  8. 个人博客作业Week2(代码规范,代码复审)

    Q:是否需要有代码规范 首先我们来搞清楚什么是“代码规范”,它和“代码风格”又有什么关系.依据个人的审美角度,我可能更喜欢在函数与函数之间空出一行,可能在命名习惯和代码注释上更加的internatio ...

  9. 作业三:代码规范、代码复审、PSP

    一.代码规范 我认为我们编写的代码都需要进行规范的操作,因为如果为了图省事情或者为了减少时间去完成这个编程.在最后检验的时候就会出现一些警告,导致你这次编程的代码出现问题,当出现问题的时候你在回头去检 ...

  10. 作业三(代码规范、代码复审、PSP)

    1.代码规范: 我支持代码要有规范,理由如下. (1).艺术是一个很带有个人风格的学科,天马行空才能凸显出自己的价值.但不要忘了,会艺术的不是生下来就会艺术, 他也需要按照前辈的步骤一步一步的学习基础 ...

随机推荐

  1. java泛型基础

    泛型是Java SE 1.5的新特性, 泛型的本质是参数化类型, 也就是说所操作的数据类型被指定为一个参数. 这种参数类型可以用在类.接口和方法的创建中, 分别称为泛型类.泛型接口.泛型方法.  Ja ...

  2. ABP Zero示例项目登录报错“Empty or invalid anti forgery header token.”问题解决

    ABP Zero项目,登录时出现如图"Empty or invalid anti forgery header token."错误提示的解决方法: 在 WebModule.cs的P ...

  3. 详细介绍Mysql各种存储引擎的特性以及如何选择存储引擎

    最近业务上有要求,要实现类似oracle 的dblink   linux版本 Server version: 5.6.28-0ubuntu0.14.04.1 (Ubuntu) 修改配置文件 /etc/ ...

  4. js url.slice(star,end) url.lastIndexOf('/') + 1, -4

    var url = '"http://60.195.252.25:15518/20151228/XXSX/作三角形的高.mp4")' document.title = url.sl ...

  5. xmlHttp.readyState的五种状态

    自己简单的总结一下 深入的了解可以看其他道友的 O(∩_∩)O readyState有五种可能的值: 0 (未初始化): (XMLHttpRequest)对象已经创建,但还没有调用open()方法. ...

  6. 在 Debian 上安装 SQL Server vNext CTP1

    微软在开源 .NET Framework 之后,相继推出了跨平台的编辑器 Visual Studio Code,跨平台的 SQL Server 数据库 SQL Server vNext,Visual ...

  7. iOS角度与弧度转换

    在iOS中图片的旋转单位为弧度而不是角度,所以经常会在两者之间进行转换 弧度转角度 #define RADIANS_TO_DEGREES(radians) ((radians) * (180.0 / ...

  8. Visual Studio 2013 Preview 高清多图先睹为快

    Visual Studio 2013 Preview已经发布.大家可以下载试用了哦: 选项加载明显比之前版本要快很多.

  9. T-SQL 实现行转列

    问题: 我正在寻找一种有效的方式将行转换为SQL服务器中的列 例如,通过下表如何构建出预期结果表. Id  Value   ColumnName 1   John    FirstName 2   2 ...

  10. [MySQL性能优化系列]巧用索引

    1. 普通青年的索引使用方式 假设我们有一个用户表 tb_user,内容如下: name age sex jack 22 男 rose 21 女 tom 20 男 ... ... ... 执行SQL语 ...