结对项目作业

我的结对项目伙伴是董元财,学号13061179

一、结对编程优缺点

结对编程的优点:

1.结对编程能够对结对的两人起到互相促进互相监督的作用,提高个人的工作效率;

2.结对编程使两人共享一份代码,更容易找出代码中存在的bug;

3.结对编程能够锻炼两人的沟通交流能力,为之后的团队合作打下基础。

结对编程的缺点:

1.如果两人工作都不积极就会导致互相拖延,工作效率低下。

 二、结对伙伴优缺点:

我自己的优点:

1.码代码能力较高,对c#语言熟练掌握;

2.对结对分工明确,工作效率高;

3.工作认真,责任心强。

我自己的缺点:

1.沟通方面稍有不足。

结对伙伴的优点:

1.擅长界面编程;

2.善于学习新技术;

3.能钻研。

结对伙伴的缺点:

1.不太擅长算法。

三、信息隐藏(Information Hiding)原则

信息隐藏是结构化设计与面向对象设计的基础。在结构化中函数的概念和面向对象的封装思想都来源于信息隐藏。

“In computer science, information hiding is the principle of segregation of the design decisions in a computer program that are most likely to change, thus protecting other parts of the program from extensive modification if the design decision is changed. The protection involves providing a stable interface which protects the remainder of the program from the implementation (the details that are most likely to change).

Written another way, information hiding is the ability to prevent certain aspects of a class or software component from being accessible to its clients, using either programming language features (like private variables) or an explicit exporting policy.”——摘自wiki

以下列举了一些信息隐藏原则的应用。

     1.多层设计中的层与层之间加入接口层;

     2.所有类与类之间都通过接口类访问;

     3.类的所有数据成员都是private,所有访问都是通过访问函数实现的。

四、用户界面(Interface design)

用户界面设计是屏幕产品的重要组成部分。界面设计是一个复杂的有不同学科参与的工程,认知心理学、设计学、语言学等在此都扮演着重要的角色。

“User interface design (UI) or user interface engineering is the design of user interfaces for machines and software, such as computers, home appliances, mobile devices, and other electronic devices, with the focus on maximizing the user experience. The goal of user interface design is to make the user's interaction as simple and efficient as possible, in terms of accomplishing user goals (user-centered design).”——摘自wiki

用户界面设计的三大原则是:

  1.置界面于用户的控制之下;

  2.减少用户的记忆负担;

  3.保持界面的一致性。

五、松耦合(Lossiely coupling)

具有中立的接口定义(没有强制绑定到特定的实现上)的特征称为服务之间的松耦合。松耦合系统的好处有两点,一点是它的灵活性,另一点是,当组成整个应用程序的每个服务的内部结构和实现逐渐地发生改变时,它能够继续存在。SOA的一个关键特征是使用松散耦合连接。

“In computing and systems design a loosely coupled system is one in which each of its components has, or makes use of, little or no knowledge of the definitions of other separate components. Sub-areas include the coupling of classes, interfaces, data, and services.”——摘自wiki

六、代码覆盖率

 七、UML图

原文地址:https://www.cnblogs.com/geminy/p/4858537.html