實驗三 敏捷開發與XP實踐 http://www.cnblogs.com/rocedu/p/4795776.html, Eclipse的內容替換成IDEAhtml
參考 http://www.cnblogs.com/rocedu/p/6371315.html#SECCODESTANDARD 安裝alibaba 插件,解決代碼中的規範問題。java
在IDEA中使用工具(Code->Reformate Code)把下面代碼從新格式化,再研究一下Code菜單,找出一項讓本身感受最好用的功能。提交截圖,加上本身學號水印。android
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)); } }
修改前:git
修改後:編程
使用code->Reformat對齊後:網絡
Code菜單中我感受最好用的功能是Generate,能迅速產生getter、setter、equals等方法;app
在碼雲上把本身的學習搭檔加入本身的項目中,確認搭檔的項目加入本身後,下載搭檔實驗二的Complex代碼,加入很多於三個JUnit單元測試用例,測試成功後git add .; git commit -m "本身學號 添加內容";git push;ide
提交搭檔項目git log的截圖,包含上面git commit的信息,並加上本身的學號水印信息。工具
Complex測試成功:性能
已經將改動上傳至搭檔的碼雲:
git log日誌:
實驗三 敏捷開發與XP實踐 http://www.cnblogs.com/rocedu/p/4795776.html, Eclipse的內容替換成IDEA
完成重構內容的練習,下載搭檔的代碼,至少進行三項重構,提交重構後代碼的截圖,加上本身的學號水印。提交搭檔的碼雲項目連接。
當我看完了搭檔的Fushu.java
代碼以後,我發現了不少須要優化的地方。
完成實驗項目二的文件Fushu.java
碼雲連接以下:
我將本身的幾點想法總結以下:
Fushu
這個類徹底是多餘的,沒有必要把他做爲內部類Complex
的外嵌類;Fushu
這個類,其中的main
方法的主要目的實際上是爲了進行測試;toString
類最好能規範爲Generate
生成的默認格式;基於這三點想法,我逐漸造成了本身的重構思路。完成重構後的代碼截圖(部分):
上傳日誌截圖:
碼雲連接:
20165320Gst丶Paul / BESTI.IS.Java2018 / exp2 / Complex /
參考 http://www.cnblogs.com/rocedu/p/6683948.html,以結對的方式完成Java密碼學相關內容的學習,結合重構,git,代碼標準。
提交學習成果碼雲連接和表明性成果截圖,要有學號水印。
https://gitee.com/BESTI-IS-JAVA-2018/20165325/tree/master/Exp3_Des
在下載alibaba 插件時出現以下錯誤:
Plugin Alibaba Java Coding Guidelines was not installed: Cannot download'https://plugins.jetbrains.com/pluginManager/?action=download&;id=com.alibaba.p3c.smartfox&build=IU-172.4343.14&uuid=9f9fc264-a025-47ed-9bdc-c12871794d1c': Read timed out
如圖所示:
個人解決方案是:把電腦的網絡由宿舍網換成了手機WiFi熱點,不要笑我,這彷佛確實是網絡的問題,參考連接:《阿里巴巴Java開發手冊》掃描插件正式發佈--插件安裝和使用分析
可是安裝以後,發現仍是不行,我真NC了,上面錯誤明顯是 Read timed out ! 因而我立刻斷開個人wifi,用我手機開了個熱點,一試以後,下載蹭蹭的!開心! 【總結:如何報這個錯誤,請檢查網絡】
因此說彷佛確實是網絡的問題,另外文中提到:
IDEA版的插件 : 咱們發佈到了IDEA官方倉庫中(最低支持版本14.1.7,JDK1.7+)
這個也可能致使錯誤(不過個人版本沒問題,排除這種可能性)。
git log
功能只能看在本機上傳(或同步)的commit日誌。在本次實驗的第二項中,咱們起初覺得一我的上傳之後,兩我的都能用git log
看見碼雲的commit日誌,實際上只有上傳者能看見。
老師的連接給的是關於Eclipse的重構,關於IDEA的重構我本身在網上找到了一些資料,總結以下:
重命名文件、方法、屬性等(rename):SHIFT+F6 提取當前選擇爲變量(extract variable):CTRL+ALT+V 提取當前選擇爲屬性(extract field):CTRL+ALT+F 提取當前選擇爲常量(extract constant):CTRL+ALT+C 提取當前選擇爲方法(extract method):CTRL+ALT+M 提取當前選擇爲方法參數(extract parameter):CTRL+ALT+P 重構類、方法(change signarture):CTRL+F6 提取代碼塊至if、try等結構中(surround with):CTRL+ALT+T 建立模塊文件等(new):CTRL+ALT+N 建立測試用例(test):CTRL+SHIFT+T 重構菜單(refactor for this):CTRL+T
以前在作結對編程的時候遇到了這個關於StringBuffer的問題,此次再次出錯,總結一下:
那麼如今咱們來「亡羊補牢」:
首先淺談一下String
和StringBuffer
的幾點區別:
String
是final
類,不容許繼承,對於append
這樣的操做只能新建new String
,而StringBuffer
是可變類,不須要從新new StringBuffer
,因此在字符串操做上性能很是好。String
的equals
方法由於重寫了Object
的equals
方法,因此能夠比較字符串的內容,而StringBuffer
由於沒重寫equals
方法,直接繼承了Object
的equals
方法,因此不行。那麼如何比較StringBuffer
字符串內容是否相等呢?
總結一下:可使用toString()
方法將StringBuffer
的內容轉換爲String
字符串,再使用equals()
方法比較。
實際上這是關於Android Studio
的東西,我暫時先放在這一篇博客裏面。
剛剛安裝好了Android Studio
之後,以一次打開出現了錯誤代碼:
unable to access android sdk-on list
在老師的博客指導裏面讓咱們下載SDK,其實咱們可讓Android Studio
本身下載,所以在下圖中你只須要點cancel
就行。