201871030108-冯永萍 常用源代码管理工具与开发工具
项目 | 内容 |
---|---|
课程班级播客链接 | https://edu.cnblogs.com/campus/xbsf/2018CST |
这个作业要求链接 | https://www.cnblogs.com/nwnu-daizh/p/14521534.html |
我的课程学习目标 | 完成课程要求的基础上,对软件工程有系统的理解 |
这个作业在哪些方面帮助我实现学习目标 | 让我了解了软件项目源代码常用管理工具和常用集成软件开发工具,为以后做软件项目提供了基础 |
任务1:调研源代码版本管理软件
上网调研目前被广泛使用的基于源代码版本管理软件Git的项目管理工具,如GitHub、Gitlab、Bitbucket 等,比较它们之间的异同(包括但不限于团队协作流程,项目管理等)。
三大基于源代码版本管理软件Git的项目管理工具介绍:
GitHub是git存储库和协作项目开发的首选网站。该系统旨在允许用户轻松创建基于Git的特殊版本控制系统。为什么这么受欢迎?Git通过非线性开发历史的可视化工具和导航工具的帮助,支持流畅的版本合并和分割。现在,GitHub拥有5000多万个开源项目。
GitLab服务也是基于Git版本控制开发的。尽管GitLab功能与其主要竞争对手GitHub类似,但仍有一些主要特点。GitLab有几种不同的形式,如适用于企业的GitLab SAAS,以及用户的个性化解决方案GitLab Community Edition。
BitBucket服务也非常类似于GitHub,但是它的大部分功能也略有不同。BitBucket最适合小型开发团队,随着团队的成长,BitBucket提供了与GitHub和GitLab相比更温和的定价条件。BitBucket还为团队提供了灵活的部署模式。
三者的选择:
* 如果想要一个免费开源的解决方案,GitLab也许比较吸引人;
* 如果正在开发一个开源项目想取得更多的关注,那GitHub毫无疑问是第一选择;
* 如果想要免费的私有库,并在使用Atlassian的其他产品,代码托管在Bitbucket绝对用起来会很爽;
* 如果想要免费私有代码仓库,想获得更多的中文支持或正在使用Coding WebIDE,Coding明显更适合。
部分异同点对比:
名称 | 是否免费 | 是否支持错误跟踪 | 是否支持Git导入 | 是否开源 |
---|---|---|---|---|
GitHub | 服务不完全免费 | 支持 | 支持 | 是 |
GitLab | 免费 | 支持 | 支持 | 是 |
BitBucket | 小团队免费 | 支持 | 否 |
优缺点对比:
GitHub
优点:错误跟踪,快速搜索,社区,共享,协作开发,兼容性,支持Git,SVN,HG,TFS导入
缺点:服务不完全免费,文件大小不能超过100Mb,存储库可以托管信息1Gb
GitLab
优点:免费,在开源许可证下运行,错误跟踪,基于Web的代码编辑,与LDAP(轻量级目录访问协议)集成,允许在Internet上定位和访问各种资源,GitLab EE支持多种LDAP服务和组同步,支持Git导入
缺点:界面相对较慢,存储库常见的技术问题
BitBucket
优点:对于小团队免费(最多5名成员的团队将获得无限数量的免费存储库)、集成的查询管理系统、通过社交媒体和GitHub认证、集成Jira工具、导入现有Git项目、支持Git,CodePlex,Google Code,HG,SourceForge,SVN导入
缺点:不开源、系统不稳定
参考> http://tech.it168.com/a2017/1026/3176/000003176180.shtml
任务2:调研并试用广泛使用的源代码集成开发工具软件(Integrated Development Environment,IDE)
上网调研并试用包括MyElipse、Visual Studio 、HBuilderX、Microsoft Visual Studio(简称VS)、PyCharm、Android studio、NetBeans、IntelliJ IDEA、Code:: Blocks等IDE,结合调研资料和使用体验概括总结以上IDE的功能特色。
1、MyEclipse
MyEclipse是用于Java和J2EE开发的优秀的Eclipse插件集合,具有非常强大的功能和广泛的支持,尤其是对于各种开源产品。MyEclipse可以支持JavaServlet,AJAX,JSP,JSF,Struts,Spring,Hibernate,EJB3,JDBC数据库链接工具和许多其他功能。可以说,MyEclipse是一个独家的Eclipse开发工具,几乎涵盖了所有主流开源产品。MyEclipse是一个功能强大的企业级集成开发环境,它是基于Eclipse开发并具有自己的插件的。它主要用于Java,JavaEE和移动应用程序的开发。在MyEclipse的最新版本中,使用CodeMix的支持也非常广泛,尤其是对于各种开源产品和主流开发框架而言。当前支持语言和框架的开发,例如PHP,Python,Vue,Angular,React,Java和JavaEE。
2、Visual Studio
以2010版为例,Microsoft Visual Studio 2010主要具有以下功能特性:C#4.0中的动态类型和动态编程;多显示器支持;使用Visual Studio 2010的特性支持TDD;支持Office ;Quick Search特性;C++ 0x新特性;IDE增强;使用Visual C++ 2010创建Ribbon界面;新增基于.NET平台的语言F#。
3、HbuliderX
HBuilderX编辑器是DCloud全新推出的一款HTML5的Web开发工具,作为HBuilder下一代的全新编辑器,HBuilderX是编辑器和IDE的完美结合,HBuilderX是HBuilder的下一代产品,体积小巧,启动秒开,默认包包含优秀的字处理能力,创新众多其他编辑器不具备的高效字处理模型。HBuilderX除了对某种语言的语法分析、提示、转到定义、调试,同时加强了对通用文本处理能力,界面更加清爽,拥有比上一代更加有效的快捷键体系。
4、PyCharm
PyCharm是由JetBrains打造的一款Python IDE。PyCharm具备一般Python IDE的功能,比如:调试、语法高亮、项目管理、代码跳转、智能提示、自动完成、单元测试、版本控制等。另外,PyCharm还提供了一些很好的功能用于Django开发,同时支持Google App Engine,更酷的是,PyCharm支持IronPython。
5、Android studio
Android Studio是Android开发的官方IDE。它基于IntelliJ IDEA!目前在版本3中,该工具构建快速且功能丰富。在语言方面,还支持Java, Kotlin和C ++以及NDK。它提供了一些很棒的功能,例如适用于所有Android设备的统一开发环境,广泛的测试工具(如J∪nit和框架),内置的GCP支持等等。它适用于Windows, Mac以及Linux平台。IDE提供了出色的自定义选项,还允许你通过检查APK文件的内容来减小Android应 用程序的大小。它可以免费下载和使用,但需要一次性开发人员许可费,才能将你的应用推送到Google Play商店。
6、NetBeans
NetBeans是Java开发中使用的最古老的IDE之一。目前在8.2版本 上, NetBeans是一个跨平台的IDE,可以很好地与Windows等平台一起使用,Mac,,Linux等。 它对JavaScript,PHP,Groovy等各种语言有很好的支持。它为MySQL, Oracle和PostgreSQL提供了驱动程序的数据库支持。其数据库资源管理器可以轻松创建,修改和删除表和数据库。NetBeans的插件数量也少于Eclipse,但它们的安装和使用非常简单。
NetBeans为Spring, JSF, Hibernate, Swing, JavaFX等框架提供了很好的支持,尽管没有Eclipse那么多。在“编辑支持“方面,它提供了出色的错误检测和智能代码完成。它的调试器和分析器也值得一提, 并增加了使用IDE的乐趣,NetBeans具有良好的文档和社区支持,可供开发人员免费使用。
7、IntelliJ IDEA
IntelliJ是最受欢迎的Java IDE之一。IntelliJ IDEA目前在2018.1.1版本中经过精心设计,旨在最大限度地提高开发人员的工作效率,同时使其成为一种愉快的体验。这个IDE是跨平台的,因此它包含两个版本:社区和最终版。Community Edition适用于JVM和Android上的开发,而最终版则适用于Web和企业应用程序开发。社区版支持Scala, Kotin, Javal以及Git, SVN和CVS等。另一方面,最终版也支持JavaScript和TypeScript, Java EE和Spring, Vaadin, Grails, Play, SQL 数据库和其他框架。
IntelliJ IDEA为调试应用程序提供了极好的支持,粗有许多可能对你有用的插件。有很棒的文档可以帮助你开始使用该工具。
8、Code:: Blocks
Code::Blocks是一个开放源码的全功能的跨平台C/C++集成开发环境。Code::Blocks是开放源码软件。Code::Blocks纯粹的C++语言开发完成,它使用了著名的图形界面库wxWidgets(2.6.2 unicode)版。该IDE开放源码、提供了许多工程模板、支持语法彩色醒目提示、支持插件、具有灵活而强大的配置功能、基于wxWidgets开发。
任务3:撰写任务1、任务2相关内容博客
使用typora进行MarkDown格式博客的本地编辑和实时预览