結對程式設計專案:帶UI的小初高數學學習軟體程式碼分析總結
1、專案需求
使用者:
小學、初中和高中學生。
功能:
1、所有功能通過圖形化介面操作,可以是桌面應用,可以是網站(程式語言和技術不限);
2、使用者註冊功能。使用者提供手機號碼,點選註冊將收到一個註冊碼,使用者可使用該註冊碼完成註冊;
3、使用者完成註冊後,介面提示設定密碼,使用者輸入兩次密碼匹配後設置密碼成功。密碼6-10位,必須含大小寫字母和數字。使用者在登入狀態下可修改密碼,輸入正確的原密碼,再輸入兩次相同的新密碼後修改密碼成功;
4、密碼設定成功後,跳轉到選擇介面,介面顯示小學、初中和高中三個選項,使用者點選其中之一後,提示使用者輸入需要生成的題目數量;
5、使用者輸入題目數量後,生成一張試卷(同一張卷子不能有相同題目,題目全部為選擇題),介面顯示第一題的題乾和四個選項,使用者選擇四個選項中的一個後提交,介面顯示第二題,...,直至最後一題;
6、最後一題提交後,介面顯示分數,分數根據答對的百分比計算;
7、使用者在分數介面可選擇退出或繼續做題;
8、小初高數學題目要求見個人專案。
2、執行結果
1.登入註冊介面:
在登入介面輸入使用者名稱及密碼,在使用者文件中查詢對應的資料進行驗證。初始登入時需要先進行註冊。密碼要求必須6包含字母大小寫及數字。同時電話要11位電話號碼,點選獲取驗證碼後會給輸入的手機號傳送四位的驗證碼。
2.出題介面
出題介面包含了輸入的題目數量,要求題目數量在10-30之間,並且支援修改密碼。
3.做題介面
在做題介面有四個選項,選完之後點選下一題即可繼續做題。
4.公佈成績
在所有題目做完之後,系統會根據正確的題目數量算出對應的百分制的分數。
3、個人專案複用
本次出題個人專案複用的點在於出題的邏輯,由於當時在出題時是隨機生成題目,只考慮了生成題目,沒有考慮如何算出答案,所以在編寫計算邏輯時十分痛苦,這點是需要改進的地方。
4、結對程式設計的經驗教訓
因為使用的是qt環境,所以我們繼續了個人專案的c++語言,而c++在開發應用方面並不如java python等語言好用,許多功能需要自己實現而沒有現成的介面函式,特別是在實現簡訊傳送的時候大費周章,以後應該注意語言的選取。還有就是在開發此類互動應用的時候應該注意併發性,使用者的操作和計算機的編譯應該保持同步,否則可能會出現嚴重的bug。這次因為時間問題,ui介面設計的不太美觀,下次會繼續改進,希望有更好的發揮。