欢迎来到天天文库
浏览记录
ID:50950627
大小:45.50 KB
页数:8页
时间:2020-03-16
《设计模式题库以及答案.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
此文档下载收益归作者所有