阅读与准备作业

这个作业属于哪个课程

<课程的链接>

这个作业要求在哪里

https://www.cnblogs.com/harry240/p/11469058.html

我在这个课程的目标是

学会以更好的方式开发软件

这个作业在哪个具体方面帮助我实现目标 

规范编程习惯

作业正文 ....    

博客正文

 

其他参考文献 ...

 

 

 

一、介绍自己

   我是17级软件工程的学生。让我介绍自己的话,我会介绍自己的闪光点,我的闪光点是思考的很深入。但是这个闪光点让我的自学能力变得很差,因为老是在不必要的地方花时间思考。所以我的专业技能不是很强,但是我最近对app开发很感兴趣,这也让我花更多的时间去学习这个领域的知识。

   介绍自己当然还要介绍自己的爱好,我唯一与艺术相关的爱好是古诗歌朗诵。所以说我艺术上的造诣还是有待提高的。

二、阅读与思考

  1、当初从专业实用性的角度考虑,软件工程专业就业率最高;符合我的期待,两年的学习让我从对计算机一无所知到懂得其中工作原理;这个专业是我喜欢并且擅长的领域;毕业后我会从事相关的工作,想去北京,那是年轻人追求梦想的地方,想成为管理层人员。

  2、感觉已经具备的网站开发安卓应用开发相关专业知识,代码量应该是上万行;最难的作业是自己开发一款社交软件的 测试版,有很多功能。

我觉得我java、c#这两门主要的语言学得不深,自主学习的能力较弱

  3、我想考研;因为我喜欢思考,在一个问题上想的会比较多,更适合研究和有新的创造:我大三的规划是,因为保研的几率很小,所以对我而言学分绩点都不重要了,我把重心放在专业课学习和复习考研上,并把大部分时间放在数学上;我做的准备仅仅是把大二的兼职丢下了,找了考研数学要用的资料,并且正在自学app开发测试。

三、

1、如何提高软件工程师的核心竞争力?核心竞争力是什么?(第三章软件工程师的成长,p60)

2、为什么要把项目放在TFS上?(这样会存在签入签出的问题)如何解决签入签出的问题?(第11章)

3、开发软件过程中是要把质量还是速度哪个放在第一位?(P235十一章)

4、如何保证软件测试结果是长期影响而不是短期刺激?(p256第十二章)

5、每日构建是什么?它有什么意义?(p235第十一章)

6、如何避免“不分主次,想解决所有依赖问题”这一思维误区?(p48第三章)

 

四、源程序版本管理软件

 1、

SVN是Subversion的简称,是一个开放源代码的版本控制系统,采用了分支管理系统。

Microsoft TFS是一个高可扩展、高可用、高性能、面向互联网的分布式文件系统,主要针对海量的非结构化数据,它构筑在普通的Linux机器集群上,可为外部提供高可靠和高并发的存储访问。

Git是一个分布式的版本控制系统,最初由Linus Torvalds编写,用作Linux内核代码的管理。在推出后,Git在其他项目中也取得了很大的成功,尤其是在Ruby社区中。目前,包括Rubinius、Merb和Bitcoin在内的很多知名项目都是用了Git。Git同样可以被诸如Capistrano和Vlad the Deployer这样的部署工具所使用。

GitHub是一个代码托管平台和开发者社区,开发者可以在Github上创建自己的开源项目并与其他开发者协作编码。创业公司可以用它来托管软件项目,开源项目可以免费托管,私有项目需付费。

  2、优缺点

SVN

缺点:

(1)、 服务器压力太大数据库容量暴增

(2)、 如果不能连接到服务器上基本上不可以工作看上面第二步如果服务器不能连接上就不能提交还原对比等等

(3)、不适合开源开发(开发人数非常非常多但是Google app engine就是用svn的)但是一般集中式管理的有非常明确的权限管理机制(例如分支访问限制)可以实现分层管理从而很好的解决开发人数众多的问题

优点:

(1)、 管理方便逻辑明确符合一般人思维习惯

(2)、 易于管理集中式服务器更能保证安全性

(3)、 代码一致性非常高

(4)、 适合开发人数不多的项目开发

(5)、大部分软件配置管理的大学教材都是使用svn和vss

Microsoft TFS

优点:(1)、它采用了HA架构和平滑扩容,保证了整个文件系统的可用性和扩展性。同时扁平化的数据组织结构,可将文件名映射到文件的物理地址,简化了文件的访问流程,一定程度上为TF提供了良好的读写性能。

(2)、任务版上能将需求、项目进度一览无余,对于小团队而言,比甘特图更有用,集成了项目管理、版本控制、BUG 跟踪,能有效实现 SCRUM,能与 VS 无缝接合

缺点:搭建、维护tfs比较复杂,硬件要求也比较高。

 

GitHub:

优点GitHub是一个非常万能的工具。对于任何大小的项目,他都是理想的工具;他也是伟大的web工作流工具。首先,他可以作为一个版本控制系统和协作工具,用它来发布工作。

 利用GitHub,你可以将项目存档,与其他人分享交流,并让其他开发者帮助你一起完成这个项目。优点在于 ,他支持多人共同完成一个项目,因此你们可以在同一页面对话交流。

        创建自己的项目,并备份,代码不需要保存在本地或者服务器,GitHub做得非常理想。

        学习Git也有很多好处。他被视为一个预先维护过程,你可以按自己的需要恢复、提交出现问题,或者您需要 恢复任何形式的代码,可以避免很多麻烦。Git最好的特性之一是能够跟踪错误,这让使用Github变得更加简 单。Bugs可以公开,你可以通过Github评论,提交错误。在GitHub页面,你可以直接开始,而不需要设置主机或者DNS。

 

 

缺点如果,你是Github使用新手,首先的挑战就是摆正心态——需要不断实践和时间。他可能不是捕捉创意过程和记录创意点子的最佳工具。对于这种特殊功能模拟可以选择LayerVault 或其他相 似工具。

之前,我们已经强调过Github非常适用代码跟踪,但是却不是最好的设计跟踪工具。将图片内容转 化为代码,或者将设计用于产品设置,看起来依旧不是那样顺利。这是由设计者决定的,然而,一些人发现 GUI 有点混乱,选择CLI代替。一些开发人员学习主要使用Git命令 ,这样可以解释为什么他们不太喜欢GUI的原因了。

         稍加练习,命令的学习是不太困难的。然而,你喜欢天天 写命令吗?特别是跟踪项目历史或解决冲突的时候。所以就有了另外一群喜欢GUI的人们。将提交、修改、移 动文件等操作可视化,会有一个更好的体验。而这些,就如之前提到的,需要时间来适应。

         如果,你专门在GIthub上工作,版本控制存储库就值得你拥有,也需要你长期付出。

 

posted @ 2019-09-12 10:13  im-iron_man  阅读(166)  评论(1编辑  收藏  举报