项目 内容
课程班级博客链接 班级博客
这个作业要求链接 作业要求
我的课程学习目标 运用科学高效的方法学习软件工程的理论和知识
这个作业在哪些方面帮助我实现学习目标 了解软件项目源代码常用管理工具,了解软件项目源代码常用集成开发软件工具,为后续学习打下坚实基础

1、实验目的与要求

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

2、实验内容

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

  • 上网调研目前被广泛使用的基于源代码版本管理软件Git的项目管理工具,如GitHub、Gitlab、Bitbucket 等,比较它们之间的异同

    • Git与Github
        Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理,是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。GitHub是一个面向开源及私有软件项目的托管平台,因为只支持Git作为唯一的版本库格式进行托管,故名GitHub。简短地说:git是一个版本控制工具,github是一个用git做版本控制的项目托管平台。
    • Gitlab
        GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的Web服务。使用MIT许可证的基于网络的Git仓库管理工具,且具有wiki和issue跟踪功能。GitLab由乌克兰程序员DmitriyZaporozhets和ValerySizov开发,它使用Ruby语言写成。后来,一些部分用Go语言重写。截止2018年5月,该公司约有290名团队成员,以及2000多名开源贡献者。
    • BitBucket
      BitBucket 是一家源代码托管网站,采用Mercurial和Git作为分布式版本控制系统,同时提供商业计划和免费账户。
      具有以下特点:
        无限制的私有仓库个数
        无限制的磁盘空间
        同时支持https/ssh
        Bug 跟踪
        项目Wiki
        API 支持
        灵活的权限控制
        可自定义域名
        RSS 修改记录输出
        自定义下载
  • 目前基于 Git 做版本控制的代码托管平台有很多种,比较流行的服务有 Github、Bitbucket、 GitLab、 Coding,个人使用者和开发团队该如何选择?
    对于这四大代码仓库托管服务,功能最强大的,性价比最高的,最受欢迎的都不是最好的。在特定情况下,在只有适合自己的才是最好的:
      如果想要一个免费开源的解决方案,GitLab 也许比较吸引人;
      如果正在开发一个开源项目想取得更多的关注,那 GitHub 毫无疑问是第一选择;
      如果想要免费的私有库,并在使用 Atlassian 的其他产品(例如:Confluence,Jira, SourceTree...),代码托管在 Bitbucket 绝对用起来会很适合;
      如果想要免费私有代码仓库,想获得更多的中文支持或正在使用 Coding WebIDE,Coding 明显更适合。

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

  • 上网调研并试用包括MyElipse、Visual Studio 、HBuilderX、Microsoft Visual Studio(简称VS)、PyCharm、Android studio、NetBeans、IntelliJ IDEA、Code:: Blocks等IDE,结合调研资料和使用体验概括总结以上IDE的功能特色。

    • MyElipse
        是企业级工作平台(MyEclipseEnterprise Workbench ,简称MyEclipse),是对EclipseIDE的扩展,用于Java、Java EE以及移动应用的开发。在结构上,MyEclipse的特征可以被分为7类:JavaEE模型、WEB开发工具、EJB开发工具、应用程序服务器的连接器、JavaEE项目部署服务、数据库服务、 MyEclipse整合帮助。在最新版本的MyEclipse中,配合CodeMix使用支持也十分广泛,尤其是对各种开源产品和主流开发框架的支持相当不错。目前已支持PHP、Python、Vue、Angular、React、Java、Java EE等语言和框架开发。
    • 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 。
    • HBuilderX
        HBuilder是DCloud(数字天堂)推出的一款支持HTML5的Web开发IDE。 [1] HBuilder的编写用到了Java、C、Web和Ruby。HBuilder本身主体是由Java编写。
      它基于Eclipse,所以顺其自然地兼容了Eclipse的插件。
      快,是HBuilder的最大优势,通过完整的语法提示和代码输入法、代码块等,大幅提升HTML、js、css的开发效率。
    • PyCharm
        PyCharm是一种Python IDE,带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制。此外,该IDE提供了一些高级功能,以用于支持Django框架下的专业Web开发。
    • Android studio
        Android Studio 是谷歌推出的一个Android集成开发工具,基于IntelliJ IDEA. 类似 Eclipse ADT,Android Studio 提供了集成的 Android 开发工具用于开发和调试。
    • NetBeans
        NetBeans是Sun公司(2009年被甲骨文收购)在2000年创立的开放源代码供开发人员和客户社区的家园,旨在构建世界级的Java IDE。NetBeans当前可以在Solaris、Windows、Linux和Macintosh OS X平台上进行开发,并在SPL(Sun公用许可)范围内使用。
      NetBeans包括开源的开发环境和应用平台,NetBeans IDE可以使开发人员利用Java平台能够快速创建Web、企业、桌面以及移动的应用程序,NetBeans IDE已经支持PHP、Ruby、JavaScript、Groovy、Grails和C/C++等开发语言。
    • IntelliJ IDEA
        IDEA 全称 IntelliJ IDEA,是java编程语言开发的集成环境。IntelliJ在业界被公认为最好的java开发工具,尤其在智能代码助手、代码自动提示、重构、JavaEE支持、各类版本工具(git、svn等)、JUnit、CVS整合、代码分析、 创新的GUI设计等方面的功能可以说是超常的。IDEA是JetBrains公司的产品,这家公司总部位于捷克共和国的首都布拉格,开发人员以严谨著称的东欧程序员为主。它的旗舰版本还支持HTML,CSS,PHP,MySQL,Python等。免费版只支持Java,Kotlin等少数语言。
    • Code:: Blocks
        Code::Blocks 是一个开放源码的全功能的跨平台C/C++集成开发环境。 Code::Blocks是开放源码软件。Code::Blocks由纯粹的C++语言开发完成,它使用了著名的图形界面库wxWidgets(3.x)版。对于追求完美的C++程序员,再也不必忍受Eclipse的缓慢。
    • Dev-C++
        Dev-C++(或者叫做 Dev-Cpp)是 Windows 环境下的一个轻量级 C/C++ 集成开发环境(IDE)。它是一款自由软件,遵守GPL许可协议分发源代码。它集合了功能强大的源码编辑器、MingW64/TDM-GCC 编译器、GDB 调试器和 AStyle 格式整理器等众多自由软件,适合于在教学中供 C/C++语言初学者使用,也适合于非商业级普通开发者使用。
      Dev-C++ 的优点是功能简洁,适合于在教学中供 C/C++语言初学者使用,也适合于非商业级普通开发者使用。缺点是它并没有完善的可视化开发功能,所以不适用于开发图形化界面的软件。
  • 以上IDE在以前的学习和实践中用过一部分,但是并没有深入了解它们的特性和优势,此次实验对没有接触过的IDE做了试用,以及了解了一些集成开发环境的相关知识,提高了学科素养。

  • 任务3:撰写任务1、任务2相关内容博客(已完成)

  • 练习使用typora进行MarkDown格式博客的本地编辑和实时预览,编辑完成后复制到博客园中。

    • Typora是一款免费的轻量级Markdown文本编辑器。 在试用之后确实感觉到它在排版以及代码编辑方面的效率很高!
      本次实验中我重要用到了文字编辑、插入等相关语法,以下列出一部分:
      标题:快捷键:Ctrl+数字 或 Ctrl+加减号 或 ### (几个#表示几级标题)
        # 一级标题 快捷键Ctrl+1
      字体加粗:快捷键:Ctrl+b
        示 例:加粗内容
      插入表格:快捷键:ctrl+t
        示 例:按完快捷键后,弹出下图,选择对应的行和列,点击确定即可。

3、实验总结

  本次实验主要了解了软件项目源代码常用管理工具以及软件项目源代码常用集成开发软件工具,还有掌握了一部分Typora中用到的语法,提高了Markdown排版以及编辑方面的效率。对于源代码版本管理工具和集成开发环境的调研一定程度上提高了学科素养。