201971010142-王玉慧 常用源代码管理工具与开发工具

常用源代码管理工具与开发工具

项目 内容
课程班级博客链接 班级博客链接
这个作业要求链接 作业要求链接
我的课程学习目标 掌握Typora的基本使用方法
这个作业在哪些方面帮助我实现学习目标 通过本次作业学会了使用Typora

1、实验目的与要求

(1)了解软件项目源代码常用管理工具。

(2)了解软件项目源代码常用集成开发软件工具。

2、实验内容

任务1:调研源代码版本管理软件

(1)GitHub:

a.Github是什么,有什么用?

​ 简单来说,GitHub是一个代码托管云服务网站,帮助开发者存储和管理其项目源代码,且能够追踪、记录并控制用户对其代码的修改。

甚至你可以简单粗暴的把它当作一个网盘,用来存储任何东西。

b.它能为你做什么

1.托管代码、历史版本管理

​ 不仅仅是代码,任何文件都支持(不少人用GitHub来写博客)。它会自动记录代码的修改,在必要的时候,能够快速回退到之前的历史版本。

2.搜索开源项目

​ GitHub是世界顶级开发者的聚集地,在这里几乎可以找到任何你想要的东西。上面分享有许多优秀、著名的开源项目,在遵守其License的前提下,可以免费使用、下载这些开源项目。这也是GitHub最为吸引人的地方。

3.分享的同时会得到社区的回馈

​ GitHub可以说是共产主义的最佳实践之一。其一大优势是协同开发,你分享出来的项目,其他开发者也可以参与贡献,帮助你一同完善项目功能,Bug修复,代码质量提升。

4.使用Github Pages服务,你可以免费搭建一个博客网站

GitHub Pages提供静态网页托管服务,它直接从 GitHub 上的仓库获取 HTMLCSSJavaScript文件,然后构建并发布网站。 您可以在 GitHub Pages 示例集合中查看 GitHub Pages 站点的示例。
GitHub 提供免费的 github.io子域,也支持自定义域名。

5.学习,能力提升

​ GitHub上有很多优秀开源项目和教程资源值得你去发现、学习

6.提升自己的影响力

​ 你可以将自己的开源项目发布到GitHub网站上,项目越受欢迎获得的Star越高,说明业界对你的能力越认可。一份优秀的GitHub主页,能为自己的简历润色不少。

C.GitHub和Git的关系与区别

​ 简单来说,Git只是一个命令行工具,一个分布式版本控制系统。正是它在背后管理和跟踪你的代码历史版本,好比一个时光机,让代码出错时不至于手忙脚乱,能快速回退之前的历史版本。 类似的工具还有SVN

​ 而GitHub是一个代码托管网站,背后使用Git作为版本管理工具(而非svn)。主要服务是将项目代码托管到云服务器上,而非存储在自己本地硬盘上。

(2)GitLab:

​ GitLab是一个利用 Ruby on Rails 开发的开源应用程序,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。

​ 它拥有与Github类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。它还提供一个代码片段收集功能可以轻松实现代码复用,便于日后有需要的时候进行查找。

​ 5.0以前版本要求服务器端采用 Gitolite 搭建,5.0版本以后不再使用 Gitolite ,采用自己开发的 gitlab-shell 来实现。

系统要求:

  • Ubuntu/Debian
  • ruby 1.9.3+
  • mysql or postgresql
  • git
  • gitlab-shell
  • redis
  • Sidekiq

(3)Bitbucket:

​ BitBucket 是一家源代码托管网站,采用Mercurial和Git作为分布式版本控制系统,同时提供商业计划和免费账户.

特点:

  1. 无限制的私有仓库个数

  2. 无限制的磁盘空间

  3. 同时支持https/ssh

  4. Bug 跟踪

  5. 项目Wiki

  6. API 支持

  7. 灵活的权限控制

  8. 可自定义域名

  9. 修改记录输出

  10. 自定义下载

任务2:调研并试用广泛使用的源代码集成开发工具软件(Integrated Development Environment,IDE)

(1)MyElipse:

​ MyEclipse是在Eclipse 基础上加上自己的插件开发而成的功能强大的企业级集成开发环境,主要用于Java、Java EE以及移动应用的开发。在最新版本的MyEclipse中,配合CodeMix使用支持也十分广泛,尤其是对各种开源产品和主流开发框架的支持相当不错。目前已支持PHP、Python、Vue、Angular、React、Java、Java EE等语言和框架开发。

在结构上,MyEclipse的特征可以被分为7类:

  1. JavaEE模型

  2. WEB开发工具

  3. EJB开发工具

  4. 应用程序服务器的连接器

  5. JavaEE项目部署服务

  6. 数据库服务

适用于以下几种开发类型:

a.企业级开发

​ MyEclipse为完成工作提供了智能的企业工具。Java EE库和功能是企业级项目的基础,支持部署到几十个企业友好的应用服务器进行快速检测。

​ b.Web开发

​ 有了MyEclipse,你就拥有了所有的Web开发技术。支持快速添加技术功能到Web项目中,使用可视化编辑器以便编码和配置,并且还可以在多种应用服务器上测试你的任务。

