一.相關資訊
這個作業屬於哪個課程 | [軟體工程2024](首頁 - 軟體工程2024 - 廣東工業大學 - 班級部落格 - 部落格園 (cnblogs.com)) |
---|---|
這個作業的要求在哪裡 | [作業要求的連結](結對專案 - 作業 - 軟體工程2024 - 班級部落格 - 部落格園 (cnblogs.com)) |
這個作業的目標 | 實現一個自動生成小學四則運算題目的命令列程式,學會合作 |
GitHub地址:[Tamakocode/four_operations](Tamakocode/four_operations: 實現一個自動生成小學四則運算題目的命令列程式 (github.com))
合作人員:
姓名 | 學號 |
---|---|
謝李通 | 3122004794 |
二.PSP表格
*PSP2.1* | *Personal Software Process Stages* | *預估耗時(分鐘)* | *實際耗時(分鐘)* |
---|---|---|---|
Planning | · 計劃 | 60 | 60 |
· Estimate | · 估計這個任務需要多少時間 | 20 | 20 |
Development | · 開發 | 180 | 200 |
· Analysis | · 需求分析 (包括學習新技術) | 30 | 30 |
· Design Spec | · 生成設計文件 | 30 | 30 |
· Design Review | · 設計複審 (和同事稽核設計文件) | 30 | 30 |
· Coding Standard | · 程式碼規範 (為目前的開發制定合適的規範) | 30 | 30 |
· Design | · 具體設計 | 60 | 60 |
· Coding | · 具體編碼 | 180 | 188 |
· Code Review | · 程式碼複審 | 30 | 30 |
· Test | · 測試(自我測試,修改程式碼,提交修改) | 60 | 60 |
Reporting | · 報告 | 60 | 60 |
· Test Report | · 測試報告 | 30 | 30 |
· Size Measurement | · 計算工作量 | 30 | 30 |
· Postmortem & Process Improvement Plan | · 事後總結, 並提出過程改進計劃 | 30 | 30 |
合計 | 860 | 888 |
三.效能分析
四.設計實現過程
五.程式碼說明
六.測試執行
生成的題目是否可能存在重複?
每個表示式透過多重隨機生成,包括運算元的隨機,運算子的隨機,運算元個數的隨機,運算元型別的隨機……等,需要生成數量極大的表示式時,才有可能存在重複的表示式
七.專案小結
關於python檔案打包成.exe檔案的教訓:
1.直接打包
// cmd 執行
pip install pyinstaller //安裝pyinstaller
pyinstaller -F -i 【圖示.ico】【.py檔案】 //打包成帶圖示的.exe
結果.exe檔案佔用空間比較大
2.在虛擬環境下打包
// 新建資料夾 在當前資料夾下執行cmd
pip install pipenv // 使用 Pipenv 來建立和管理Python 專案的虛擬環境
pipenv shell //啟用 Pipenv 建立的虛擬環境,命令列左邊出現()表示已經進入pipenv
pip install 【專案使用的包1】
pip install 【專案使用的包2】...... //下載python專案使用的包,另外在最新pip版本中 random 改名為 random2
pip install pyinstaller //下載打包工具
pyinstaller -F -i 【圖示.ico】【.py檔案】 //打包成帶圖示的.exe
這樣得到的.exe 檔案比較小,功能也是全面的