688
社区成员
发帖
与我相关
我的任务
分享| 这个作业属于哪个课程 | 2023年福大-软件工程实践-W班 |
|---|---|
| 这个作业要求在哪里 | 软件工程实践寒假作业 |
| 这个作业的目标 | 学习Markdown语法;回首过去、立足当下、展望未来;理清思路,规划路线 |
| 其他参考文献 | markdown教程-菜鸟教程、Git学习-菜鸟教程 |


地址:https://gitcode.net/m0_50463671/222000433
因为本人的姐姐在深圳工作,且父母希望我大学毕业后能在姐姐的周边区域工作,便于照应。于是经过和家人亲戚们的共同调研,我们一致认为选择计算机方面的工作在深圳及其周边地区比较容易就业,并且薪资待遇也普遍较高,所以我选择了软件工程专业。
男生肯定很多吧。当初我对软件工程专业的想象大概是大众对程序员的普遍印象——学生们每天都要面对电脑,手速飞快地敲代码,每天苦肝到深更半夜停不下来,脱发严重(事实上好像我真的秃了一块.....)……但是他们能充分发挥出计算机的价值,以键盘为工具创造出心中所想,是某种意义上给我感觉非常帅气、非常艺术的专业!
我的数学可谓黑洞,当初我希望能从认真听讲、按要求完成任务等基本之处做起,尽力提高自己的数学和专业课水平,若有余力,也可以主动去了解拓展一些课外的知识。在开学前我看了许多同专业学长学姐的建议和规划视频,自主学习了一部分c语言相关的知识。立下的FLAG是积极参与各种编程竞赛获得奖项,但来学校实际学习观察后,发现竞赛招募的大都不是零基础萌新,于是并没有如愿拔旗。
![]() | ||
| 第二学期学习进步奖 | |
| 第二学期精神文明建设奖 | |
| C语言、C++、C#、JAVA、JavaScript、HTML、CSS、PHP | |
| Yii2、BootStrap | |
| Dev-C++、Visual Studio、VsCode、Eclipse、Android Studio、IDEA | |
| 10K+ | |
| 该成绩管理系统分为教师登录和学生登录,有不同的权限。 教师管理页面实现了学生信息管理、学生成绩管理、学生成绩统计等主要功能, 学生管理页面实现了查看成绩及教师寄语的功能。 | |
| 开发一个MiniWord文本编辑程序。运用MDI窗体技术实现多文档的编辑,并完成Demo程序中所有菜单栏和工具栏的程序功能。 | |
| 后端页面包含文章管理、评论管理、用户管理和管理员管理页面,文章页面包含创建、修改和按标题或ID对文章排序的功能及按关键字或标签搜索文章的功能;用户管理包含对用户的修改和状态设置功能,管理员管理页面包含创建、修改和对管理员进行权限分配的功能;评论管理包含审核评论、将待审核评论靠前醒目展示,及按文章标题、作者、内容等查找的功能。 前端页面包含浏览文章、按标题、标签筛选文章和,评论文章和展示标签云及最近10条评论等功能。 在基础功能上还增添有URL美化、前后端界面美化、利用缓存技术提高页面访问速度等功能。 | |
Q1.程序员是否有必要为满足小部分人的需求去做软件,或者为软件添加某些功能?
用户需求可谓是软件开发的“根”,抓住根的走向,产品开发的方向才能确立。但用户的需求并不完全等同于用户需求,真正的用户需求是要运用一些具有可行性的方法去深度挖掘、核实其是否真实的。就算确有小众需求,也应该根据四象限法则、二八原则等准则来划分需求优先级,由急到缓的完善产品功能开发。假若只要有用户提出需求,就进行相应开发,最终产品可能会变得臃肿而失去其核心意义。因此我们需要把握核心需求,优先解决主要问题,为了小众需求过多投入精力并不是必要的。
Q2.低层次的问题能依赖工具解决么?
在学习一门语言的初期,一个好的工具能大大提高学习的正面反馈,因此适度依靠工具是有积极意义的,但并不能完全依赖工具,很多小问题是可以通过平时练习时勤加留心就能避免的。从现实就业的角度来说,许多大厂的技术岗都会考察手写代码的能力,避免低层次的问题不失为一种加分项。
Q3.为什么“开源”要设置那么多的协议呢?
开源协议对作者和被分发者都有保障和约束的作用。对作者,它首先有免责和保护其劳动成果的作用,同时也约束了作者公开的源码格式不是经过故意混淆的;对被分发者,它保障了源程序可以衍生、运用于不同场合,同时也约束了被分发者不能肆意滥用、盗用源代码。
协议的设置对解决因开源导致的争议带来依据,规范了人们的行为,也保障了未来软件开源之风的兴盛。
Q4.写博客也会花挺多时间的,如果把这些时间花在写代码上面会不会更好?
我认为定期写博客整理自己所学和思路是很有帮助的,我平时也会在自己的手机上记录一些灵光乍现的理解,即便过了很久我去翻阅时,也能很快记忆起当时的思路。再者,写博客也有助于日后遇到与当时相同的问题时,能快速的找到精确答案。另外,自己的博文也有助于梳理自己的知识体系,查缺补漏,提高学习效率。
Q5.开源项目的商业价值如何体现?
项目开源并不与版权和商业收益对立,很多知名项目都是开源的(如MySql、Android、Qt、Linux),虽然在版权收益上,开源项目远远少于闭源项目,但这些工具、系统的知名度、发展速度、行业话语权和市场占有率带来的收益并不少于闭源。如果不是因为开源,这些项目的完整程度和生态恐怕并不能达到今天的水准。
利用闲暇时间刷算法题,尝试独立做一些小项目,争取在今年秋招能拿到c++后端方面的实习offer。
在完成这门课的寒假作业的过程中,我更正了我曾经“软件=程序”的错误观念,同时也让我认识到了软件开发是包含需求分析、设计、编码、调试、维护这一系列流程的,而非单纯的解应用题。这门实践课让我理解了,软件工程是一套用于提高团队开发效率和软件质量的规范。
希望我能够通过这门课程熟悉并掌握mysql、kafka等中间件在软件开发中的实际应用,对过去专业课加以巩固,并找出目前的欠缺之处。


学妹讲的很清楚很好,对于第二个问题,现在的chatGPT就可以去完成一些简单的编程问题,甚至能自主调用库函数,所以我们可以更需要有自己的一技之长。