​ c.云开发

​ 脱离缓存,使用内置功能连接到云,支持探索和连接服务,为他人提供自己的REST Web服务。无论是定位还是虚拟的微博,MyEclipse都能轻松地创建云连接。

​ d.移动开发

​ 移动应用开发再也无需使用特殊工具或学习新的编程语言。MyEClipse支持使用Java、HTML和JQuery进行编码,使用移动工具创建拥有良好编码的应用,并嵌入到原生iOS和Android应用中。

(2)Microsoft Visual Studio(简称VS):

​ Visual Studio一般指Microsoft Visual Studio。 Microsoft Visual Studio(简称VS)是美国微软公司的开发工具包系列产品。VS是一个基本完整完整的开发工具集,它包括了整个软件生命周期中所需要的大部分工具,如UML工具、代码管控工具、集成开发环境集成开发环境(IDE)等等。所写的目标代码适用于微软支持的所有平台,包括Microsoft Windows、Windows Mobile、Windows CE、NET Framework、.NET Compact Framework和Microsoft Silverlight及Windows Phone。

​ Visual Studio是最流行的Windows平台应用程序的集成开发环境。最新版本为 Visual Studio 2019 版本,基于.NET Framework 4.8 。

功能:

名称 内部版本 C类语言 Basic类语言 Java类语言 其他语言
Visual Studio 4.0 Visual C++ 4.0 Visual Basic 3.0 Visual FoxPro 4.0
Visual Studio 97 5.0 Visual C++ 5.0 Visual Basic 5.0 Visual J++ 1.1 Visual FoxPro 5.0
Visual Studio 6.0 6.0 Visual C++ 6.0 Visual Basic 6.0 Visual J++ 6.0 Visual FoxPro 6.0
Visual Studio .NET 2002 7.0 Visual C++ 2002Visual C# 2002 Visual Basic 2002 Visual J# 1.0 -
Visual Studio .NET 2003 7.1 Visual C++ 2003Visual C# 2003 Visual Basic 2003 Visual J# 1.1 -
Visual Studio 2005 8.0 Visual C++ 2005Visual C# 2005 Visual Basic 2005 Visual J# 2.0 -
Visual Studio 2008 9.0 Visual C++ 2008Visual C# 2008 Visual Basic 2008 - -
Visual Studio 2010 10.0 Visual C++ 2010Visual C# 2010 Visual Basic 2010 - Visual F#
Visual Studio 2012 11.0 Visual C++ 2012Visual C# 2012 Visual Basic 2012 Visual F# 2012
Visual Studio 2013 12.0 Visual C++ 2013Visual C# 2013 Visual Basic 2013 Visual F# 2013
Visual Studio 2015 14.0 Visual C++ 2015Visual C# 2015 Visual Basic 2015 Visual F# 2015
Visual Studio 2015 RTM 14.0 Visual C++ 2015Visual C# 2015 Visual Basic 2015 Visual F# 2015
Visual Studio 2017 15.0 Visual C++ 2017Visual C# 2017 Visual Basic 2017 Visual F# 2017
Visual Studio 2019 16.0 Visual C++ 2019Visual C# 2019 Visual Basic 2019 Visual F# 2019

(3)HBuilderX:

一套代码,多端运行,可以同时生成ios,Android,H5,微信小程序,支付宝小程序,百度小程序。
代码实现简单,开发快速,官网提供很多组件,可以直接拿来用。
uniapp开发体验对前端人员十分友好,首先uni-app是基于vue.js的,其次和微信小程序的开发方式类似。
突破了系统对H5调用原生功能的限制,比如使用uniapp结合HTML5plus能调用系统相册图片选择和拍照等。

(4)PyCharm:

​ PyCharm拥有一般IDE具备的功能,比如, 调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制

另外,PyCharm还提供了一些很好的功能用于Django开发,同时支持Google App Engine,更酷的是,PyCharm支持IronPython.。

主要功能

1.编码协助

​ 其提供了一个带编码补全,代码片段,支持代码折叠和分割窗口的智能、可配置的编辑器,可帮助用户更快更轻松的完成编码工作。

项目代码导航

​ 该IDE可帮助用户即时从一个文件导航至另一个,从一个方法至其申明或者用法甚至可以穿过类的层次。若用户学会使用其提供的快捷键的话甚至能更快。

2.代码分析

​ 用户可使用其编码语法,错误高亮,智能检测以及一键式代码快速补全建议,使得编码更优化。

3.Python重构

有了该功能,用户便能在项目范围内轻松进行重命名,提取方法/超类,导入域/变量/常量,移动和前推/后退重构。

4.支持Django

​ 有了它自带的HTML,CSS和 JavaScript编辑器 ,用户可以更快速的通过Django框架进行Web开发。此外,其还能支持CoffeeScript, Mako 和 Jinja2。

5.支持Google App引擎

​ 用户可选择使用Python 2.5或者2.7运行环境,为Google App引擎进行应用程序的开发,并执行例行程序部署工作。

6.集成版本控制

