20175333曹雅坤 實驗三敏捷開發與XP實踐《Java開發環境的熟悉》實驗報告
阿新 • • 發佈:2019-05-03
lips round formate decimal git ctrl+ -a 敏捷 實驗報告
20175333曹雅坤 實驗三敏捷開發與XP實踐《Java開發環境的熟悉》實驗報告
敏捷開發與XP實踐-1
實驗目的與要求:
- http://www.cnblogs.com/rocedu/p/4795776.html, Eclipse的內容替換成IDEA
- 參考 http://www.cnblogs.com/rocedu/p/6371315.html#SECCODESTANDARD 安裝alibaba 插件,解決代碼中的規範問題。
- 在IDEA中使用工具(Code->Reformate Code)把下面代碼重新格式化,再研究一下Code菜單,找出一項讓自己感覺最好用的功能。提交截圖,加上自己學號水印。
public class CodeStandard { public static void main(String [] args){ StringBuffer buffer = new StringBuffer(); buffer.append('S'); buf![](https://img2018.cnblogs.com/blog/1272669/201905/1272669-20190502160118003-975536005.png) fer.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)); } }
實驗步驟
Settings
->Plugins
-> Browse repositories...
——安裝alibaba。
檢查代碼
格式化之後
好用功能
實現接口方法(Implements Methods):Ctrl + I
Gengrate:Alt + Insert
Surround With:Ctrl+Alt+T
智能選擇並實現(SmartType):Ctrl + Shift + 空格
方法展開 ( Expand) Ctrl + 加號
方法折疊 (Collapse)Ctrl + 減號
展開Java doc註釋 ( Expand doc comments )
折疊Java doc註釋 ( Collapse doc comments )
塊註釋 ( Comment with Block Comment ) Ctrl + Shift + /
格式化代碼 (Reformat Code ) Ctrl + Alt + L
重新整理代碼 (Rearrange Code)敏捷開發與XP實踐-2
在碼雲上把自己的學習搭檔加入自己的項目中,確認搭檔的項目加入自己後,下載搭檔實驗二的Complex代碼,加入不少於三個JUnit單元測試用例,測試成功後git add .; git commit -m "自己學號 添加內容";git push;
提交搭檔項目git log的截圖,包含上面git commit的信息,並加上自己的學號水印信息。
實驗步驟
加入倉庫
效果
單元測試
- git log
- 代碼
import java.text.DecimalFormat;
public class Complex {
double RealPart;
double ImagePart;
public Complex(){
}
public Complex(double R,double I){
RealPart = R;
ImagePart = I;
}
public void setter(double R,double I){
RealPart = R;
ImagePart = I;
}
public double getterRealPart(){
return RealPart;
}
public double getterImagePart(){
return ImagePart;
}
@Override
public boolean equals(Object obj){
if(this==obj){
return true;
}
else
{
return false;
}
}
@Override
public String toString(){
String s = "";
if(getterRealPart()==0&&getterImagePart()==0){
s="0";
}
else if(getterRealPart()!=0&&getterImagePart()==0){
s=s+getterRealPart();
}
else if (getterRealPart()==0&&getterImagePart()!=0){
s=s+getterImagePart()+"i";
}
else
{
if(getterImagePart()<0){
s = s+getterRealPart()+getterImagePart()+"i";
}
else {
s = s+getterRealPart()+"+"+getterImagePart()+"i";
}
}
return s;
}
public Complex ComplexAdd(Complex a){
return new Complex((getterRealPart()+a.getterRealPart()),(getterImagePart()+a.getterImagePart()));
}
public Complex ComplexSub(Complex a){
return new Complex((getterRealPart()-a.getterRealPart()),(getterImagePart()-a.getterImagePart()));
}
public Complex ComplexMulti(Complex a){
double imaginePart = getterRealPart()*a.getterImagePart()+getterImagePart()*a.getterRealPart();
double realPart = getterRealPart()*a.getterRealPart()-getterImagePart()*a.getterImagePart();
return new Complex(realPart,imaginePart);
}
public Complex ComplexDiv(Complex a) throws Exception {
double imaginePart = -getterRealPart()*a.getterImagePart()+getterImagePart()*a.getterRealPart();
double realPart = getterRealPart()*a.getterRealPart()+getterImagePart()*a.getterImagePart();
double div = a.getterRealPart()*a.getterRealPart()+a.getterImagePart()*a.getterImagePart();
if(div==0){
throw new Exception();
}
realPart = realPart/div;
imaginePart = imaginePart/div;
DecimalFormat decimalFormat = new DecimalFormat("0.0");
return new Complex(Double.valueOf(decimalFormat.format(realPart)),Double.valueOf(decimalFormat.format(imaginePart)));
}
}
敏捷開發與XP實踐-3
- http://www.cnblogs.com/rocedu/p/4795776.html, Eclipse的內容替換成IDEA
完成重構內容的練習,下載搭檔的代碼,至少進行三項重構,提交重構後代碼的截圖,加上自己的學號水印。提交搭檔的碼雲項目鏈接。
實驗內容及結果截圖:
添加創建者信息
給覆寫方法加上@Override註解
方法名,參數名,成員變量,局部變量都統一使用lowerCamelCase,遵從駝峰形式
- 規範後代碼
/**
* @author caoyakun
* @date 2019/5/3
*/
import java.text.DecimalFormat;
public class Complex {
double RealPart;
double ImagePart;
public Complex() {
}
public Complex(double R, double I) {
RealPart = R;
ImagePart = I;
}
public void setter(double R, double I) {
RealPart = R;
ImagePart = I;
}
public double getterRealPart() {
return RealPart;
}
public double getterImagePart() {
return ImagePart;
}
@Override
public boolean equals(Object obj) {
if (this == obj) {
return true;
} else {
return false;
}
}
@Override
public String toString() {
String s = "";
if (getterRealPart() == 0 && getterImagePart() == 0) {
s = "0";
} else if (getterRealPart() != 0 && getterImagePart() == 0) {
s = s + getterRealPart();
} else if (getterRealPart() == 0 && getterImagePart() != 0) {
s = s + getterImagePart() + "i";
} else {
if (getterImagePart() < 0) {
s = s + getterRealPart() + getterImagePart() + "i";
} else {
s = s + getterRealPart() + "+" + getterImagePart() + "i";
}
}
return s;
}
public Complex ComplexAdd(Complex a) {
return new Complex((getterRealPart() + a.getterRealPart()), (getterImagePart() + a.getterImagePart()));
}
public Complex ComplexSub(Complex a) {
return new Complex((getterRealPart() - a.getterRealPart()), (getterImagePart() - a.getterImagePart()));
}
public Complex ComplexMulti(Complex a) {
double imaginePart = getterRealPart() * a.getterImagePart() + getterImagePart() * a.getterRealPart();
double realPart = getterRealPart() * a.getterRealPart() - getterImagePart() * a.getterImagePart();
return new Complex(realPart, imaginePart);
}
public Complex ComplexDiv(Complex a) throws Exception {
double imaginePart = -getterRealPart() * a.getterImagePart() + getterImagePart() * a.getterRealPart();
double realPart = getterRealPart() * a.getterRealPart() + getterImagePart() * a.getterImagePart();
double div = a.getterRealPart() * a.getterRealPart() + a.getterImagePart() * a.getterImagePart();
if (div == 0) {
throw new Exception();
}
realPart = realPart / div;
imaginePart = imaginePart / div;
DecimalFormat decimalFormat = new DecimalFormat("0.0");
return new Complex(Double.valueOf(decimalFormat.format(realPart)), Double.valueOf(decimalFormat.format(imaginePart)));
}
}
碼雲鏈接
搭檔
自己
20175333曹雅坤 實驗三敏捷開發與XP實踐《Java開發環境的熟悉》實驗報告