20165329 實驗三 敏捷開發與XP實踐
阿新 • • 發佈:2018-04-28
重構 學習 mach static pre ima peak nts 基礎上
20165329 實驗三 敏捷開發與XP實踐
一、敏捷開發與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的信息,並加上自己的學號水印信息。
三、完成重構內容的練習,下載搭檔的代碼,至少進行三項重構,提交重構後代碼的截圖,加上自己的學號水印。提交搭檔的碼雲項目鏈接。
重構(Refactor),就是在不改變軟件外部行為的基礎上,改變軟件內部的結構,使其更加易於閱讀、易於維護和易於變更 。
搭檔代碼(https://gitee.com/BESTI-IS-JAVA-2018/5308/blob/master/src/question.java)
interface SpeakHello{ void speak(); } public class questio { public static void main(String[] args) { HelloMachine machine = new HelloMachine(); machine.turnOn(new SpeakHello() { public void speak() { System.out.println("hello,you are welcome!"); } }); machine.turnOn(new SpeakHello() { public void speak() { System.out.printf("??"); } }); } class HelloMachine{ protected void turnOn(SpeakHello hello){ hello.speak(); } } }
以上代碼結構存在以下問題
- 類名不符合命名規則;
- 語句結構不方便閱讀;
不能從靜態上下文中引用非靜態;
四、以結對的方式完成Java密碼學相關內容的學習,結合重構、git、代碼標準等
簡單實現凱撒密碼
代碼鏈接(https://gitee.com/BESTI-IS-JAVA-2018/5329hjw/tree/master/)
20165329 實驗三 敏捷開發與XP實踐