2017-2018-2 1723《程序設計與數據結構》實驗四 & 實驗五 & 課程總結 總結

做業地址





做業要求

實驗四:網絡

  • (1)Android Stuidio的安裝測試:
    • 參考《Java和Android開發學習指南(第二版)(EPUBIT,Java for Android 2nd)》第二十四章:
    • 參考 http://www.cnblogs.com/rocedu/p/6371315.html#SECANDROID ,安裝 Android Stuidio
    • 完成 Hello World, 要求修改res目錄中的內容,Hello World 後要顯示本身的學號,本身學號先後一名同窗的學號,提交代碼運行截圖和碼雲Git連接,截圖沒有學號要扣分
    • 學習 Android Stuidio 調試應用程序
  • (2)Activity測試
    • 參考《Java和Android開發學習指南(第二版)(EPUBIT,Java for Android 2nd)》第二十五章:
    • 構建項目,運行教材相關代碼
    • 建立 ThirdActivity, 在ThirdActivity中顯示本身的學號,修改代碼讓MainActivity啓動ThirdActivity
  • (3)UI測試
    • 參考《Java和Android開發學習指南(第二版)(EPUBIT,Java for Android 2nd)》第二十六章:
    • 構建項目,運行教材相關代碼
    • 修改代碼讓Toast消息中顯示本身的學號信息
  • (4)佈局測試: 參考《Java和Android開發學習指南(第二版)(EPUBIT,Java for Android 2nd)》第二十七章:
    • 構建項目,運行教材相關代碼
    • 修改佈局讓P290頁的界面與教材不一樣
  • (5)事件處理測試: 參考《Java和Android開發學習指南(第二版)(EPUBIT,Java for Android 2nd)》第二十八章:
    • 構建項目,運行教材相關代碼
    • 提交代碼運行截圖和碼雲Git連接,截圖要有學號水印,不然會扣分


實驗五:數據結構

(1)任務1:兩人一組結對編程:socket

  1. 參考:http://www.cnblogs.com/rocedu/p/6766748.html#SECDSA
  2. 結對實現中綴表達式轉後綴表達式的功能 MyBC.java
  3. 結對實現從上面功能中獲取的表達式中實現後綴表達式求值的功能,調用MyDC.java
  4. 上傳測試代碼運行結果截圖和碼雲連接

(2)任務2:結對編程:1人負責客戶端,一人負責服務器佈局

  1. 注意責任歸宿,要會經過測試證實本身沒有問題
  2. 基於Java Socket實現客戶端/服務器功能,傳輸方式用TCP
  3. 客戶端讓用戶輸入中綴表達式,而後把中綴表達式調用MyBC.java的功能轉化爲後綴表達式,把後綴表達式經過網絡發送給服務器
  4. 服務器接收到後綴表達式,調用MyDC.java的功能計算後綴表達式的值,把結果發送給客戶端
  5. 客戶端顯示服務器發送過來的結果
  6. 上傳測試結果截圖和碼雲連接

(3)任務3:加密結對編程:1人負責客戶端,一人負責服務器

  1. 注意責任歸宿,要會經過測試證實本身沒有問題
  2. 基於Java Socket實現客戶端/服務器功能,傳輸方式用TCP
  3. 客戶端讓用戶輸入中綴表達式,而後把中綴表達式調用MyBC.java的功能轉化爲後綴表達式,把後綴表達式用3DES或AES算法加密後經過網絡把密文發送給服務器
  4. 服務器接收到後綴表達式表達式後,進行解密(和客戶端協商密鑰,能夠用數組保存),而後調用MyDC.java的功能計算後綴表達式的值,把結果發送給客戶端
  5. 客戶端顯示服務器發送過來的結果
  6. 上傳測試結果截圖和碼雲連接

(4)任務4:密鑰分發結對編程:1人負責客戶端,一人負責服務器

  1. 注意責任歸宿,要會經過測試證實本身沒有問題
  2. 基於Java Socket實現客戶端/服務器功能,傳輸方式用TCP
  3. 客戶端讓用戶輸入中綴表達式,而後把中綴表達式調用MyBC.java的功能轉化爲後綴表達式,把後綴表達式用3DES或AES算法加密經過網絡把密文發送給服務器
  4. 客戶端和服務器用DH算法進行3DES或AES算法的密鑰交換
  5. 服務器接收到後綴表達式表達式後,進行解密,而後調用MyDC.java的功能計算後綴表達式的值,把結果發送給客戶端
  6. 客戶端顯示服務器發送過來的結果
  7. 上傳測試結果截圖和碼雲連接

