软件设计师备考知识05--设计模式

1 总线

处理机主要由 处理器、存储器、总线组成。总线包括:数据总线、地址总线、控制总线

总线:任何连接两个以上电子元器件的导线

1)芯片内总线:用于在集成电路芯片各部分的连接

2)元件级总线:用于一块电路板内各元器件的连接

3)内总线(系统总线):用于构成计算机各组成部分(CPU、内存、接口等)的连接

4)外总线(通信总线):用计算机与外设或计算机与计算机的连接或通信

2 UML类图关系

下图与下面描述一 一对应

软件设计师备考知识05--设计模式
UML类图关系

1)依赖 使用关系、某个类的方法使用了另一个类的对象作为参数 由依赖的一方指向被依赖的一方


软件设计师备考知识05--设计模式
dependency

2)泛化

一般元素和特殊元素之间的关系、继承关系的反关系、子类从父类继承 父类是子类的泛化


软件设计师备考知识05--设计模式
generalization

3)关联

两个类之间存在某种语义上的联系

 1)聚合

整体与部分、可分离,有各自生命周期。


软件设计师备考知识05--设计模式
juhe

2)组合(强聚合)

整体与部分之间不可分割,有共同生命周期


软件设计师备考知识05--设计模式
zuhe

4)实现

一个元素完成另一个元素的操作功能,如:接口类及其实现

3 语言类型

1 编译/解释型语言 

1)编译型: 该语言编写的程序执行前,需要由相应的编译器将源程序翻译成目标代码程序,然后在目标机器上运行

  如:C语言

   2)解释型:该语言编写的程序无需编译为目标代码即可执行;需要对应解释器负责检查源程序的语法、进行语义分析,采用边编译边执行的方式

        1)语法分析是便宜过程的一个逻辑阶段,是在语法分析的基础上将单词序列组合成各类语法短语,判断源程序结构是否正确。

         源程序结构由上下文无关法描述

2 强/弱类型语言

1)从内存上来说:允许将一块内存看作多种类型,比如将整体类型变量与字符类型变量相加

2)从语法上来说,在变量或者对象使用前,需要声明类型的语言是请类型语言

强类型语言:java、c/c++、c#

弱类型语言:python

4 为保证数据库中数据的安全可靠和正确有效,系统进行系统事务处理时,对插入等的全部有关内容先写入日志文件(包含恢复数据库中的所有事物所需的信息);系统正常运行时,再按照时间间隔,把数据库缓冲区内容写入数据文件(包含数据和对象,如表、索引、存储过程、视图等)

5 设计模式

为了可重用代码,让代码更易于理解,使代码编制真正工程化,是软件工程的基石

1)创建型模式 创建对象

1)工厂方法模式(虚拟构造器模式)只能生产一个产品等级结构


软件设计师备考知识05--设计模式
factory

定义创建对象的接口,由子类决定实例化哪一个类

factory 抽象工厂 

concreteFactory 抽象工厂

2)抽象工厂模式

创建一系列相关或相互依赖对象的接口,生产多个产品等级结构(即一个抽象工厂模式包含多个工厂方法模式)


软件设计师备考知识05--设计模式
abfactory

3)单例模式

确保某一个类只有一个实例,而且自行实例化,并向整个系统提供这个实例


软件设计师备考知识05--设计模式
singleton

4)建造者模式(封装对象)

将一个复杂对象的构建与它的表示分离,无需知道内部细节

软件设计师备考知识05--设计模式

5)原型模式

用原型实例指定创建对象的种类,并且通过复制这些原型创建新的对象


软件设计师备考知识05--设计模式
prototype

2)结构型模式 处理类或对象

1)适配器模式

将一个类的接口转换成客户希望的另一个接口,使其协同工作。


软件设计师备考知识05--设计模式
adapter

2)装饰模式

动态给一个对象添加额外职责


软件设计师备考知识05--设计模式
decorator

3)代理模式

给某对象提供一个代理,并由代理对象控制对原对象的引用


软件设计师备考知识05--设计模式
proxy

4)外观模式

定义一个高层接口,为子系统中的一组接口提供一个一致的界面,从而简化子系统的使用


软件设计师备考知识05--设计模式
Facade

5)桥接模式

抽象部分与实现部分分离,使他们可以独立的变化

6)组合模式

将对象组合成树形结构以表示”部分-整体“的层次结构。使用户对单个对象和组合对象的使用具有一致性

软件设计师备考知识05--设计模式
compent

7)享元模式

支持大量细粒度对象共享的有效方法。通过享元技术实现相同或相似对象的重用

3)行为型模式 类或对象怎样交互和分配职责

1)策略模式

2)模块方法模式

定义一个操作中的算法的骨架,将一些步骤推迟到子类中,使子类在不改变算法结构即可重定义该算法


软件设计师备考知识05--设计模式
Template

3)观察者模式

4)迭代子模式

5)责任链模式

很多人都有机会处理请求(根据条件选处理人)


软件设计师备考知识05--设计模式

6)命令模式

7)备忘录模式

8)状态模式

9)访问者模式

10)中介者模式

11)解释器模式

定义语言的文法,并且定义一个解释器来解释该语言中的句子


软件设计师备考知识05--设计模式

6 编码国际标准

1)JPEG(联合图像专家组),一种支持8位和24位色彩的压缩位图格式,流行的图像文件格式

2)MPEG(动态图像专家组),一种流行的图像、视频编码标准,包含MPEG-1、MPEG-2、MPEG-4、MPEG-7、MPEG-21等子标准

3)H.264(P*64),P为64Bb/s的取值范围,是1到30 的可变参数,最初针对在ISDN上实现电话会议应用设 计,视频编码标准

4)ADPCM(自适应差分脉冲编码调制),用于数字通信系统

上一篇:wkhtmtopdf--高分辨率HTML转PDF(一)


下一篇:文本比较算法Ⅴ——回顾贴,对前面几篇文章的回顾与质疑