面向对象
包用于将关系紧密的模型元素组织在一起,提供一个命名空间,以提供访问控制。
用例之间有继承、包含和扩展关系。
类是在对象之上的抽象,对象是类的具体化,对定义好的类的属性的不同赋值就可以得到该类的对象实例。
组合关系表示整体与其部分之间的一种关系。
语言
脚本语言又被称为扩建的语言,或者动态语言,是一种编程语言,通常以文本(如 ASCII)保存,只在被调用时进行解释或编译。Python是一种脚本语言
基础
泛化(将多个子类相同的属性形成一个父类)与继承(子继承父)
架构模式(全局)、(局部分析)设计模式(不涉及语言)、(涉及C等语言)惯用法
多态
通用:参数(最纯多态)包含(父类与子类)
特定:过载(参数名不同)强制()
设计原则
单一职责原则:设计目的单一的类
开放-封闭原则:增加功能时,对扩展开放,对修改封闭,少修改类
李氏替换原则:子类可以替换父类
依赖倒置原则:要依赖于抽象,而不是具体实现类;针对接口编程,不要针对实现编程
接口隔离原则:使用多个专门的接口比使用单一的总接口要好
组合重用原则:要尽量使用组合,而不是继承关系达 到重用目的
迪米特原则(最少知识法则):一个对象应对其他对象要了解少一点
UML图
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hyIeRXAj-1570878342074)(F:\TyporaWorkplace\文件\图片\UML.png)]
用例图
表达系统与外部的交互关系;从用户的角度展现系统的功能;
展现用例、参与者之间的关系:
包含关系include:箭头(先执行)指向必须先要执行的功能
扩展关系extend:键尾指向可能会执行的下一步功能
泛化关系(继承):
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-npA6DllC-1570878342075)(F:\TyporaWorkplace\文件\图片\用例图.png)]
类图与对象图
一组对象、 接口、 协作及其之间的关系
多重度:1、1…* 、0…* =*
关系:
- 依赖
- 泛化(类)
- 关联
- 聚合关系:
- 组合关系:
- 实现(接口)
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8In7mteq-1570878342075)(F:\TyporaWorkplace\文件\图片\类与对象图.png)]
展现了某一时刻一组对象以及它们之间的关系, 描述了在类图中所建立的事物的实例的静态快照
序列图(顺序图)
场景的图形化表示, 描述了以时间顺序组织的对象之间的交互活动, 对用例中的场景可以采用序列图进行描述。
整个流程是怎样,参与什么对象,对象做什么?
表现了时间顺序
对象、生命结束、
关系:调用、返回、消息、生命线
序列图描述以时间顺序组织的对象之间的交互动态视图,通信图强调收发消息的对象的结构组织
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ayiuF0hg-1570878342076)(F:\TyporaWorkplace\文件\图片\顺序图.png)]
活动图
接近程序流程图
系统从一个活动到另一个活动的流程,它对于系统的功能建模特别重要,并强调对象间的控制流程,是状态图的一种特殊情况
整个处理活动的基本动向、分支和动态
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-q2ls3kCD-1570878342076)(F:\TyporaWorkplace\文件\图片\活动图.png)]
状态图
由状态、转换、时间、活动组成,强调对象行为的时间顺序、状态的变迁、转移
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PxqqvMN3-1570878342076)(F:\TyporaWorkplace\文件\图片\状态图.png)]
协作图(通信图)
强调收发消息的对象之间的结构组织, 强调参加交互的对象的组织。
整个流程是怎样,参与什么对象,对象做什么?
与顺序图区别:(时间方面不清晰 )
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hQlQg00e-1570878342077)(F:\TyporaWorkplace\文件\图片\通信图.png)]
构件图(组件)
组件图/构件图展现了一组构件之间的组织和依赖, 专注于系统的静态实现视图, 它与类图相关, 通常把构件映射为一个或多个类、 接口或协作
部署图
(deployment diagram)展现了运行处理节点以及其中构件的配置。部署图给出了体系结构的静态实施视图。它与构件图相关,通常一个节点包含一个或多个构件。
设计模式
创建型
与对象的创建有关
- 工厂方法(factory method):一个用于创建对象的接口,让子类决定将哪一个类实例化,使一-个类的实例化延迟到其子类
- 抽象工厂(abstract factory):提供一个可以创建一系列相关或相互依赖的对象,无需指定它们具体类的接口
- 原型(prototype):用原型实例指定创建对象的种类,并且通过拷贝这个原型来创建新的对象
- 单例(singleton):是指系统运行过程中,一个类只有一个对象实例
- 构建器(builder)将一个复杂类的表示与其构造相分离,使相同构建过程能够得出不同的表示
结构型
用于处理类和对象的组合
- 适配器(adapter)接口转换,使不相容的接口可以协同工作
- 桥接(bridge)将对象组,合成树形结构以表示“部分-整体”的层次结构,使得用户对单个对象和组合对象的使用具有一致性;继承树拆分
- 组合(composite):将对象结合成树形结构以表示“整体-部分”的层次结构;树形目录结构
- 装饰(decorator):描述了以透明围栏来支持修饰的类和对象的关系,动态地给一个对象添加一些额外的职责,从增加功能的角度来看,装饰器模式相比生成子类更加灵活;附加职责
- 外观(facade):对外统一接口,保持一致外观
- 享元(flyweight):提供支持大量细粒度对象共享的有效方法
- 代理(proxy):为其他对象提供一种代理以控制这个对象的访问
行为型
描述类或对象怎样交互和怎样分配职责
- 职责链(chain of responsibility):使多个对象都有机会处理请求,从而减少发送者与接受者耦合,将接收着链接,将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止
- 命令(command)将一个请求封装为一个对象,从而使得使用者可以采用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤销的操作
- 解释器(interpreter)通过文法表示(定义的)表示解释语言中的句子
- 迭代器(iterator):提供一个方法来顺序访问聚合对象中的元素,而不需要暴露对象内部
- 中介者(mediator):通过中介,不直接引用来降低耦合
- 备忘录(memento):保存对象内部状态,方便以后恢复到该状态
- 观察者(observer):定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新
- 状态(state):允许对象内部变化时,改变它的行为
- 策略(strategy):封装一系列算法,让他们可以相互替换,使算法可以独立于用户而变化
- 模板方法(template method)定义算法骨架,使继承的子类可以不改变算法骨架的同时,定义适合自己的算法步骤
- 访问者(visitor)操作在不改变各元素的类的前提下的新操作
既是类模式,也是对象模式,只是对象模式
莫名的生成器( Builder)模式将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。
程序语言
错误
动态错误:动态语义错误(0做除数、数组越界)
静态错误:
- 语法错误(单词拼错、标点错、表达式缺少操作数、括号不匹配
- 静态语义错误(运算符与数据类型不匹配)
编译程序原理
- 源程序
- 词法分析:把字符串(源程序)分割成单词序列
- 语法分析:把单词符号序列分解成语法单位
- 语义分析:进行类型分析和检查(编译时不一定能检测出来)
- 中间代码生成:根据语义分析形成中间代码(后缀式、三元式、四元式和树)
- 代码优化:对时间空间浪费进行优化
- 目标代码生成:把中间代码换成汇编指令代码
首先将源程序翻译成目标语言程序,然后在计算机上运行目标程序。
解释程序原理
多次扫描代码(中间可能产生中间代码)
解释程序运行时直接执行源程序或源程序的内部形式,不产生目标程序(他和编译程序区别)
在词法、语法、语义分析方面,编译方式和解释方式没有区别
器
解释程序也称为解释器,它可以直接解释执行源程序,或者将源程序翻译成某种中间表示形式后再加以执行
而编译程序(编译器)则首先将源程序翻译成目标语言程序,然后在计算机上运行目标程序
汇编程序的功能是将汇编语言所编写的源程序翻译成机器指令程序。
链接程序将各目标程序连接形成为可执行程序
知识产权
- 工业产权
- 著作权
保护期限
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XoysXwZA-1570878342077)(F:\TyporaWorkplace\文件\图片\保护期限.png)]
知识产权人确定
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oLHacuy2-1570878342077)(F:\TyporaWorkplace\文件\图片\知识产权人确定.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WzmzqT6U-1570878342078)(F:\TyporaWorkplace\文件\图片\知识产权人2.png)]
侵权判定
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AqzMBWEl-1570878342078)(F:\TyporaWorkplace\文件\图片\侵权判定.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tHomsGyh-1570878342079)(F:\TyporaWorkplace\文件\图片\侵权判定2.png)]
著作权、商业隐私权自动获得(条件:不为公众所知悉、具有实用性、采取了保密措施);商标权、专利权不能自动取得,申请人必须履行规定的申请手续
标准分类与编号
国际标准:(编号)ISO(IEC)+专业类号+顺序号+发布年号
区域标准:PASC太平洋、CEN欧洲、ASAC亚洲、ARSO非洲
国家标准:ANSI美国、BS英国、JIS日本
- 强制性GB+标准号+发布年号
- 推荐性GB/T+标准号+发布年号
- 指导性:GB/Z
- 事务标准代号:GSB
行业标准:GJB中国军工标准、MIT-S美国军用标准、IEEE美国电气电子工程师协会(汉语意思大写)
地方标准:DB或DB/T+省级行政区划代码前两位,国家一级行政机构指定的标准
企业标准:Q+企业标准代号+标准发布顺序号+标准发布年代
项目规范
著作权
- 人身权
- 财产权
客体:著作权法保护的计算机软件,包括计算机程序及其相关文档
商业秘密权
专利权
企业知识产权
多媒体技术
分辨率
- 显示分辨率是指显示屏上能够显示出的像素数目
- 图像分辨率是指组成一幅图像的像素密度,也是用水平和垂直的像素表示,即用每英寸多少点(dpi)表示数字化图像的大小
音乐合成技术
调频(FM)音乐合成:创造出丰富多彩的声音,是真实乐器所不具备的音色
波形表(WaveTable)
应用调频音乐合成技术的乐音已经很逼真,波形表音乐合成技术的乐音更真实
流媒体
是指在网络中使用流式传输技术的连续时基媒体,而流媒体技术是指把连续的影像和声音信息经过压缩处理之后放到专用的流服务器上,让浏览者一边下载一边观看、收听,而不需要等到整个多媒体文件下载完成就可以即时观看和收听的技术。流媒体融合了多种网络以及音视频技术,在网络中要实现流媒体技术,必须完成流媒体的制作、发布、传播、播放等环节。
JPEG累进
(或增量、渐进、递增、progressive)编码模式,这样可以实现图像内容的方式传输,在浏览器上的直观效果是无需过久等待即可看到模糊的图像,然后图像显示内容由模糊逐渐变得清晰。