首页
归档
关于
Search
1
C服务器端
9 阅读
2
1.数据流图(下午题)
8 阅读
3
管道处理模型
8 阅读
4
数据结构与算法
8 阅读
5
3.面向对象设计
7 阅读
软件设计师笔记
.Net
Java
数据库
PHP
运维
前端
Python
中间件相关
云原生
架构设计
Search
标签搜索
websocket
科技新闻
Bi8bo
累计撰写
267
篇文章
累计收到
2
条评论
首页
栏目
软件设计师笔记
.Net
Java
数据库
PHP
运维
前端
Python
中间件相关
云原生
架构设计
页面
归档
关于
搜索到
75
篇与
的结果
2025-04-03
2.面向对象分析
暂无简介
2025年04月03日
1 阅读
0 评论
0 点赞
2025-04-03
3.面向对象设计
面向对象设计七大原则(高内聚低耦合)单一职责原则:设计目的单一的类开放-封闭原则(开闭原则):对扩展开放,对修改封闭李氏(Liskov)替换原则(里氏替换):子类可以替换父类(子类继承父类后只做拓展不做修改)依赖倒置原则:要依赖于抽象,而不是具体实现;针对接口编程,不要针对实现编程接口隔离原则:使用多个专门的接口比使用单一的总接口要好组合重用原则:要尽量使用组合,而不是继承关系达到重用目的迪米特(Demeter)原则(最少知识法则):一个对象应当对其他对象有尽可能少的了解面向对象设计其他原则(针对包/命名空间)重用发布等价原则:重用的粒度就是发布的粒度共同封闭原则:包中的所有类对于同一性质的变化应该是共同封闭的。一个变化若对一个包产生影响,则将对该包里的所有类产生影响,而对于其他的包不造成任何影响。共同重用原则:一个包里的所有类应该是共同重用的。如果重用了包里的一个类,那么就要重用包中的所有类。无环依赖原则:在包的依赖关系图中不允许存在环,即包之间的结构必须是一个直接的无环图形。稳定依赖原则:朝着稳定的方向进行依赖。稳定抽象原则:包的抽象程度应该和其稳定程度一致。
2025年04月03日
7 阅读
0 评论
0 点赞
2025-04-03
4.UML(统一建模语言)(重点)
考点1:UML图概念考点2: UML图关系考点3: UML图图示UML图概念面向对象三种方法:Booch,OOSE,OMTJackson:面向数据结构结构化方法结构图也叫静态图,行为图也叫动态图图中绿色部分需要记住类图,对象图,序列图,通信图,部署图,包图考过UML图关系软件设计师:UML - 魔幻小生 - 博客园 (cnblogs.com)包含关系(必选关系,走完基础用例,必执行包含的案例)扩展关系(可选关系,条件可选执行)泛化关系(必选关系,一定在子用例中选一个执行 )经常用 is - a 描述说明UML图图示软件设计师考点整理:UML_软件设计师_希赛网 (educity.cn)软件设计师之UML_软件设计师从uml图识别设计模式-CSDN博客上午题考识图,下午提画图类图(class diagram):类图描述一组类、接口、协作和它们之间的关系。在OO系统的建模中,最常见的图就是类图。类图给出了系统的静态设计视图,活动类的类图给出了系统的静态进程视图。对象图(object diagram):对象图描述一组对象及它们之间的关系。对象图描述了在类图中所建立的事物实例的静态快照。和类图一样,这些图给出系统的静态设计视图或静态进程视图,但它们是从真实案例或原型案例的角度建立的。0 : * ,集合可以为空,所以是0对多用例图:用例图描述一组用例、参与者及它们之间的关系。用例之间的关系:包含关系:其中这个提取出来的公共用例称为抽象用例,而把原始用例称为基本用例或基础用例系:当可以从两个或两个以上的用例中提取公共行为时,应该使用包含关系来表示它们。扩展关系:如果一个用例明显地混合了两种或两种以上的不同场景,即根据情况可能发生多种分支,则可以将这个用例分为一个基本用例和一个或多个扩展用例,这样使描述可能更加清晰。泛化关系:当多个用例共同拥有一种类似的结构和行为的时候,可以将它们的共性抽象成为父用例,其他的用例作为泛化关系中的子用例。在用例的泛化关系中,子用例是父用例的一种特殊形式,子用例继承了父用例所有的结构、行为和关系。顺序图(sequence diagram,序列图)。顺序图是一种交互图(interaction diagram),交互图展现了一种交互,它由一组对象或参与者以及它们之间可能发送的消息构成。交互图专注于系统的动态视图。顺序图是强调消息的时间次序的交互图。通信图(communication diagram)。通信图也是一种交互图,它强调收发消息的对象或参与者的结构组织。顺序图和通信图表达了类似的基本概念,但它们所强调的概念不同,顺序图强调的是时序,通信图强调的是对象之间的组织结构(关系)。活动图(activity diagram)。活动图将进程或其他计算结构展示为计算内部一步步的控制流和数据流。活动图专注于系统的动态视图。它对系统的功能建模和业务流程建模特别重要,并强调对象间的控制流程。(唯一可以表示并发)也可以划分为泳道活动图状态图(state diagram)。状态图描述一个状态机,它由状态、转移、事件和活动组成。状态图给出了对象的动态视图。它对于接口、类或协作的行为建模尤为重要,而且它强调事件导致的对象行为,这非常有助于对反应式系统建模。【和活动图相似但描述的是状态变迁】构件图/组件图(component diagram)。构件图描述一个封装的类和它的接口、端口,以及由内嵌的构件和连接件构成的内部结构。构件图用于表示系统的静态设计实现视图。对于由小的部件构建大的系统来说,构件图是很重要的。构件图是类图的变体。大图标画法 小图标画法棒棒糖为供接口,叉子为需接口部署图(deployment diagram)。部署图描述对运行时的处理节点及在其中生存的构件的配置。部署图给出了架构的静态部署视图,通常一个节点包含一个或多个部署图。唯一描述物理分布关系
2025年04月03日
1 阅读
0 评论
0 点赞
2025-04-03
5.设计模式(下午题必考)
考点1:创建型设计模式考点2: 结构型设计模式考点3: 行为型设计模式考点4:设计模式拼写及分类汇总架构模式:软件设计中的高层决策,如C/S结构就数域架构模式,反映了开发软件系统过程中所做的基本设计决策设计模式:主要关注软件系统的设计,与具体的实现语言无关惯用法:最低层的模式,关注软件系统的设计与实现创建型设计模式工厂方法模式:定义一个创建对象的接口,但由子类决定需要实例化哪一个类。工厂方法使得子类实例化的过程推迟。速记:动态生产对象抽象工厂模式:提供一个接口,可以创建一系列相关或相互依赖的对象,而无需指定它们具体的类。速记关键字:生产成系列对象(只存在一个产品等级结构时,抽象工厂模式退化成工厂方法模式)原型模式:用原型实例指定创建对象的类型,并且通过拷贝这个原型来创建新的对象。速记:克隆对象。单例模式:保证一个类只有一个实例,并提供一个访问它的全局访问点。速记:单实例构建器模式:讲一个复杂类的表示与其构造分离,相同的构建过程能得出不同的表示。速记关键字:复杂对象构造结构型设计模式行为型设计模式
2025年04月03日
1 阅读
0 评论
0 点赞
2025-04-03
1.1 二进制,十进制,十六进制转换
思前想后:例接下来我们细致理解进制之间的转换一:2进制转换为16进制:把二进制数从低位到高位每4位组成一组,直接用16进制数来表示即可,例如:0011 0101 1011 11113 5 B F这里很好拼凑,1,2,4,8权相对应的位置只要是1,咱们加起来就可以了第一个末尾俩1(1+2=3),接着(1+4=5),接着(1+2+8=B)最后(1+2+4+8=F),记住1,2,4,8的顺序就好了所以 0011010110111111B=35BFH注意:十六进制数以H为后缀,十进制D,八进制O,二进制B,这里的末尾B和H是强调是什么进制的)二:16进制转为2进制把16进制数中每一位用4为二进制数来表示(不足四位用0补充),即可得到相对应的二进制数,例如:A 1 9 C1010 0001 1001 1100同上(在1,2,4,8中),A=2+8,所以二进制数中从右到左第2位和第四位是1,即10109=1+8,所以在二进制数从右到左第一位和第四位是1,即1001三:2进制转换为10进制数各位二进制数码乘以与其对应的权之和即为与该二进制数对应的十进制数:例如1011100.10111B = 2^6+2^4+2^3+2^2+2^-1+2^-3+2^-4+2^-5 = 92.71875D四:10进制转换为2进制把要转换的十进制数的整数部分不断除以2,并计下余数,直到商为0为止,例如:整数N=117D117/2=58余1(a0=1)58/2=29余0 (a1=0)29/2=14余1(a2=1)14/2=7 余0 (a3=0)7/2=3余1 (a4=1)3/2=1余1(a5=1)1/2=0余1(a6=1) 用短除法更快一点即N=117D=1110101B对于被转换的十进制数的小数部分则应不断乘以2,并计下其整数部分,直到结果的小数部分为0为止例如小数 N=0.8125D0.8125*2=1.625 (b1=1)0.625*2=1.25 (b2=1)0.25*2=0.5 (b3=0)0.5*2=1.0 (b4=1)所以N=0.8125D=0.1101B五:16进制数转换为10进制数各位十六进制数与其对应权值的乘积之和即为相应的十进制数,例如:N=BF3CH=1116^3+1516^2+316^1+1216^0=48956D六:10进制转换为16进制1:可以先转换为2进制再转换为16进制2:除法:把要转换的十进制数的整数部分不断除以16,并记下余数,直到商为0为止:例如:N=48956D48956/16 = 3059 余12(a0=12)3059/16=191 余3 (a1=3)191/16=11 余15 (a2=15)11/16 = 0 余11 (a3=11)所以:N=48956D = BF3CH原码,补码,反码原码:最高位表示符号(正数用0,负数用1),其它位表示数值位,称为有符号数的原码表示法,例如:N=45=00101101B 【N】原码=0 0101101BM=-45 【M】原码=1 0101101B反码:正数的反码与原码相同,符号位用0表示,数值位值不变。负数的反码符号位用1表示,数值位为原码数值为按位取反形成,即0变1,1变0,例如:N=45=00101101B 【N】反码=0 0101101BM=-45 【M】反码=1 1010010B补码:正数的补码与原码相同,即符号位用0表示,数值位值不变。负数的补码为反码加1形成,例如:N=45=00101101B 【N】补码=00101101BM=-45 【M】补码=11010011B例如:11000111=-57计算方式:最高位为1,先加负号接着取反码+1=00111001=57即-57二进制加法在这个例子当中25 的原码:00011001 -25的补码为:1110011132 的原码:00100000 -32的补码为:11100000即-25等于25的反码+1最终的结果为 11000111即-57,将其反码加1之后转化为十进制为57(验证了结果的正确性)在这里11000111最前面应该还有个1,在这里系统将其抛弃了(但不是彻底抛弃,这里的进位被PSW寄存器里记录了,去掉他并不影响结果)补码的表数范围N位二进制数能够表示的 无符号整数范围:0 ~ 2^n - 1如8位:0~255 (8个位都表示数值了,最大2^8-1)N位二进制数能够表示的 有符号整数范围:-2^(n-1) ~ 2^(n-1) - 1如8位:-128~127 (因为最高位0,1表示正负,其余7位才表示数值,最大2^7-1)计算11111111转换为十进制数:无符号:2^8-1=255有符号:最高位是1,先确定是负数接着取反码:0000 0000接着+10001 = 1加上确定是负数,最终结果为-1所以无符号时为255,有符号时为-1
2025年04月03日
3 阅读
0 评论
0 点赞
1
...
14
15