设计模式题库以及答案.doc

设计模式题库以及答案.doc

ID:50950627

大小:45.50 KB

页数:8页

时间:2020-03-16

设计模式题库以及答案.doc_第1页
设计模式题库以及答案.doc_第2页
设计模式题库以及答案.doc_第3页
设计模式题库以及答案.doc_第4页
设计模式题库以及答案.doc_第5页
资源描述:

《设计模式题库以及答案.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、一、选择题(20分,20个)二、简答题(30分,6个)1、框架的定义是框架就是一组相互协作的类,对于特定的一类软件,框架构成了一种可重用的设计。2、架构是一个软件系统从整体到部分的最高层次的划分。架构包括架构元件(ArchitectureComponent)、联结器(Connector)、任务流(Task-flow)3、架构的目标:可靠性、安全性、可拓展性、可定制化、可维护性、客户体验、市场时机4、架构分成三种:逻辑架构、物理架构、系统架构5、架构的两要素:元件划分、设计决定6、设计模式是一系列在实践中总结出

2、来的可复用的面向对象的软件设计方法7、划分三种不同层次的模式:架构模式(ArchitecturalPattern)、设计模式(DesignPattern)、成例(Idiom)。成例有时称为代码模式(CodingPattern)。8、创建型设计模式,如工厂方法(FactoryMethod)模式、抽象工厂(AbstractFactory)模式、原型(Prototype)模式、单例(Singleton)模式,建造(Builder)模式9、结构型设计模式,如合成(Composite)模式、装饰(Decorator)模

3、式、代理(Proxy)模式、享元(Flyweight)模式、门面(Facade)模式、桥梁(Bridge)模式10、架构模式描述软件系统里的基本的结构组织或纲要11、常见的架构模式:分层模式、黑板模式、中介模式、分散过程模式、微核模式12、框架与架构之间的关系:架构确定了系统整体结构、层次划分,不同部分之间的协作等设计考虑。框架比架构更具体。更偏重于技术涉嫌。确定框架后,软件体系结构也随之确定,而对于同一软件体系结构(比如Web开发中的MVC),可以通过多种框架来实现13、框架与设计模式之间的关系:设计模式研

4、究的是一个设计问题的解决方法,一个模式可应用于不同的框架和被不同的语言所实现;而框架则是一个应用的体系结构,是一种或多种设计模式和代码的混合体虽然它们有所不同,但却共同致力于使人们的设计可以被重用,在思想上存在着统一性的特点,因而设计模式的思想可以在框架设计中进行应用14、框架和设计模式存在着显著的区别:应用领域(前者单一解决方案可在不同框架上用)、内容(模式单纯设计、框架式设计与代码的混合体)15、设计模式比框架更容易移植16、类之间的关系:关联(自身关联、单向、双向实线箭头)、聚合(空心箭头)/组合<包容

5、>(实心箭头)、依赖(虚线箭头)、泛华(继承,实线三角形)、实现(虚线三角形)17、基本元素符:类、包、接口18、开闭(OCP)原则:一个软件实体应当对扩展开放,对修改关闭。19、OCP原则优点:a、通过扩展已有软件系统,可以提供新的行为,以满足对软件的新的需求,使变化中的软件有一定的适应性和灵活性。b、已有软件模块,特别是最重要的抽象层模块不能再修改,这使变化中的软件系统有一定的稳定性和延续性。20、里氏代换原则(LSP):子类型必须能够替换它们的基类型21、依赖倒置(DIP)原则是:要依赖于抽象,不要依赖

6、于具体。22、工厂类优点:缺点:含有必要的判断逻辑,实现了对责任的分割;一旦不能正常工作,整个系统都要受到影响23、工厂方法模式是类的创建模式24、抽象工厂(具体工厂)角色:是工厂方法模式的核心25、工厂方法类的核心是一个抽象工厂类,而简单工厂模式把核心放在一个具体类上。26、代码表示聚合关系:publicclassEmployee{PrivateEmpTypeet;PublicEmpTypegetEmpType(){}}Employee到Emptype。三、综合体(50分,5个编程题)1、公共数据库:sql

7、语句、参数、存储过程publicstaticstringconnectionString=System.Configuration.ConfigurationSettings.AppSettings ["conStr"].ToString();sql语句:publicstaticintExecuteSql(stringSQLString){using(OracleConnectionconnection=newOracleConnection(connectionString)){using(OracleCo

8、mmandcmd=newOracleCommand(SQLString,connection)){try{connection.Open();introws=cmd.ExecuteNonQuery();returnrows;}catch(System.Data.SqlClient.SqlExceptionE){connection.Close();thrownewException(E.Messag

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。