- 博客(69)
- 收藏
- 关注
原创 软件工程-面向对象的软件工程
面向对象系统中的对象是数据抽象与过程抽象的综合。系统的状态保存在各个数据抽象的核心所定义的数据存储中。控制流包含在各个数据抽象中的操作内。不像在过程性范型里那样,把数据从一个过程传送到另一个过程,而是把控制流从一个数据抽象通过消息传送到另一个数据抽象。
2025-02-13 14:55:17
390
原创 软件工程-软件需求规格说明(SRS)
需要在软件分析完成后,编写完成软件需求说明书。控制系统进化过程(追加需求):拥有版本记录表。便于用户、分析人员、设计人员进行交流。具体标准可参考GB856T-88。支持目标软件系统的确认(验收)
2025-02-10 12:52:17
295
原创 软件工程-软件需求分析基础
准确地回答“系统必须做什么?”,也就是对目标系统提出完整、准确、清晰、具体的要求目标是,在分析阶段结束之前,系统分析员应该写出软件需求规格说明书,以书面形式准确地描述软件需求。
2025-02-07 15:41:25
306
原创 软件工程-数据字典DD
数据字典是关于数据的信息的集合,也就是对数据流图DFD中包含的所有元素的定义的集合数据流图DFD和数据字典DD共同构成系统的逻辑模型。
2025-02-07 13:20:29
266
原创 软件工程-数据流图DFD
自外向内:首先确定系统的输入输出,以反映系统与外界环境的接口自顶向下:从0级图开始逐步绘画分析至1级、2级DFD逐层细化:细化每一个加工框(P),如果加工框内还有数据流,可将这个加工框再细化分成几个加工框,并在各子加工框之间画出数据流完善求精:一次细化一个加工,直到每一个加工执行一个可以用程序实现的功能。
2025-02-06 16:49:31
492
原创 软件工程-可行性研究
应与用户一起再次复查问题定义、工程规模和目标,这次复查应把数据流图和数据字典作为讨论的基础前四步构成一个循环。循环这四个过程直到提出的逻辑模型完全符合系统目标。
2025-02-05 16:41:15
392
原创 软件工程-软件开发模型
问题定义——》可行性研究——》需求分析——》软件设计——》编码——》测试——》维护|---------------计划时期---------------|---------------------------开发时期-------------------------|-运行时期-|特点:1、阶段间具有顺序性和依赖性:必须等前一阶段完成后才能进入下一阶段;前一阶段的成果将会成为下一阶段的启示输入内容。2、推迟实现的观点:尽可能推迟了程序的物理实现,是按照瀑布模型开发软件的一条重要的指导思想。
2025-01-27 12:52:58
621
原创 软件工程的基本原理
软件生命周期:1)软件定义;2)可行性研究;3)需求分析;4)系统设计;5)编码;6)测试;7)运行;8)维护应该把软件生命周期计划分成若干个阶段,并相应地制定出切实可行的计划,然后严格按照计划对软件的开发和维护工作进行管理。
2025-01-21 13:55:25
328
原创 软件工程的本质特征
软件所解决的问题十分复杂,通常不得不把问题分解,使得分解出的每个部分是可以理解的,而各个部分之间保持简单的通信关系。这并不能降低问题的整体复杂性,但是却可使它变得可以管理。
2025-01-20 12:41:14
434
原创 设计模式-职责链模式
是一个行为模式,为请求创建一个接收者对象的链。每个处理者都包含另一个权限高一级处理者的引用将请求交给权限最低的处理者,判断自己是否能处理,如果不能处理,则交给下一级处理者,以此类推,如果最高级处理者也无法处理,则驳回请求。
2024-12-28 14:08:09
679
原创 设计模式-策略模式
定义一些算法族,分别封装起来,让他们之间可以相互替换。把算法封装成接口,聚合到使用类中把变化的代码从不变的代码中分离出来。用聚合和组合的方式代替继承。将使用层和算法实现层分离开。
2024-12-28 13:42:56
596
原创 设计模式-迭代器模式
属于行为型模式,如果集合元素是用不同的方式实现的,有数组,集合,列表等,用迭代器模式可以用一致的方式遍历集合元素,,而不知道集合对象的底层表示。
2024-12-18 16:19:57
479
原创 设计模式-命令模式
我们经常需要向某些对象发送请求,但并不知道具体的接收者是谁。我们在程序运行时指定具体的请求接收者即可,这就是命令模式。我们会将一个请求封装成一个对象,并要求这个请求是可取消的。
2024-12-15 14:23:07
667
原创 设计模式-代理模式
为目标对象提供一个替身,以控制这个对象的访问。可以在目标对象实现的基础上,增强额外的功能操作被代理对象可以是远程对象、创建开销大的对象或者是需要安全控制的对象有静态代理、动态代理(JDK代理,接口代理)和Cglib代理(可以在内存动态地创建对象,而不需要实现接口)
2024-12-14 14:49:04
403
原创 设计模式-享元模式
享元模式也叫蝇量模式,运用共享的方式,节约空间和性能。可以解决重复对象的内存浪费问题。最经典的享元模式就是对象池(把所有对象放在池中,按需调用)。
2024-12-13 15:31:19
430
原创 设计模式-外观模式
为子系统的一组接口提供一个一致的界面,定义一个高级接口使得其他子系统更加容易使用通过定义一个一致的接口,屏蔽子系统中的接口细节,便于外界调用。
2024-12-08 19:41:15
348
原创 设计模式-适配器模式
将某个类的接口转换成客户端期望的另一个接口,增强代码的复用性。例如:A类想要使用B类中的某个方法,但不能直接使用,A就可以调用适配器类中的某个方法,这个方法协助调用B类的方法,进行实现。用户无需知道被适配者(B类)的具体实现,是解耦的。让适配器继承被适配者,在适配器中实现客户端需要调用的接口,从而将适配器作为最终需要转换成的目标,客户端可以通过接口调用目标方法。原理与类适配器相似,但是适配器不再继承被适配器,而是根据“合成复用原则”用关联关系代替继承关系。将被适配器作为一个实例对象存放在适配器中。
2024-11-24 16:20:28
636
原创 设计模式-建造者模式
建造者模式也叫生成器模式,是一种创建类模式。将复杂对象的建造过程抽象出来,这个抽象的建造过程可以构造出不同属性的对象。用户只需要确定建造对象的类型和内容,不需要知道对象内部发具体构造细节。
2024-11-24 14:20:20
582
原创 设计模式-原型模式
原型模式是指,通过拷贝原型对象,创建出新的对象,而无需知道创建的细节。工作原理:通过原型对象自身实现的克隆方法,创建出新的克隆对象。
2024-11-23 15:34:42
391
2
原创 设计模式-工厂模式
简单工厂类属于创建模式,是工厂模式的一种。是由一个工厂对象决定创建出哪一种产品的实例。本质上简单工厂是一个封装了实例化对象行为的类。常用于需要大量的创建某种对象时。将实例化对象的方法抽象,在子类中具体实现,将对象的实例化推迟到子类。是对工厂方法模式的改进,通过定义一个interface用于创建相关有依赖关系的简单工厂,代替了工厂方法模式中的抽象类。通过接口将一系列简单工厂分类,便于调用。接口层面作为工厂的抽象层面,一系列简单工厂作为实现层面,具体实现对象的实例化。
2024-11-23 14:25:49
601
原创 UML类图
Unified Modeling Language统一建模语言。类之间的关系有:依赖、泛化(继承)、实现、关联、聚合与组合。2)静态结构图:类图、对象图、包图、组件图、部署图。3)动态行为图:交互图、状态图、活动图。一种用于分析和设计的语言工具。是程序员之间沟通的工具。在设计模式中常用到类图。
2024-11-20 20:09:00
126
原创 设计模式概述
1) 将可能发生变化的代码封装起来,不要与其他代码有较强的耦合性。2)使用面向对象/面向接口的编程思维,而不是面向过程编程。3)一切为了对象之间的松耦合而努力。
2024-11-13 16:04:07
757
原创 Unity-Shader-语义
POSITION:顶点坐标(模型空间下)NORMAL:法线向量(模型空间下)TANGENT:切线向量(模型空间下)TEXCOORD0~n:纹理坐标COLOR:顶点颜色。
2024-10-16 16:50:47
427
原创 Unity-Shader-SubShader CG代码块
顶点函数,将顶点在模型空间的坐标转换为屏幕坐标(模型坐标转剪裁空间)片元函数:对每一片元(像素)计算其颜色SubShaderpassCGPROGRAM//函数声明函数定义ENDCG需要先声明函数,再定义函数这两个函数均有返回值和传入参数,返回值在函数名前,参数在函数名后的括号内返回值 vert(参数)示例为将模型空间转换为剪裁空间的简单操作(MVP变换)
2024-10-16 15:04:09
400
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人