本次結對編程要求咱們在我的項目的基礎上,通過合做和創新,來完成一個帶UI界面的出卷答題系統,與我的項目的區別:算法
1.UI界面數據庫
2.短信登陸認證編程
3.選擇題形式數組
綜合分析題目,咱們先初步得將工做任務分配了下來:框架
實現UI界面。我本身的我的項目就使用UI實現的,因此作界面就顯得不是那麼困難,因此我先將總體的框架實現,即構建因此的代碼包括跳轉界面的內部邏輯,而後初步完成以後,我發現還剩下這些問題。函數
一是短信登陸,在咱們共同的嘗試下,選擇了阿里雲做爲平臺來實現短信登陸,因爲阿里公司對技術的無私展現,提供了對應的接口,咱們將其運用在代碼中,十分輕易的就調用好了,這裏很是感謝阿里公司。學習
二是此次登陸的帳號都要通過註冊,這意味這咱們須要使用數據庫來儲存每個登陸或註冊的帳號,或者使用文件流從txt文件讀取。這裏是由張唯盛同窗學習並指導了我使用IO文件流,併成功實如今代碼中,其中還有小插曲,因爲一開始張唯盛同窗並不知道JAVA UI 中的一些知識,因此是他先寫普通Java文件,而後我再來轉換到項目當中,在轉化的過程當中,我粗心將一小段邏輯寫錯,致使後期檢查的時候發現只要輸入任意的帳號密碼,系統都會讀入並判斷正確,這是不符合邏輯的,並且是在完成全部任務以後才發現,因此檢查起來很是麻煩,容易誤導咱們想到別的地方,所幸最後仍是檢查出來了。阿里雲
三是此次不只須要出題,還要生成四個答案,就是說要負責出題和作題。這部分也主要是張唯盛同窗完成的邏輯部分,我完成了其在界面中的實現,項目一開始,咱們進行了討論,以爲應該先設計一個計算小學題目的類,而後以後咱們只須要將初中和高中中特殊的算式提出來單獨計算,再將式子合成爲新的小學題目套入便可,這個過程並不算複雜,咱們經過之前學習過的算法簡單的完成了小學題目解答,但在初中和高中的部分遇到了一些小插曲:這一部分邏輯由張唯盛單獨完成,因而爲了檢驗簡單,他直接用面向過程的思想,在主函數中進行編寫,這個問題致使了後續我在套用這部分代碼的時候出現了困難,由於在改爲面向對象的過程當中有點麻煩;其次,因爲沒有事先溝通加上我的代碼風格的差別,咱們都使用了通常的命名習慣,好比排序的標記都從i開始,數字的數組都用了num,這一問題致使了咱們在拼接的時候出現了不少無心義的bug,在以後的文件流代碼套入的過程當中咱們吸收教訓完成了這個問題。設計
最後項目在咱們共同的努力下,實際上是進展的至關迅速的,很快咱們就完成了全部的工做,在解決這些問題的過程當中,咱們互相學習和進步,讓咱們都深有體會。對象