1.本小组有3名成员 杨昊岚12061202/ 左少辉12061209/吕雨朗
2.结对编程的优点
一、能集百家之长 二、比一个人写程序有趣 三、效率高
结对编程的缺点
一、容易养成对队友的依赖性
3.参照了书中的内容,我觉得
一、Information Hiding,信息隐藏。
将程序模块化时,保证每个模块对其他所有模块都隐蔽自己的设计决策,让模块规定并设计成为在模块中包含的信息不被不需要这些信息的其他模块访问。应用有在多层设计中的层与层之间加入接口层,使所有类与类之间都通过接口类访问和 类的所有数据成员都是private,所有访问都是通过访问函数实现等。
二、Interface Design,接口设计。
软件的接口设计元素描述了信息如何流入和流出系统以及被定义为体系结构一份的构件之间是如何通信的。这次的作业中用到的主要是各种设计构件之间的内部接口,通过这些接口让软件体系结构中的构件之间进行内部通信与协作。接口实现时,保证所有操作和消息传递模式都得到实现,且不同类的操作之间能够进行通信和协作。
三、Loose Coupling,松耦合。
耦合是类之间彼此联系程度的一种定性度量。因为随着通信和协作数量的增长,类之间的联系程度越来越强,系统的复杂性也随之增长了,类之间的耦合程度也就增加了。通过增加接口,使类之间的通信协作通过接口很好的完成,保证程序尽可能保持低耦合。松耦合系统通常是基于消息的系统,此时客户端和远程服务并不知道对方是如何实现的。客户端和服务之间的通讯由消息的架构支配。只要消息符合协商的架构,则客户端或服务的实现就可以根据需要进行更改,而不必担心会破坏对方。松耦合通讯机制提供了紧耦合机制所没有的许多优点,并且它们有助于降低客户端和远程服务之间的依赖性。
4.Code Contracts--设计合同(DBC),也被称为契约编程,通过合同和合同的程序设计编程,是一个设计软件的方法。它规定的软件设计师应该定义形式,精确的、可验证的软件组件的接口规范,从而扩展的先决条件一般抽象数据类型的定义,后置条件和不变量。这些规范被称为“合同”,按照与商业契约的条件和义务概念隐喻。初步了解了设计合同的概念以及其在软件设计中的作用,所以还是试着在程序中运用到这方面的知识,所以在程序中也用到了规范的组件接口,数据类型。
5.uml
6.代码独到之处
本代码的算法囊括为以下几点:首先各电梯有状态,每时每刻都要扫电梯状态。指令来到后,调用最近的能用的电梯,能到目的地就上,然后下一条指令,不能上就将指令重回队列。电梯运行中发现顺路并且总重量和不超过电梯的总重的人就带上,不能则不带。电梯到顶层或底层改变运行方向。电梯空闲回到1层等待。