20165336 Experiment 3 Agile Development and XP Practice

20165336 Experiment 3 Agile Development and XP Practice

The cover of the lab report

Course: Java Programming Class: Class 1653 Name: Kang Zhiqiang Student ID: 20165336

Instructor: Lou Jiapeng Experiment Date: April 28, 2018

Experiment time: 13:45 - 15:25 Experiment number: Experiment 3

Experiment Name: Agile Development and XP Practice

2. Experimental requirements

1. Students without Linux foundation are advised to study the courses of "Introduction to Linux Basics (New Edition)" and "Vim Editor"

2. Complete the experiment, write the experimental report, and publish the experimental report in the blog park in the form of a blog. Note that the experimental report focuses on the running results and the problems encountered (tool search, installation, use, program editing, debugging, running, etc.), solving Methods (empty methods such as "checking the Internet", "asking classmates", "reading books", etc., all get 0 points) and analysis (what enlightenment can be obtained from it, what are the gains, lessons, etc.). The report can refer to the guidance of Mr. Fan Feilong

3.XP foundation, XP core practice, related tools.

4. Plagiarism is strictly prohibited.

3. Experimental steps

Submit point one

Knowledge points:

  • Refactoring is to change the internal structure of the software to make it easier to read, maintain and change without changing the external behavior of the software.
  • A complete refactoring process includes:
    1. Check out code from the version control system code base
    2. Read the code (including test code)
    3. Discover bad smells
    4. Refactoring
    5. Run all Unit Tests
    6. Go to the code base Check in code

    Submit Point Request

    Use the tool (Code->Reformate Code) in IDEA to reformat the following code, and then study the Code menu to find a function that makes you feel the best. Submit a screenshot and add your student ID watermark.
    Result screenshot:

Submit point two

Knowledge point:
Add your learning partner to your own project on the code cloud. After confirming that the partner's project is added to your own, download the Complex code of partner experiment 2, add no less than three JUnit unit test cases, and git add after the test is successful. .; git commit -m "Add content to your student number"; git push;
Screenshot of the result:

Submit point three

Knowledge points:

Result screenshot:

Submit point four

Knowledge points:

Java and Cryptography

The Java security architecture is divided into 4 parts:

  • JCA (Java Cryptography Architecture, Java Cryptography Architecture): JCA provides basic encryption framework, such as certificate, digital signature, message digest and key pair generator.
  • JCE (Java Cryptography Extension, Java Encryption Extension Package): JCE is extended on the basis of JCA, and provides various encryption algorithms, message digest algorithms and key management functions. The implementation of JCE is mainly in the javax.crypto package (and its subpackages)
  • JSSE (Java Secure Sockets Extension, Java Secure Sockets Extension): JSSE provides encryption based on SSL (Secure Sockets Layer, Secure Sockets Layer). In the process of network transmission, information will pass through multiple hosts (it is very likely that one of them will be eavesdropped), and finally transmitted to the receiver, which is not safe. This service to ensure network communication security is provided by JSSE.
  • JAAS (Java Authentication and Authentication Service, Java Authentication and Security Service): JAAS provides the function of user authentication on the Java platform.
    Result screenshot:

code hosting

Fourth, the problems encountered

  • 1. When using the code specification, you need to select the code, otherwise it cannot be refactored.

5. Experiment impressions

 这次JAVA实验让我掌握了重构这项技能,它可以帮我使代码更加优化规范,这对一个好的程序来说是必不可少的,JAVA与密码学的紧密联系让我对JAVA的认识有了更深一步的了解,这次实验让我认识到我部分知识的不足,这使我受益匪浅。

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=325010153&siteId=291194637