第二次作业--熟悉使用工具
| GIT地址 | ?https://github.com/Foreverux |
| GIT用戶名 | ?Foreverux |
| 學號后五位 | ?62117 |
| 博客地址 | ?https://www.cnblogs.com/JQloveJX/ |
| ?作業鏈接 | ?https://edu.cnblogs.com/campus/xnsy/SoftwareEngineeringClass1/homework/2793 |
?
?
?
?
?
?
?
?
聲明:部分內容摘自@ChildishChange
?
Part 0. 背景
?
阿超家里的孩子上小學一年級了,這個暑假老師給家長們布置了一個作業:家長每天要給孩子出一些合理的,但要有些難度的四則運算題目,并且家長要對孩子的作業打分記錄。
作為程序員的阿超心想,既然每天都需要出題,那何不做一個可以自動生成小學四則運算題目與解決題目的命令行 “軟件”呢。他把老師的話翻譯一下,就形成了這個軟件的需求:
- 程序接收一個命令行參數 n,然后隨機產生?n?道加減乘除(分別使用符號+-*/來表示)練習題,每個數字在?0?和?100?之間,運算符在?2?個 到?3?個之間。
- 由于阿超的孩子才上一年級,并不知道分數。所以軟件所出的練習題在運算過程中不得出現非整數,比如不能出現?3÷5+2=2.6?這樣的算式。
- 練習題生成好后,將生成的?n?道練習題及其對應的正確答案輸出到一個文件?subject.txt?中。
?
Part 1. 配置環境
Visual Studio 2017 有著宇宙最強 IDE 的美稱,它對 C++ 的支持也很好,在本教程中,為簡化學員的開發難度,我們選擇使用 VS2017 社區版(社區版(Community)指的是可免費提供給單個開發人員,給予初學者及大部分程序員支持,可以無任何經濟負擔、合法地使用的版本。)
下面提供三種安裝方法:
下載迅雷,輸入以下ed2k鏈接:
ed2k://|file|mu_visual_studio_community_2017_version_15.3_x86_x64_11100062.exe|1069960|5984B3CD547F9F213DE21EFE5887F08D|/百度網盤:鏈接: https://pan.baidu.com/s/1jJXyRMA 密碼: ub6c
安裝教程,雙擊打開下載的exe文件,一直繼續到如下圖,選擇.net桌面開發(這里我以前安裝過,所以是這樣的),由于vs體積較大,建議修改目錄到非系統盤
較長時間的下載文件安裝后重啟即可。
?
?
?
?遇到的問題:
安裝過程基本沒遇到什么問題,因為安裝過程本來就很簡單,一直下一步下一步就行。
?
Part 2. 克隆項目
?
成功登錄后,輸入阿超倉庫的網址https://github.com/Jupi4ter/AchaoCalculator(這個為我們班級所指定的倉庫地址),點擊右上角的 Fork ,將阿超的四則運算庫拷貝到自己的同名倉庫中,如下圖所示:(PS:點擊fork后需要進入自己的賬號的倉,然后在clone)
?
?
? ? ? ? ? 3、安裝 Git 軟件,Git 的安裝教程?在這里。(考慮到目前大多數人都是64位windows,故放一個git-windows-64位下載地址)。
? 4、新建一個文件夾,在空白處右鍵打開 Git Bash,輸入?git clone <clone url>?,其中?<clone url>即剛才復制的項目地址。
? 5、clone完以后,可在當前目錄下看到一個與倉庫同名的文件夾Calculator,進入Calculator,新建一個文件夾,重命名為你的?Github?賬號名。
? 6、以 Github 賬號命名的文件夾作為項目目錄,同時項目建立在Calculator文件夾。
?
7、接下來接連使用?git add,git commit -m "Message"(Message是你要寫的內容)即可利用 Git 記錄下所有的改動。如果是第一次使用 Git,
請需要在git命令行中使用如下兩條命令配置自己的個人郵箱與 Commit 時的用戶名,這里的郵箱和用戶名最好與 Github 賬號保持一致。
? git config --global user.name "你的用戶名"
? git config --global user.email 你的郵箱號
?
? ? 下面是一些常見的Git操作
?
?
?
遇到的問題:
github是英文的,網站上很多地方都看不懂,通過網頁翻譯解決,但是翻譯有很多不準確的地方,只有自己嘗試性摸索,最后漸漸地了解了github。
?
?
Part 3.代碼設計
1、代碼設計思路:先隨機生成n個四則表達式,然后計算表達式的值,最后保存。
?
<1>、生成四則表達式包括:
生成2-3個運算符,生成隨機數字(判斷是否符合要求,不能為小數,不能除0等),最后將運算符和數字拼接成表達式。
? 生成運算符:
?
?
? ?生成隨機數以及合成四則表達式:
?
?
<2>、計算結果并顯示。
?
<3>、保存文件。
?
?
?
2、運行結果:
?
?
3、文件保存情況:
?
?
?
?
遇到的問題:
1、不知道怎么計算字符串表達式,通過百度解決;
2、忘記了這么保存文件,通過看書解決。
?
?
?
Part 4. 單元測試
1、創建單元測試:右鍵單擊解決方案,可以添加一個新建項目,在類型里選擇?單元測試,新建一個名為?CalculatorUnitTest?的單元測試項目。(值得注意的需要選擇對應的語言的單元測試)
(對于單元測試具體步驟,可以參考LoveSna的《C# 之在VS 中實現單元測試》)
?
?2、單元測試
1)編寫測試代碼,測試代碼的功能就是去調用被測試的類的方法;
2)編寫期望測試代碼返回的結果;
3)比較測試代碼返回的結果與我們人工編寫的期望的結果,在單元測試運行完畢后,VS 的左側會彈出一個測試結果窗口。綠色代表通過,紅色代表失敗。
?
?
?遇到的問題:
1、開始創建單元測試時選了(windows通用),一直引用不了項目,后來仔細檢查發現;
2、單元測試代碼不會寫,通過百度查資料解決。
?
?
?
Part 5. 基本操作
?
1、斷點的設置:左鍵單擊代碼行左邊的灰色區域。
?
?
?2、單步執行:調試->逐語句(F11)
?
?
3、條件斷點:將鼠標移動到斷點,彈出設置,進入并開啟條件斷點。
?
Part 6. 回歸測試
回歸測試是指修改了舊代碼后,重新進行測試以確認修改沒有引入新的錯誤或導致其他代碼產生錯誤。自動回歸測試將大幅降低系統測試、維護升級等階段的成本。 回歸測試作為軟件生命周期的一個組成部分,在整個軟件測試過程中占有很大的工作量比重,軟件開發的各個階段都會進行多次回歸測試。在漸進和快速迭代開發中,新版本的連續 發布使回歸測試進行的更加頻繁,而在極端編程方法中,更是要求每天都進行若干次回歸測試。因此,通過選擇正確的回歸測試策略來改進回歸測試的效率和有效性是很有意義的。Part 7. 效能工具介紹
vs2017性能探查器,點擊分析->性能探查器,
?
進入以后,我們只需要勾選CPU使用率即可。
?
效能分析報告如圖:
?
詳細報告如圖(部分):
?
?
?
? 效能分析會幫助程序員從機器的運行角度方面去思考程序的運行效率,對程序的優化有著重要作用。
?
Part 8. 提交代碼
在完成?Debug?與?單元測試?之后,我們現在來學習一下如何提交代碼到 Github 上,并利用 Github 進行團隊協作。之前我們已經介紹過了?git add?與?git commit?命令,
但這兩條命令只會對本地的倉庫進行修改,也就是說之前的所有操作都是離線的。我們要想讓 Github 上也跟蹤到最新的改變,就需要使用?git push?命令。
?
在使用該命令前,請確保所有本地的改動都已經?add?并?commit?了??梢杂?git status?來檢查:
?
然后 git push,出現登錄框,登錄等待即可。
?
在完成 push 后,我們就可以開始向源倉庫(即阿超的倉庫)發起?Pull Request(指發起請求給倉庫貢獻代碼)。打開你 Fork 后的項目主頁,如圖所示,點擊按鈕New pull request
(由于之前更改了分支,所以要切換才能看到push的文件)
請求結果如下圖:
?
?
Part 9. 心得體會
通過此次作業,熟悉了github、git的使用,回顧了以前學過的C#(忘得都差不多了,過程中一直翻書,百度),初次了解了單元測試和回歸測試,
之前都是挺老實講,很空洞,不知道具體該怎么做,現在知道了,還有就是學會了能效分析工具的使用,體會到了軟件工程真真的含義,不僅僅是
敲代碼,還有其他一系列工作,這次作業雖然很累,但是確確實實學到了很多東西,有很大收獲,還是很開心的。
?
轉載于:https://www.cnblogs.com/JQloveJX/p/10622612.html
總結
以上是生活随笔為你收集整理的第二次作业--熟悉使用工具的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 互联网远程诊疗审批流程?
- 下一篇: 【题解】Luogu P2347 砝码称重