20165307 實驗三 敏捷開發與XP實踐
阿新 • • 發佈:2018-05-06
實驗 for comm com CI 感覺 基本 java 分享
一、敏捷開發與XP實踐-1
實驗要求:
在IDEA中使用工具(Code->Reformate Code)把下面代碼重新格式化,再研究一下Code菜單,找出一項讓自己感覺最好用的功能。提交截圖,加上自己學號水印。
public class CodeStandard { public static void main(String [] args){ StringBuffer buffer = new StringBuffer(); buffer.append(‘S‘); buffer.append("tringBuffer"); System.out.println(buffer.charAt(1)); System.out.println(buffer.capacity()); System.out.println(buffer.indexOf("tring")); System.out.println("buffer = " + buffer.toString()); if(buffer.capacity()<20) buffer.append("1234567"); for(int i=0; i<buffer.length();i++) System.out.println(buffer.charAt(i)); } }
Code菜單的功能學習
- Implement Methods(Ctrl+I)完成當前類 implements 的(或者抽象基本類的)接口的方法;
- Override Methods(Ctrl+O)重載基本類的方法;
- Generate(Alt+Insert)創建類裏面任何字段的 getter 與 setter 方法;
Reformat Code(Ctrl+Alt+L)將代碼按標準格式縮進;
二、敏捷開發與XP實踐-2
實驗要求在碼雲上把自己的學習搭檔加入自己的項目中,確認搭檔的項目加入自己後,下載搭檔實驗二的Complex代碼,加入不少於三個JUnit單元測試用例,測試成功後git add .; git commit -m "自己學號 添加內容";git push;提交搭檔項目git log的截圖,包含上面git commit的信息,並加上自己的學號水印信息。
三、敏捷開發與XP實踐-3
實驗要求
- 完成重構內容的練習,下載搭檔的代碼,至少進行三項重構,提交重構後代碼的截圖,加上自己的學號水印。提交搭檔的碼雲項目鏈接。
重構(Refactor),就是在不改變軟件外部行為的基礎上,改變軟件內部的結構,使其更加易於閱讀、易於維護和易於變更。
搭檔代碼https://gitee.com/1245821291/javabestiis20165311_li_jiaxin/blob/master/20165311/%E7%BB%84%E5%90%88%E6%95%B0/zuheshu.java
public class zuheshu { public static void main(String[] args) { try { int n= Integer.parseInt(args[0]); int m= Integer.parseInt(args[1]); if (m >= 0 && n > 0 && m <= n) { int[][] a = new int[n + 1][n + 1]; int i = 0, j = 0,b = 0,count = 0; for (i = 0; i <= n; i++) { for (j = 0; j <= i; j++) { if (j > 0 && j < i) a[i][j] = a[i - 1][j - 1] + a[i - 1][j]; if (j == 0 || j == i) { a[i][j] = 1; } } } System.out.println("C(n,m)的值為:" + a[n][m]); } else System.out.println("輸入錯誤:組合數n必須大於m"); } catch(Exception e) { System.out.println("輸入的不是數字"); } } }
以上代碼結構存在以下問題
- 類名不符合命名規則;
- 語句結構不方便閱讀;
- 定義了冗余變量;
四、敏捷開發與XP實踐-4
實驗要求
- 以結對的方式完成Java密碼學相關內容的學習,結合重構、git、代碼標準等
簡單實現凱撒密碼
20165307 實驗三 敏捷開發與XP實踐