OOA/OOD&UML部分
UML是什么?有哪些常用的图?
UML是标准的建模语言;常用图包括:用例图、静态图(包括类图、对象图和包图),行为图、交互图(顺序图、合作图),实现图。
简述一下Singleton模式。
Singleton模式主要作用是保证在Java应用程序,一个类Class只有一个实例存在。举个例子:定义一个类,它的构造函数为private修饰的,它有一个static的private修饰的该类变量,在类初始化时实例化,通过一个public修饰的getInstance方法获取对它的引用,继而调用其中的方法。
//饿汉式
public class Singleton {
public final Singleton instance = new Singleton();
private Singleton() {}
public Singleton getInstance() {
return instance;
} }
//懒汉式
public class Singleton {
private static Singleton instance; private Singleton() {
} public static Singleton getInstance() {
if (instance == null) {
instance = new Singleton();
return instance;
} else {
return instance;
}
}
}
其他形式:定义一个类,它的构造函数为private的,所有方法为static的。一般认为第一种形式要更加安全些。
说说你所熟悉或听说过的J2EE中的几种常用模式?及对设计模式的一些看法。
Session Facade Pattern: 使用SessionBean访问EntityBean;
Message Facade Pattern:实现异步调用;
EJB Command Pattern:使用Command JavaBeans取代SessionBean,实现轻量级访问;
Data Transfer Object Factory:通过DTO Factory简化EntityBean数据提供特性;
Generic Attribute Access:通过AttibuteAccess接口简化EntityBean数据提供特性;
Business Interface:通过远程(本地)接口和Bean类实现相同接口规范业务逻辑一致性;
EJB架构的设计好坏将直接影响系统的性能、可扩展性、可维护性、组建可重用性及开发效率。项目越复杂、项目队伍越庞大则越能体现良好设计的重要性。
Java中常见的设计模式有哪些?简述工厂模式。
Java中的23中设计模式:Factory(工厂模式)、Builder(建造模式)、Factory Method(工厂方法模式)、Prototype(原始模型模式)、Singleton(单例模式)、Facade(门面模式)、Adapter(适配器模式)、Bridge(桥梁模式)、Compsite(合成模式)、Decorator(装饰模式)、Flyweight(享元模式)、Proxy(代理模式)、Command(命令模式)、Interpreter(解释器模式)、Visitor(访问者模式)、Iterator(迭代子模式)、Mediator(调停者模式)、Memento(备忘录模式)、Observer(观察者模式)、State(状态模式)、Strategy(策略模式)、 Template Method(模版方法模式)、Chain Of Responsibleity(责任链模式);
工厂模式:工厂模式是一种经常被使用到的模式,根据工厂模式实现的类,可以根据提供的数据,生成一组类中某一个类的实例,通常这一组类有一个公共的抽象父类并且实现了相同的方法,但是这些方法针对不同的数据进行不同的操作。首先需要定义一个基类,该类的子类通过不同的方法实现了基类中的方法。然后需要定义一个工厂类,工厂类可以根据条件生成不同的子类实例。当得到子类的实例后,开发人员可以调用子类中的方法而不必考虑到底返回的是哪一个子类的实例。
开发中都用到了哪些设计模式?分别用在什么场合?
每一个模式都描述了一个在我们的环境中不断出现的问题,然后描述了该问题解决方案的核心。通过这种方式,你可以无数此的使用那些已有的解决方案,无需再重复相同的工作。主要用到了MVC的设计模式,用来开发JSP/Servlet或者J2EE的相关应用及简单工厂模式。
简述软件开发中迭代的含义的理解。
软件开发中,各个开发的阶段不是顺序执行的,应该是并行执行,也就是迭代的意思。这样对于开发中的需求变化及人员变动都能得到更好的适应。
OOA/OOD&UML部分的更多相关文章
- OOA/OOD/OOP的区别
http://javajiao.iteye.com/blog/152956这是一个故事: "工程師修了一條隧道,隧道的一端就是美麗的風景,很多人會開車通過隧道.雖然隧道內已經有燈了,但是設計 ...
- OOA/OOD/OOP 转载
OOA/OOD/OOP OOA Object-Oriented Analysis:面向对象分析方法 是在一个系统的开发过程中进行了系统业务调查以后,按照面向对象的思想来分析问题.OOA与结构化分析有较 ...
- OOA/OOD/OOP(了解)
Object-Oriented Analysis:面向对象分析方法 是在一个系统的开发过程中进行了系统业务调查以后,按照面向对象的思想来分析问题.OOA与结构化分析有较大的区别.OOA所强调的是在系统 ...
- OOA/OOD/OOP(转)
OOA Object-Oriented Analysis:面向对象分析方法 是在一个系统的开发过程中进行了系统业务调查以后,按照面向对象的思想来分析问题.OOA与结构化分析有较大的区别.OOA所强调的 ...
- OOA/OOD/OOP
转载自https://www.cnblogs.com/zzyoucan/p/3576932.html Object-Oriented Analysis:面向对象分析方法 是在一个系统的开发过程中进行了 ...
- 什么是OOA/OOD
Object Oriented Analyzing Object Oriented Design Object Oriented Programming ooa(object oriented ana ...
- Java面试题总结之OOA/D,UML,和XML
全文字数: 2732 阅读时间: 大约9 分钟 1.UML 是什么?常用的几种UML图? 统一建模语言(Unified Modeling Language,UML)又称标准建模语言:常用图包括 ...
- UML(统一建模语言)
最近看了一个UML图,所以特意来了解一下UML 统一建模语言 锁定 同义词 UML(统一建模语言)一般指统一建模语言 本词条由“科普中国”百科科学词条编写与应用工作项目 审核 . Unified Mo ...
- EA UML 建模——类图
Enterprise Architect(EA) 是一个功能比较强悍的建模工具,本篇文章仅使用其 UML 建模功能,其他更多功能,可以Google. 一.简单梳理C#中类与类.类与接口.接口与接口的关 ...
随机推荐
- js 时间戳转日期
timestampToTime(10位时间戳) function timestampToTime(timestamp) { var date = new Date(timestamp * 1000); ...
- 1.MFC架构分析
1.架构代码文件的结构 主要由四个部分组成 1.资源文件Resource.h:主要定义资源的ID 2.预编译文件:stdafx.h 可以用来解决头文件包含冲突的问题,定义一些需要全局性包含的文件. 3 ...
- Hadoop和一般数据库的区别?
难道一般的数据库比如PostgreSQL就不可以做集群吗?像Oracle.SQL Sever它们就没有发明这一功能吗? https://www.jianshu.com/p/525cfe07badc H ...
- 循环结构-for,while,do-while
for,while,do-while >完整的循环应该包含以下四个部分: 初始化语句:初始化工作,在循环体开始之前执行 条件表达式:一个boolean表达式,决定是否执行循环体 循环体:反复执行 ...
- so静态分析进阶练习——一个CreakeMe的分析思路
i春秋作家:HAI_ 原文来自:https://bbs.ichunqiu.com/thread-41371-1-1.html 说明 拿到一个CreakeMe,写一个分析思路.CreakMe主要是对.s ...
- Python+Excel+Unittest+HTMLTestRunner实现数据驱动接口自动化测试(一)
整个流程: 使用HTMLTestRunner的Run方法执行用例,用例调用Excel读取方法,将测试数据导入到unittest用例中执行,测试结果返回给HTMLTestRunner. 因为刚接触接口自 ...
- PHP错误处理函数register_shutdown_function
当程序在线上运行时,如果遇到BUG,想不在前端输出错误信息,同时能及时邮件通知开发者,register_shutdown_function函数就可以派上用场了. 注册一个会在脚本执行完成或者 exit ...
- Linux - 获取命令帮助信息
Manual Page Chapter List 1:所有用户可以操作的指令或可执行文件 2:系统核心调用的函数与工具 3:子调用,常用的函数与函数库 4:设备,硬件文件说明,通常是/dev/的文件 ...
- LeetCode:105_Construct Binary Tree from Preorder and Inorder Traversal | 根据前序和中序遍历构建二叉树 | Medium
要求:通过二叉树的前序和中序遍历序列构建一颗二叉树 代码如下: struct TreeNode { int val; TreeNode *left; TreeNode *right; TreeNode ...
- 从零开始学 Spring Boot
1.下载 spring-tool-suite https://spring.io/tools3/sts/legacy 2.解压运行 sts-bundle\sts-3.9.7.RELEASE\STS.e ...