• 第五次作业(1)


    题目:

        1、请运行下面code,指出其功能;(需附运行结果截图,并用简短文字描述其功能)

        2、请将该code进行代码重构,使之模块化,并易于阅读和维护;

        3、观看视频The Expert (Short Comedy Sketch),写出观后感(内容是什么,说明了什么问题,有什么启示),提交到博客!

        4、学习在项目中使用 jar 文件:

         (1)在下列code中导入jar文件“commons-lang3-3.3.2.jar”,并运行,将运行结果截图提交到博客:

    答:1.功能:随机获取列表里的三个姓和三个名,然后再随机生成三个18到38之间的数作为年龄。

            截图:

          

          2.

    import java.util.ArrayList;
    import java.util.List;
    import java.util.Random;
    
    
    public class Driver {
    
        private static String[] lastNames = {"Doe", "Smith", "Jones", "Adams", "Marshall", "Thompson", "Bradley", "Brown", "White", "Franklin", "Davis", "Cohn", "Clark"};
        private static String[] firstNames = {"Mary", "John", "Susan", "Michael", "David", "Lisa", "Wendy", "Diane", "Kelly", "Claire", "Elizabeth", "Mitchell", "Richard"};
    
        public static void main(String[] args) {
            
            // create an empty list
            List<Student> studentList = new ArrayList<Student>();
    
            // initialize random generator
            Random random = new Random();
            
            generatestudent(studentList, random);
            
            systemstudent(studentList);
    
       }
    
    	private static void systemstudent(List<Student> studentList) {
    		//print out the students
    		for (Student temp : studentList) {
    		    System.out.println(temp);
    		    
    		}
    	}
    
    	private static void generatestudent(List<Student> studentList, Random random) {
    		// create random number of students
            for (int i=0; i < 3; i++) {
    
                // get random first name
                String tempFirstName = firstNames[random.nextInt(firstNames.length)];
                
                // get random last name
                String tempLastName = lastNames[random.nextInt(lastNames.length)];
                
                // get random age
                int age = 18 + random.nextInt(20);
    
                // create student
                Student tempStudent = new Student(tempLastName, tempFirstName, age);
                
                // add them to the list
                studentList.add(tempStudent);
            }
    	}
    
    }
    

      

          3. 这个视频主要就是一个需求分析,即通过与用户交流,获取信息。这个视频主要讲的是一个公司要做一个新品,对开发人员提出以下要求:画七根红线,一些用绿色墨水画,一些用透明墨水画,这七根线要两两垂直。于是接受任务的大老板把任务交给项目经理,项目经理把任务交给工程师(即直接开发人员),在整个交流过程中,工程师觉得每个任务都不可能完成,而项目经理觉得工程师就是专家,什么任务都能完成。

             我看了这个视频,我觉得这种现象在现在是很普遍的。

             首先,从开发者与用户的交流上来看,用户的需求表达不是很清楚,只理解表面层次的东西,而没有考虑过能否实现,没有明确产品完成后希望体现什么效果,以及开发者也没有理解用户的要求,没有明确获取用户所提供的信息,用户提出的要求不可能完成,而负责开发的公司却接受了任务,觉得工程师就是专家,就是无所不能,只要用户提出了要求,他就一定能完成,这明显是不合理的。

             其次,从工程师自身的角度来看,他应该将不可能完成的各个点提出来,把思想告诉客户,让客户更加明确自己想要的是什么,而不是顺从领导接受任务。然后从项目经理和大老板的角度来看,他们几乎什么都不懂,却盲目接受任务,不考虑能否实现,不考虑若实现不了的信誉问题,这是错误的,还觉得工程师就是专家,就应该什么都会,这也是错误的,他们不懂就更应该听工程师的建议,而不是盲目接受。

             最后从用户角度来看,用户和她的设计师也是什么都不懂,自己没有明确自己的要什么产品,她们可以提出自己的想法,但应该听取工程师的反馈,考虑可行性,更加需要明确自己的需求。这个视频同时也启示了我们,作为一名工程师,应当衡量的能力,在自己所能达到的范围内去接受任务,同时要与用户有正确的沟通,以获得更加详细清楚的用户需求,完成用户所期望的产品。

         4. 导入:

            

            运行:

            

         

  • 相关阅读:
    管道
    linux基本网络配置
    201671010130 201620172 《Java程序设计》第三周学习小结
    201671010130 201620172 《Java程序设计》第二周学习小结
    201671010130 201620172 《Java程序设计》第五周学习小结
    201671010130 201620172 《Java程序设计》首次与Java打交道
    朵的面向对象程序设计课程学习进度条
    201671010130 201620172 《Java程序设计》第六七周学习小结
    201671010130 201620172 《Java程序设计》第四周学习小结
    Note of Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14
  • 原文地址:https://www.cnblogs.com/tujiangfeng/p/4512681.html
Copyright © 2020-2023  润新知