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部分的更多相关文章

  1. OOA/OOD/OOP的区别

    http://javajiao.iteye.com/blog/152956这是一个故事: "工程師修了一條隧道,隧道的一端就是美麗的風景,很多人會開車通過隧道.雖然隧道內已經有燈了,但是設計 ...

  2. OOA/OOD/OOP 转载

    OOA/OOD/OOP OOA Object-Oriented Analysis:面向对象分析方法 是在一个系统的开发过程中进行了系统业务调查以后,按照面向对象的思想来分析问题.OOA与结构化分析有较 ...

  3. OOA/OOD/OOP(了解)

    Object-Oriented Analysis:面向对象分析方法 是在一个系统的开发过程中进行了系统业务调查以后,按照面向对象的思想来分析问题.OOA与结构化分析有较大的区别.OOA所强调的是在系统 ...

  4. OOA/OOD/OOP(转)

    OOA Object-Oriented Analysis:面向对象分析方法 是在一个系统的开发过程中进行了系统业务调查以后,按照面向对象的思想来分析问题.OOA与结构化分析有较大的区别.OOA所强调的 ...

  5. OOA/OOD/OOP

    转载自https://www.cnblogs.com/zzyoucan/p/3576932.html Object-Oriented Analysis:面向对象分析方法 是在一个系统的开发过程中进行了 ...

  6. 什么是OOA/OOD

    Object Oriented Analyzing Object Oriented Design Object Oriented Programming ooa(object oriented ana ...

  7. Java面试题总结之OOA/D,UML,和XML

    全文字数:   2732 阅读时间:   大约9 分钟 1.UML 是什么?常用的几种UML图? 统一建模语言(Unified Modeling Language,UML)又称标准建模语言:常用图包括 ...

  8. UML(统一建模语言)

    最近看了一个UML图,所以特意来了解一下UML 统一建模语言 锁定 同义词 UML(统一建模语言)一般指统一建模语言 本词条由“科普中国”百科科学词条编写与应用工作项目 审核 . Unified Mo ...

  9. EA UML 建模——类图

    Enterprise Architect(EA) 是一个功能比较强悍的建模工具,本篇文章仅使用其 UML 建模功能,其他更多功能,可以Google. 一.简单梳理C#中类与类.类与接口.接口与接口的关 ...

随机推荐

  1. OpenCV+Qt+CMake安装+十种踩坑

    平台:win10 x64+opencv-3.4.1 + qt-x86-5.9.0 + cmake3.13.4 x64 OpenCV+Qt+CMake安装,及目前安装完后打包:mingw32-make时 ...

  2. DX与OpenGL投影矩阵的区别

    之前学习DX和OpenGL时到是知道一点,但是没仔细研究过,只是跟着教程抄个公式就过了,看双API引擎时发现转换时是个问题,必须搞懂,gamedev上找了个解释,希望用得上. https://www. ...

  3. drf3 Serializers 序列化组件

    为什么要用序列化组件 做前后端分离的项目,我们前后端交互一般都选择JSON数据格式,JSON是一个轻量级的数据交互格式. 给前端数据的时候都要转成json格式,那就需要对从数据库拿到的数据进行序列化. ...

  4. linux下使用eclipse打开esp32工程文件,并进行编译下载。

    在之前的文章中,已经讲过将esp-idf 运用linux自带的工具下载,但是为了开发的系统性,这里运用eclipse来对idf进行整体的编译. 首先 cd /esp32 运行eclipse,将work ...

  5. Codeforces Round #514 (Div. 2) B - Forgery

    这个题我一开始没思路,最后也没思路 2个小时一直没思路 本来还想解释题意的,写了半天发现解释的不是很清楚,你还是google翻译一下吧 这个题解法是这样的: 首先,给你图案里面有很多的点,每个点的周围 ...

  6. 第 1 篇 Scrum 冲刺博客

    各个成员在 Alpha 阶段认领的任务 姓名 Alpha 阶段认领的任务 徐婉萍 创建服务器.域名,环境搭建查询界面及页面的设计,查询方法的编写 谭燕 支出.收入添加界面及设计,收入.支出的方法编写, ...

  7. git 命令(提高篇)的本质理解

    上一篇博客:[[git 命令(提高篇)的本质理解] (http://www.cnblogs.com/juking/p/7105744.html)]介绍了Git 的基础知识 -- 提交.分支以及在提交树 ...

  8. WPF常用样式总结

    常用控件样式: <ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation ...

  9. Android开发工程师文集-1 小时学会Widget小组件开发

    前言 大家好,给大家带来Android开发工程师文集-1 小时学会Widget小组件开发的概述,希望你们喜欢 学会用Widget (小组件) Widget小组件很方便,很快捷,可以个性化,自己定制,相 ...

  10. Python 基础:分分钟入门

    Python和Pythonic Python是一门计算机语言(这不是废话么),简单易学,上手容易,深入有一定困难.为了逼格,还是给你们堆一些名词吧:动态语言.解释型.网络爬虫.数据处理.机器学习.We ...