(5)任務5:完整性校驗結對編程:1人負責客戶端,一人負責服務器

  1. 注意責任歸宿,要會經過測試證實本身沒有問題
  2. 基於Java Socket實現客戶端/服務器功能,傳輸方式用TCP
  3. 客戶端讓用戶輸入中綴表達式,而後把中綴表達式調用MyBC.java的功能轉化爲後綴表達式,把後綴表達式用3DES或AES算法加密經過網絡把密文和明文的MD5値發送給服務器
  4. 客戶端和服務器用DH算法進行3DES或AES算法的密鑰交換
  5. 服務器接收到後綴表達式表達式後,進行解密,解密後計算明文的MD5值,和客戶端傳來的MD5進行比較,一致則調用MyDC.java的功能計算後綴表達式的值,把結果發送給客戶端
  6. 客戶端顯示服務器發送過來的結果
  7. 上傳測試結果截圖和碼雲連接


課程總結:



做業問題

  • 關於實驗四的總結

    本次實驗主要在於讓同窗們實踐學習Android應用程序開發的基本操做,瞭解開發中Java語言的用法。從本次實驗的結果來看,絕大部分同窗都能自主完成實驗既定內容而且有所拓展,本次實驗在Android開發的基礎上增長了前期課程中的內容,在這種Android程序與簡單Java程序的結合中進一步提升了同窗們的編程水平!


  • 關於實驗五的總結

    經過第五次實驗同窗們一方面掌握了socket編程的基本思想,能經過結對編程的方式自主編寫了客戶端服務器程序。另外一方面經過實現對socket程序傳輸的明文進行加密的實驗,學會了多重基本基於文件加解密的方法!本次實驗大部分同窗能按要求完成,部分同窗感到有些吃力,但願部分感到吃力同窗能課下用功跟上進度!


  • 關於課程總結博客的總結

    能夠看得出來,大部分同窗在本學期收穫頗大且有一半的同窗博客寫得很用心,小部分同窗也有堅持背單詞,很好,大家在博客中提到的比較廣泛的建議也已經反饋給王老師。


【附1】本次成績詳見:第 12 周 - 成績(實驗4、實驗5、Android三個實踐、Socket編程)

【附2】本次做業中遇到的部分問題 & 解答詳見:第 12 周 - 做業問題與解答



優秀做業




助教小結

  (小助教 - 張旭升)在檢查最後的做業的過程當中感受部分同窗對待最後幾回做業已經沒有以前那麼認真了,也許是期末臨近你們還有其餘科目須要複習的緣由,但我做爲助教仍是但願你們對待程序設計這種專業基礎課程可以從一而終,認真對待每一次做業。

  自此本學期程序設計課程全部的課程任務已完成,本學期做爲助教也做爲大家的學長我真心感受與大家相處很是愉快,這是本學期最後一次發言,預祝你們期末能有個好成績,咱們下學期再見!


  (小助教 - 劉偉康)成績只是一種反映結果的形式,這門課更注重的是作的過程,我我的認爲這門課更多考驗的是獨立解決問題的能力、遇到問題時須要的抗壓承受能力以及寫博客時須要的提煉表達能力。

  每次的博客我都能感覺到同窗們學習的熱情和堅持,每逢週末放假時、考試前、過生日的時候還在孜孜不倦地敲着代碼、寫着博客,有同窗老是能保持住這種學習的動力,感謝大家在博客園的每一次迴應,但願同窗們能繼續堅持學習Java,繼續堅持背單詞。

  很榮幸能在本學期擔任同窗們的助教,不論此時的你處於怎樣的狀態,排名如何,失敗了,不要緊,重振旗鼓,從頭再來,成功了,望再接再礪,更進一步,繼續嘗試,加油!

相關文章
相關標籤/搜索