項目 | 內容 |
---|---|
課程班級播客鏈接 | 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格式博客的本地編輯和實時預覽
