zoukankan      html  css  js  c++  java
  • 20175333曹雅坤 实验三敏捷开发与XP实践《Java开发环境的熟悉》实验报告

    20175333曹雅坤 实验三敏捷开发与XP实践《Java开发环境的熟悉》实验报告

    敏捷开发与XP实践-1

    实验目的与要求:

    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 Line Comment )Ctrl + /
      块注释 ( 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)));
        }
    }
    

    码云链接

    搭档
    自己

  • 相关阅读:
    关于selenium无法在chrome中自动播放flash的问题
    网鼎杯题目“phone”--十六进制mysql注入
    (转)宽字节编码类型的XSS
    为什么在留言处插入<script>alert(1)</script>不弹框
    同源策略和跨域的理解
    (转)调皮的location.href
    (转)GET来的漏洞
    WEB应用安全设计思想.pdf
    Browser Security-超文本标记语言(HTML)
    大家来聊聊如何PASS 360
  • 原文地址:https://www.cnblogs.com/Hf-Hf/p/10804947.html
Copyright © 2011-2022 走看看