第一次作业
这个作业属于哪个课程 | 软件工程 |
这个作业的要求在哪里 | 阅读作业 |
我在这个课程的目标是 | 对软件工程专业的核心课程有一个基础,系统的了解 |
这个作业在哪个具体方面帮助我实现目标 | 通过阅读前辈的故事和通读教材进行初步的理解 |
一、自我介绍
1.我的博客地址:https://www.cnblogs.com/Nauthiz/
2.介绍下自己
大家好,我是2017级软件工程小2班的文宇豪,就我自己看来,我有两个优点,一个是不会积累什么压力,二是能够找到问题的关键节点。
第一个优点可以归结于我的家庭因素和我本人比较没心没肺,第二个优点就完全是因为懒。因为太懒所以更想快点解决必要的事情,时间越少越好,所以需要找到解决问题的关键。
二.阅读与思考
(1)回想一下你初入大学时对软件工程专业的畅想
- 当初你是如何做出选择软件工程专业的决定的?
- 选择这个专业的主要原因有二,一是因为我有着想要去做出有影响力的游戏;二是如果梦想没能实现,也能养活自己。
- 你认为过去两年中接触到的课程是否符合你对软件工程专业的期待,为什么?
- 比较符合,唯一没想到的是,这门学科对数学的要求比我想象得要高。
- 你觉得软件工程是你喜欢的领域吗,它是你擅长的领域吗?
- 毫无疑问,这是我喜欢的领域,当自己独立解决问题,能够完成一些小型项目的时候,带来的成就感是我以往没有体验过的,但它不是我擅长的领域,对于软件工程,我还只是一个初学者。
- 将来你会选择从事软件开发相关的工作吗?是的话给出你想去的城市、公司和岗位,否的话给出原因
- 不出意外的话,会,而且我想要留在成都工作,对公司和岗位还没有清晰的想法。
(2)即将大三的你,对照前人们走过的路和描述未来发展,现在的你
- 自我感觉你已经具备的专业知识、技能、能力有哪些?已经写过的代码量是多少?
- 仅仅对软件工程这个专业有初步的认识,浅显的了解了c语言和c#,独立写一个小项目的能力几乎没有,写过的代码可能也就刚过两千
- 离成为一个合格的软件工程专业本科毕业生,在专业知识、技能、能力上还差距哪些?
- 差距很远,练习量的不足,理解上的不足,缺乏自我完成项目的能力,总之距离成为一个合格的毕业生还有很远的距离。
(3)大三是一个人生选择的十字路口,考研、工作、考公、出国,不同的选择在大三就有不同的努力方向。而无论考研还是工作的每条路径,也有许多不同的分支。
- 对照以上你阅读的前人们的经历,你的选择是什么?
- 在这种选择下,你认为你相比其他同学来说有何优势,有何劣势?
- 针对你的选择,你给自己的大三设定的规划安排是什么?
- 博文D[1]的作者提到“掌握好专业基础知识是你以后进一步学习的前提”,这与我的想法是一致的,没学会走就想学飞,一定会摔得很惨。大三的我或许会准备去找工作,
- 也可能会准备考研继续深造,我没有考虑过,但首先我想要先打牢基础,做好准备。我相信自己的学习能力,在准备考研的同时大三也会寻找实习的机会,学以致用。
- [1] https://www.cnblogs.com/xiaozhi_5638/p/4485805.html
三、提有质量的问题
1.第三章p60页中第四问“学什么,怎么学,核心竞争力是什么?”下面的链接http://www.zhihu.com/question/27180582中用户池建强提到“以最小的代价解决问题!知行合一,方可无敌于天下。” 如何才能做到知行合一。
2.第五章p82中提到主治医师模式在一些学校的软工课上往往退化为“一个学生干活,其余学生跟着打酱油”,如何避免一个团队中能力差异过大导致其余人员难以起到作用。
3.第八章p157-158中,为了获取用户需求,提到了用户调查问卷。如何让问卷调查更轻松的被大众接受,减小问卷调查收到的干扰,提高问卷调查的可靠性和稳定性。
4.第十二章p253中提到“用户需要帮助,但是用户没有那么笨”。如何将帮助或者引导的程度设计得恰到好处,满足用户需求。
5.第九章p198中提到了一个来自微软的故事,在用户没有要求的情况下,还有必要添加上自己认为不错的功能吗。
四.了解和调查源程序版本管理工具
Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
(资料来源:百度百科)
GitHub是一个非常万能的工具。对于任何大小的项目,他都是理想的工具;他也是伟大的web工作流工具。首先,他可以作为一个版本控制系统和协作工具,用它来发布工作。
利用GitHub,你可以将项目存档,与其他人分享交流,并让其他开发者帮助你一起完成这个项目。优点在于,他支持多人共同完成一个项目,因此你们可以在同一页面对话交流。
创建自己的项目,并备份,代码不需要保存在本地或者服务器,GitHub做得非常理想。
学习Git也有很多好处。他被视为一个预先维护过程,你可以按自己的需要恢复、提交出现问题,或者您需要恢复任何形式的代码,可以避免很多麻烦。Git最好的特性之一是能够跟踪错误,这让使用Github变得更加简单。Bugs可以公开,你可以通过Github评论,提交错误。
在GitHub页面,你可以直接开始,而不需要设置主机或者DNS。
缺点:
如果,你是Github使用新手,首先的挑战就是摆正心态——需要不断实践和时间。
他可能不是捕捉创意过程和记录创意点子的最佳工具。对于这种特殊功能模拟可以选择LayerVault 或其他相似工具。之前,我们已经强调过Github非常适用代码跟踪,但是却不是最好的设计跟踪工具。将图片内容转化为代码,或者将设计用于产品设置,看起来依旧不是那样顺利。
这是由设计者决定的,然而,一些人发现 GUI 有点混乱,选择CLI代替。一些开发人员学习主要使用Git命令,这样可以解释为什么他们不太喜欢GUI的原因了。稍加练习,命令的学习是不太困难的。然而,你喜欢天天写命令吗?特别是跟踪项目历史或解决冲突的时候。所以就有了另外一群喜欢GUI的人们。将提交、修改、移动文件等操作可视化,会有一个更好的体验。而这些,就如之前提到的,需要时间来适应。
如果,你专门在GIthub上工作,版本控制存储库就值得你拥有,也需要你长期付出。
Trac是一个为软件开发项目需要而集成了Wiki和问题跟踪管理系统的应用平台,是一个开源软件应用。
(资料来源:管理软件的优缺点)
优点:Trac做一个SCM配置管理平台,意味着它有良好的扩充性
Trac的权限体系是比较完备的设计
非常灵活,可以随心所欲的定制,可以和TortoiseSVN集成。
缺点:不支持多项目,
需求和缺陷没有分离,
用 wiki 来替代 Word 等工具编写文档对于产品策划来说门槛太高了,
中文化不完整,美术人员接触起来困难重重,
不显示中文名,本地化做得很差,
核心功能很少,不安装插件基本上没法用。