3121008942
1.软件工程第一次作业
这个作业属于哪个课程 | 2021软件工程 |
---|---|
这个作业要求在哪里 | 作业要求 |
这个作业的目标 | 明确自己的目标,规划未来 |
其他参考文献 | 无 |
目录31210089421.软件工程第一次作业2.评估当前的自己2.1 个人信息2.2 当前值2.2.1 专业水平个人爱好的作品1.C51红外遥控小车。2.基于Numpy库和matplotlib库的化学工业精馏塔理论塔板数和操作温度的估算(半成品)。3.展望未来3.1阅读《构建之法》3.2未来的职业规划3.3软件工程的学习4.思维导图和学习路线附:gitcode代码仓库 |
作业基本信息…
2.评估当前的自己
2.1 个人信息
姓名 | 黄永名 |
---|---|
头像 | |
兴趣 | 睡觉,游戏 |
院校 | 广东工业大学 |
专业 | 制药工程 |
2.2 当前值
2.2.1 专业水平
获奖经历与成果 | 无 |
---|---|
使用语言 | C ,python |
累计代码量 | 5k+ |
开发软件 | python,devC++,keil |
技术栈 | 单片机,嵌入式开发,入门AI |
项目经历 | 没有正式的项目,但有个人爱好的程序作品 |
个人爱好的作品
1.C51红外遥控小车。
简介:在买来的开发板上外加了一个电机驱动芯片和两个电机,一块木板和充电宝组合起来,加上红外遥控器。
看网上教程在单片机内写了红外协议程序驱动电机。原理图能看懂,原理图和PCB设计在学。
C语言读取bmp图的数据内容转数组打印,stm32学完了,但是产出作品需要一段时间。
2.基于Numpy库和matplotlib库的化学工业精馏塔理论塔板数和操作温度的估算(半成品)。
简介:最近在做化工原理课程设计,要下载外国软件,有墙下不了。
就根据理论塔板数的方程和求法写了一个python小脚本,用的是pythonNumpy库和matplotlib库,有bug,没时间改进。
3.展望未来
3.1阅读《构建之法》
问题1:在项目或程序比较复杂的情况下,如何高效率的进行程序理解?
答:较少代码的情况下,高效理解要求程序员本身就有过硬的专业素质。或者就是自己copy一份加注释,找老员工问问不懂的地方,帮助理解。再有就是对着代码,手写一下流程图看看。
问题2:我们在面对开始的需求时可以通过哪些方法增强程序的可扩展性呢?
答:首先是程序结构灵活且层次分明,这是需要认真设计的。
我之前在网上学单片机时,博主就提到了这一点,他将整个程序分成了:底层协议层,基本操作层,用户需求层,主程序代码实现层。当用户需求改变时,我们不会改整个程序的代码,只需将用户需求层改变一下即可。而用户需求层是由基本操作的组合实现的,我们将新的用户需求分解成基本操作函数后,将其组合加入到用户需求层即可。
其次,是良好的注释规范,代码能不复杂就不复杂,如果代码都无法理解到位,那也就无从谈起扩展了。尤其是多人合作,没用统一的规范只会让拓展开发难上加难。
最后是预留拓展空间或者是接口,不要用封闭的思想去写程序,应该用开放,更高思维去设计程序。
问题3:工作时是否应该带着个人、感情驱动的因素?
答:人不可能是完全理性的生物,至少我个人认为如此。而且伟大的进步,也有不少是因为个人情感驱动而误打误撞产生的,如果当初的列文虎克勤勤恳恳在市政工作,空闲时不偷偷研究放大镜的话,或许微生物的发现又将晚几年,也不会有现代如此先进的微生物技术了。
在工作中,恰当地以情感推动工作我认为是有益的,在制作某些功能程序时,我会加一些我个人认为比较有意思的东西,能某种程度上对其他开发者或者使用者有益的东西。或许从情感上也可能是技术上。
问题4:“技能”比“解决问题”更重要吗?
答:我觉得,解决问题更重要一些。在社会生产中,往往是以问题为导向,寻求更好的解决问题的方法。个人技能往往是作为解决问题的基本背景,其个人而言是重要的,但是在更高的层面上看,社会和国家更注重问题的解决。
问题5:注释(包括所有源代码)应只用ASCII字符,不要用中文或其他特殊字符,它们会极大地影响程序的可移植性?
答:这我是不同意的,只用ASCII字符,那不就是只让人用英文编程嘛?外国人要看可以用英文,但是如果只是国人,那大可不必写英文。老机器要是用ASCII还不支持其他编码的话,那该考虑一下换机器了。
3.2未来的职业规划
我很可能不会从事正规的计算机行业,而是计算机与其他行业交织的边缘地带。如果可以的话,我想会是计算机辅助药物设计(CADD),或者是医药及医药器械智能化的领域。考研当然也有想过,尽量会考与计算机与化工的相交领域。因为制药的化工的分支之一,而现代化工是离不开计算机的。
3.3软件工程的学习
1.首先必须是上位机的串口助手的UI界面和程序的实现,应该算是一个小软件,这个我期待很久了,网上的教程也很多,我也刚好有这个需求。
2.给MySQL加一个漂亮的UI界面。
3.如果还有时间的话,学点html语言,给服务器做一个前端网页。
4.思维导图和学习路线
附:gitcode代码仓库
地址:https://gitcode.net/2302_78125335/test
…