​ 登入,录出,视图拆分与合并--所有这些功能都能在其统一的VCS用户界面(可用于Mercurial, Subversion, Git, Perforce 和其他的SCM)中得到。

7.图形页面调试器

​ 用户可以用其自带的功能全面的调试器对Python或者Django应用程序以及测试单元进行调整,该调试器带断点,步进,多画面视图,窗口以及评估表达式。

8.集成的单元测试

​ 用户可以在一个文件夹运行一个测试文件,单个测试类,一个方法或者所有测试项目。

9.可自定义&可扩展

​ 可绑定了 Textmate, NetBeans, Eclipse & Emacs 键盘主盘,以及 Vi/Vim仿真插件。

(5)Android studio:

​ Android Studio 是谷歌推出的一个Android集成开发工具,基于IntelliJ IDEA. 类似 Eclipse ADT,Android Studio 提供了集成的 Android 开发工具用于开发和调试。

架构组成:

​ 在IDEA的基础上,Android Studio 提供:

  • 基于Gradle的构建支持
  • Android 专属的重构和快速修复
  • 提示工具以捕获性能、可用性、版本兼容性等问题
  • 支持ProGuard和应用签名
  • 基于模板的向导来生成常用的 Android 应用设计和组件
  • 功能强大的布局编辑器,可以让你拖拉 UI 控件并进行效果预览。

(6)NetBeans:

​ NetBeans是Sun公司(2009年被甲骨文收购)在2000年创立的开放源代码供开发人员和客户社区的家园,旨在构建世界级的Java [IDE。NetBeans当前可以在Solaris、Windows、Linux和Macintosh OS X平台上进行开发,并在SPLSun公用许可)范围内使用。

​ NetBeans包括开源的开发环境和应用平台,NetBeans IDE可以使开发人员利用Java平台能够快速创建Web、企业、桌面以及移动的应用程序,NetBeans IDE已经支持PHP、Ruby、JavaScript、Groovy、Grails和C/C++等开发语言。

(7)IntelliJ IDEA:

​ IntelliJ IDEA,是java编程语言开发的集成环境。IntelliJ在业界被公认为最好的java开发工具,尤其在智能代码助手、代码自动提示、重构、JavaEE支持、各类版本工具、JUnit、CVS整合、代码分析、 创新的GUI设计等方面的功能可以说是超常的。IDEA是JetBrains公司的产品,这家公司总部位于捷克共和国的首都布拉格,开发人员以严谨著称的东欧程序员为主。它的旗舰版本还支持HTML,CSS,PHP,MySQL,Python等。免费版只支持Java,Kotlin等少数语言。

​ 最突出的功能自然是调试(Debug),可以对Java代码,JavaScript,JQuery,Ajax等技术进行调试。

比如查看Map类型的对象,如果实现类采用的是哈希映射,则会自动过滤空的Entry实例。

其次,需要动态Evaluate一个表达式的值,比如我得到了一个类的实例,但是并不知晓它的API,可以通过Code Completion点出它所支持的方法。

​ 最后,在多线程调试的情况下,Log on console的功能可以帮你检查多线程执行的情况。

(8)Code:: Blocks:

​ Code::Blocks 是一个开放源码的全功能的跨平台C/C++集成开发环境。 Code::Blocks是开放源码软件。Code::Blocks由纯粹的C++语言开发完成,它使用了著名的图形界面库wxWidgets(3.x)版。对于追求完美的C++程序员,再也不必忍受Eclipse的缓慢。

​ Code::Blocks支持插件,包括代码格式化工具AStyle;代码分析器;类向导;代码补全;代码统计;编译器选择;复制字符串到剪贴板;调试器;文件扩展处理器;Dev-C++DevPak更新/安装器;DragScroll,源码导出器,帮助插件,键盘快捷键配置,插件向导;To-Do列表;wxSmith;wxSmith MIME插件;wsSmith工程向导插件;Windows7外观。

​ Code::Blocks具有灵活而强大的配置功能,除支持自身的工程文件、C/C++文件外,还支持AngelScript、批处理、CSS文件、D语言文件、Diff/Patch文件、Fortan77文件、GameMonkey脚本文件、Hitachi汇编文件、Lua文件、MASM汇编文件、Matlab文件、NSIS开源安装程序文件、Ogre Compositor脚本文件、Ogre Material脚本文件、OpenGL Shading语言文件、Python文件、Windows资源文件、XBase文件、XML文件、nVidia cg文件。识别Dev-C++工程、MS VS 6.0-7.0工程文件,工作空间、解决方案文件。

​ Code::Blocks基于wxWidgets开发,正体现了wxWidgets的强大。以前Borland C++Builder X宣称基于wxWidgets开发跨平台、兼容性好、最优秀的C++ IDE环境,但没有实现;让我们拭目以待。国内的Code::Blocks爱好者和跨平台开发员应该尽快建立中文Code::Blocks网站,提供Code::Blocks中文化支持,促进Code::Blocks在国内的发展。

posted on 2022-03-20 21:18  王玉慧  阅读(42)  评论(1编辑  收藏  举报