公钥体系中,私钥用于解密和签名,公钥用于加密和认证。
常用端口:
Telnet 23
http 80
https 443
ssh 22
smtp 25
dns 53
ssh 22
mysql 3306
pop3 110
snmp 161
包过滤防火墙对数据包的过滤依据包括源IP地址、源端口号、目标IP地址和目标端口号。
包过滤型防火墙是在网络层对数据包进行分析、选择,选择的依据是系统内设置的过滤规则(访问控制表)。
逻辑内聚是指模块内执行若千个逻辑上相似的功能,通过参数确定该模块完成哪一个功能;
过程内聚是指一个模块完成多个任务,这些任务必须按指定的过程执行:
通信内聚是指模块内的所有处理元素都在同一个数据结构上操作,或者各处理使用相同的输入数据或产生相同的输出数据:
功能内聚是指模块内的所有元素共同作用完成一个功能,缺一不可。
特殊/一般关系也叫作泛化(Generalization)关系。特殊元素(子元素)的对象可替代一般元素(父元素)的对象,父元素是子元素的泛化(一般表示),子元素是父元素的特殊化。用这种方法,子元素共享了父元素的结构和行为。
在一般-特殊关系中,可以理解为特殊元素(即子类对象)是一般元素(即父类对象)的一种特殊体现。
-
单一职责原则 (Single Responsibility Principle, SRP):
- 一个类或者模块应该有且仅有一个原因引起它变化。换句话说,一个类应该只负责一个功能领域,这样当需求变化时,修改的影响范围会最小化。
-
开放封闭原则 (Open-Closed Principle, OCP):
- 软件实体(类、模块、函数等)应该是可扩展的,但是不可修改的。也就是说,对于已有的功能,我们应该避免修改原有的代码,而是通过扩展来增加新的行为。
-
里氏替换原则 (Liskov Substitution Principle, LSP):
- 子类应当能够替换掉它们的基类并且不影响到软件的正确性。这意味着子类需要遵循基类的行为约定,不能改变基类接口的预期行为。
-
接口隔离原则 (Interface Segregation Principle, ISP):
- 客户端不应该依赖它不需要的接口。接口应该尽可能小且专注于客户的需求。大而全的接口应该分解成更小、更具体的接口,以减少耦合。
-
依赖倒置原则 (Dependency Inversion Principle, DIP):
- 高层模块不应该依赖于低层模块,二者都应该依赖于抽象;抽象不应该依赖于细节,细节应该依赖于抽象。简单来说,就是依赖抽象而不是具体实现,通过接口或抽象类编程,减少模块间的耦合。
UML对象图、类图、组件图和部署图各自刻画系统的不同方面。其中,类图展现了组对象、接口、协作及其之间的关系;对象图展现了某一时刻一组对象以及它们之间的关系,描述了在类图中所建立的事物的实例的静态快照;组件图展示一组组件之间的组织和依赖,它与类图相关,通常可以把组件映射为一个或多个类、接口或协作;部署图展现了运行时处理结点以及其中构件的配置。
在合并er图时:
-
属性冲突:
- 数据类型冲突:同一属性在不同E-R图中被赋予了不同的数据类型,比如一个属性在一个图中定义为整型,在另一个图中被定义为字符串型。
- 长度/精度冲突:即使数据类型相同,属性的长度或精度可能设定不同,比如一个名字字段在一个图中被限定为50个字符,在另一个图中限定为30个字符。
- 取值范围或约束条件冲突:对同一属性的取值范围或约束条件(如是否允许为空)的定义不一致。
-
命名冲突:
- 直接的名称不一致,即同一实体或属性在不同E-R图中使用了不同的名称,导致识别上的混淆。
- 同名异义,即虽然名称相同,但在不同的上下文中代表不同的含义或实体。
- 异名同义,即不同的名称实际上代表相同的实体或属性。
-
结构冲突:
- 实体关系差异:对于相同的实体集,不同E-R图中定义的实体间的关系不同,比如一个图中实体A与实体B是一对多关系,而在另一个图中是多对多关系。
- 层次结构差异:实体的泛化(继承)关系不一致,某个实体在一方被视为父类,在另一方可能被视为子类,或是某些子类的存在与否不一致。
- 聚集冲突:实体的分组或聚合方式不同,即某些实体在某个E-R图中被集合为一个复合实体,在另一个图中则是独立的实体。
URL由三部分组成:资源类型、存放资源的主机域名、资源文件名。
URL语法: protocl://hostname[:port]/path/[;parameters][?query]#fragment
右外连接:
完全外连接:
深广度
广度优先:先访问邻节点
深度优先:按着箭头(有向边)走,走到头没访问完则往回退找岔路
最少,连成一条直线。最多,每个点之间都互相有边
时间复杂度:
系统原型可以帮助开发人员和客户导出系统的需求并验证需求的有效性、可以帮助探索特殊的软件解决方案、可以用于讨论用户界面等。
耦合:
数据耦合指两个模块之间有调用关系,传递的是简单的数据值,相当于高级语言中的值传递。
标记耦合指两个模块之间传递的是数据结构。
控制耦合指一个模块调用另一个模块时,传递的是控制变量,被调用模块通过该控制变量的值有选择地执行模块内某一功能。
TCP和UDP协议均提供了端口寻址功能
ipconfig:显示所有网络适配器的IP地址、子网掩码和缺省网关值;
ipconfig/all:显示所有网络适配器的完整TCP/IP配置信息,包括DHCP服务是否已启用;
ipconfig/renew:DHCP客户端手工向服务器刷新请求;
ipconfig/release:DHCP客户端手工释放IP地址。