201871030118-雷云云 常用源代码管理工具与开发工具
项目 | 内容 |
---|---|
班级博客链接 | https://edu.cnblogs.com/campus/xbsf/2018CST |
这个作业要求链接 | https://www.cnblogs.com/nwnu-daizh |
我的学习目标 | (1)通过网上查阅资料了解软件项目常用管理工具并了解它们之间有什么不同。 (2)了解软件项目源代码常用集成开发软件工具。 (3)学习使用typora软件撰写博客。 |
这个作业在哪些方面帮助我实现学习目标 | (1)了解源代码常用管理工具和常用集成开发软件工具对代码的编写和管理更加方便和高效。 (2)学习使用typroa进行MarkDown格式离线编写博客,方便博客的编写。 |
任务1:调研源代码版本管理软件
git的项目管理工具:
-
1.GitHub
GitHub是一个面向开源及私有软件项目的托管平台,因为只支持
git
作为唯一的版本库格式进行托管,故名GitHub。简单来说,GitHub是一个代码托管云服务网站,帮助开发者存储和管理其项目源代码,且能够追踪、记录并控制用户对其代码的修改,再简单通俗一点来说,我们可以将它当作网盘,有巨大的空间供我们来存储东西。GitHub 是第一个供“用Git进行版本控制系统的软件开发项目”使用的基于Web的代码托管服务,是目前全球最大的开源社交编程及代码托管网站。GitHub 于 2008 年 4 月 10 日正式上线,除了基本的服务以外,还提供了订阅、讨论组、文本渲染、在线文件编辑器、协作图谱(报表)、代码片段分享(Gist)等功能。
-
GitGub作用
-
1.托管代码,历史版本管理
当然不仅仅是代码,任何文件都支持(不少人用GitHub来写博客)。它会自动帮你记录代码的修改,在必要的时候,能够帮助你快速回退到之前的历史版本。
-
2.搜素开源项目
GitHub是世界顶级开发者的聚集地,在这里你几乎可以找到任何你想要的东西。上面分享有许多优秀、著名的开源项目,在遵守其License的前提下,你可以免费使用、下载这些开源项目。这也是GitHub最为吸引人的地方。
-
-
-
2.BitBucket
BitBucket 是 2008 年创建的源代码托管网站,采用 Mercurial 和 Git 作为分布式版本控制系统,同时提供免费账户和商业计划。2010 年被 Atlassian 收购,与 Atlassian 的其他服务(Git GUI SourceTree、HipChat、Cloud9)顺利集成,主要面向慈善企业和企业用户/其主要市场是大型企业。
特点:
(1)无限制的私有创库个数;
(2).无限制的磁盘空间;
(3).API支持;
(4).灵活的权限控制;
(5).可自定义域名;
-
3.GitLab
GitLab 是一个利用 Ruby on Rails 开发的开源应用程序,实现一个自托管的 Git 项目仓库,可通过 Web 界面进行访问公开的或者私人项目。其安装方法是参考GitLab在GitHub上的Wiki页面。
特点
(1).Web框架使用RubyonRails;
(2).基于MIT代码发布协议;
(3).需要gitolite协同工作;
三者的共同特点:
(1)拉取请求
(2)代码复审
(3)内联编辑
(4)MarkDown支持
(5)托管的静态页面
(6)第三方集成
三者的不同点:
1.是否开源
(1)GitLab 有一个开源代码版本;
(2)GitHub 以开源友好而闻名,并且拥有最大数量(19.4M +)的开源项目但其本身不是开源的;
(3)Bitbucket也不是开源的,但在购买托管服务的方案中提供了「产品定制」的功能;
2.导入的代码创库类型
(1)GitHub支持导入Git、SVN、HG、TFS。
(2)GitLab支持导入Git,且更容易从其他服务导入GitHub,Bitbucket,Google code,Fogbugz。
(3).BitBucket支持导入Git、Google Code、HG、SVN等。
任务2:调试并试用广泛使用的源代码集成开发工具软件
作为一名软件/程序开发人员,不管你使用哪门语言进行源代码开发都有很多可供选择的IDE,IDE是提供软件/程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面等工具,集成了代码编写功能、分析功能、编译功能、调试功能等一体化的开发软件服务套件,开发者可以通过IDE提供的代码高亮,代码补全和提示,语法错误提示,函数追踪,断点调试等功能提高开发效率。
1.MyElipse
MyEclipse,是在Eclipse 基础上加上自己的插件开发而成的功能强大的企业级集成开发环境,主要用于Java、Java EE以及移动应用的开发。在最新版本的MyEclipse中,配合CodeMix使用支持也十分广泛,尤其是对各种开源产品和主流开发框架的支持相当不错。目前已支持PHP、Python、Vue、Angular、React、Java、Java EE等语言和框架开发。
(1)被广泛应用的免费开源的Java编辑器和IDE。可以灵活的适用于初学者和专业人。
(2)有很好的插件机制,支持各种各样的扩展和插件。最初是一个Java IDE。现在扩展到支C/C ++,Java、Peri、PHP、Python、Ruby以及更多的语言。
(3)是一个跨平台的IDE,支持Windows、Linux和Mac OS X。
分类
(1)JavaEE模型
(2)WEB开发工具
(3)EJB开发工具
(4)应用程序服务器的连接器
(5)JavaEE项目部署服务
(6)数据库服务
(7)MyEclipse整合帮助
缺点
卡顿、内存大、启动速度慢
2.Visual Studio
(1)有类似vim命令行插件,可以命令行操作,扩充快捷键使用。
(2)有Markdown插件,可以编辑md文档。
(3)Markdown可以编辑和展示双窗口。
(4)可以开发C++项目。
(5)编辑,编译,运行,调试集成,还有其他集成插件。
3.HBuilderX
HBuilder是DCloud(数字天堂)推出的一款支持HTML5的Web开发IDE。 [1] HBuilder的编写用到了Java、C、Web和Ruby。HBuilder本身主体是由Java编写。它基于Eclipse,所以顺其自然地兼容了Eclipse的插件。
特点
- 速度快,通过完整的语法提示和代码输入法、代码块等,大幅提升HTML、js、css的开发效率。
- 兼容Eclipse的插件。
缺点
- 问世的时间还比较短,有很多地方还不是完善。
4.Microsoft Visual Studio(简称VS)
Microsoft Visual Studio(简称VS)是美国微软公司的开发工具包系列产品。VS是一个基本完整的开发工具集,它包括了整个软件生命周期中所需要的大部分工具,如UML工具、代码管控工具、集成开发环境(IDE)等等。所写的目标代码适用于微软支持的所有平台,包括[Microsoft Windows](https://baike.baidu.com/item/Microsoft Windows)、Windows Mobile、[Windows CE](https://baike.baidu.com/item/Windows CE)、[.NET Framework](https://baike.baidu.com/item/.NET Framework)、.NET Compact Framework和Microsoft Silverlight 及Windows Phone。Visual Studio是最流行的Windows平台应用程序的集成开发环境。
它占用空间大,支持C、C++、C#语言的开发;但其基本包含了其他IDE的绝大部分功能,适合用于开发。
5.PyCharm
PyCharm是一种Python IDE,带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制。此外,该IDE提供了一些高级功能,以用于支持Django框架下的专业Web开发。
特点
- PyCharm拥有一般IDE具备的功能,比如, 调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制
- PyCharm还提供了一些很好的功能用于Django开发,同时支持Google App Engine,更酷的是,PyCharm支持IronPython。
优点
方便的环境管理;自动导入包;方便的代码调试;Git管理;远程管理开发。
缺点
内存占用高。
6.Android studio
Android Studio 是谷歌推出的一个Android集成开发工具,基于[IntelliJ IDEA](https://baike.baidu.com/item/IntelliJ IDEA). 类似 Eclipse ADT,Android Studio 提供了集成的 Android 开发工具用于开发和调试。
架构组成
优势
- 稳定速度快,相比于Eclipse,在性能上得到了明显的提升,并且Android Studio使用了单项目管理模式,在启动速度上比Eclipse快。
- 功能强大的UI编辑器,能更实时的展现界面布局效果。
- 完善的支持多种代码管理工具:不需要任何操作,直接支持SVN、GITHUB等主流的代码管理工具。
- 内置终端:不需要自己打开一个终端来使用ADB等工具。
- 谷歌官方支持:是Google官方专门为Android应用开发打造的利器,也是目前Google官方唯一推荐,并且不再支持其他IDE。
7.NetBeans
NetBeans是Sun公司(2009年被甲骨文收购)在2000年创立的开放源代码供开发人员和客户社区的家园,旨在构建世界级的Java IDE。NetBeans当前可以在Solaris、Windows、Linux和Macintosh OS X平台上进行开发,并在SPL(Sun公用许可)范围内使用。
NetBeans是开源软件开发集成环境,是一个开放框架,可扩展的开发平台,可以用于Java、C/C++,PHP等语言的开发,本身是一个开发平台,可以通过扩展插件来扩展功能。
优点
- 在线文档,且提供了中文版在线文档
- 联机帮助
- IDE使用指南
- 快速学习指南
- 支持和文档
- 具有Javadoc文档引索功能
缺点
- 界面色调偏暗
8.IntelliJ IDEA
DEA 全称 IntelliJ IDEA,是java编程语言开发的集成环境。IntelliJ在业界被公认为最好的java开发工具,尤其在智能代码助手、代码自动提示、重构、JavaEE支持、各类版本工具(git、svn等)、JUnit、CVS整合、代码分析、 创新的GUI设计等方面的功能可以说是超常的。IDEA是JetBrains公司的产品,这家公司总部位于捷克共和国的首都布拉格,开发人员以严谨著称的东欧程序员为主。它的旗舰版本还支持HTML,CSS,PHP,MySQL,Python等。免费版只支持Java,Kotlin等少数语言。
优点
- 可以对Java代码,JavaScript,JQuery,Ajax等技术进行调试。
- 如果实现类采用的是哈希映射,则会自动过滤空的Entry实例。
- 需要动态Evaluate一个表达式的值,比如我得到了一个类的实例,但是并不知晓它的API,可以通过Code Completion点出它所支持的方法。
- 在多线程调试的情况下,Log on console的功能可以帮你检查多线程执行的情况。
*9.Code:: Blocks
Code::Blocks 是一个开放源码的全功能的跨平台C/C++集成开发环境。 Code::Blocks是开放源码软件。Code::Blocks由纯粹的C++语言开发完成,它使用了著名的图形界面库wxWidgets(3.x)版。对于追求完美的C++程序员,再也不必忍受Eclipse的缓慢。
优点
- 跨平台;
- 开源;
- 空间占用较少,轻量级;
- 具有灵活而强大的配置功能;
- 支持语法彩色醒目显示,支持代码完成,支持工程管理、项目构建、调试。
缺点:在开发工程方面,相比于其他IDE不占优势;仅支持C/C++开发。