587
社区成员
这个作业属于哪个课程 | <软件工程-23年春季学期> |
---|---|
这个作业要求在哪里 | <软件工程实践寒假作业> |
这个作业的目标 | <准备工作、回首过去、立足当下、展望未来、学习路线> |
其他参考文献 | 《构建之法》 |
从小对程序有些兴趣,捣鼓ROOT开修改器,换过金山打字的文本文件。初中
被忽悠参加了学校的信息奥赛班学C++,去过两次NOIP比赛。后来选专业时都传计算机类是热门专业,我本身对硬件没什么兴趣,于是很自然地选了软件工程。
当初认为写程序应该是挺轻松快乐的事情,并且程序员应该很清楚程序的运行情况,有种运筹帷幄的感觉,想象着跟学校课程学一阵应该就能进行简单自用程序的开发。
希望能充分掌握课程内容,并且可以腾出时间和精力自学一些感兴趣的技术比如python爬虫。当时特意为一些课程准备了笔记本,除了数学物理,还记了一些常用编程指令,不过后来这些记指令的本子都荒废了,现在的方案就是用的时候上网查。刚入学不久有西二的学长来宣传,我和舍友也报名了,但是最终跟不上进度没能加入。
个人简历 | ||
---|---|---|
昵称 | hyf | |
出生年月 | 2001.11 | |
爱好 | 电子游戏、音乐、小说 | |
专业水平 | ||
编程语言 | C、C++、Java、C#、HTML、CSS、JavaScript、PHP、XML | |
技术框架 | Yii2 | |
开发软件 | Dev-C++、Visual Studio Code、Visual Studio、Android Studio、Eclipse | |
累计代码量 | 15k+行 | |
项目经历 | ||
C++大整数类 | 该项目使用C++实现一个存储长整数的类,支持四则运算和取模。该项目由我独立编写 | |
工资管理系统 | 该项目是使用Java和MySQL数据库开发的简易管理系统。员工登录后查看工资,管理员登录后可操作员工数据。我在项目中负责数据库设计,后端数据库连接和部分前端GUI设计 | |
基于Yii2的博客系统 | 该项目使用HTML、CSS、PHP等语言实现一个博客系统,结合Apache和phpMyAdmin数据库运行。 网站前后台分离,前台对用户展示文章,评论,标签等,还为用户提供了评论点赞功能。 网站后台为管理员提供修改文章,用户,审核评论等功能,并为管理员设置了不同角色用于区分不同管理员的权限。 该项目由我个人根据老师提供的教程自Yii2框架修改而成。 |
A1:书中写到"软件的行为和用户的期望值不一样,就叫做 Bug"。但我认为,用户角度和开发者角度是很不一样的,用户发现软件与期望不一致,但开发者认为软件运行正常时,观点的分歧就产生了。我的看法是偏向开发者的,即开发者认为程序运行逻辑出错的时候,才是程序的Bug,但开发者要重视用户的反馈,视情况调整程序。
A2:我认同单元测试由最熟悉代码的作者写。测试用例应该是针对性编写的,但即使如此也不能保证100%正确,对答者提出的先准备一部分样例,然后根据具体的覆盖情况,结合源代码补充一部分样例我也认同,可以进一步提高测试结果的准确率。
A3:我个人认为“广”一点好,如果掌握的知识比较广泛对团队协作能起到很好的协调作用,但一个团队的组成应是兼顾“广”和“专”,如果所有成员都没有深度的技术方向,在开发的时候就会遇到很多技术问题,如果所有成员都只专注一个方向,那各部分之间的协调组合应该会比较生疏。
A4:不完全同意,我认为应该视情况而定。比如小规模的课程作业,在成员不擅长英语并且使用编码统一时中文注释不影响项目的移植,但是如果参加的项目有广泛、持续地传递,维护,就要考虑到部分人员的编码问题,此时使用ASCII更为合理。
A5:应该被修复,虽然有流传“程序能跑就行”,“牵一发而动全身”的摆烂说法,但我现在认为开发者应该对程序有很强的掌握能力,bug可能影响到后续的开发,应尽快把程序修复成无bug的稳定状态。
对于问题中提到的玩家以bug发掘新玩法和不合理的读取过程,我认为开发者要关注用户体验,修改影响用户体验的部分,修复bug后也可以为用户制作新的模式。
目前的打算是争取校招,尽快参加开发积累经验,和最新,常用技术接轨。
目前为止我和身边大部分同学都几乎没有比较正式,大型的开发经验,我的期望是通过本课程锻炼我的开发能力和协作能力,为将来打下基础。经查阅我发现.net方向竞争相对少,而且C#,C++比较多地在游戏开发中使用,所以我希望能学习这方面的内容。
bug可能影响到后续的开发,应尽快把程序修复成无bug的稳定状态。
一个相对复杂的软件,可以做到无bug么?