软件体系结构-简单工厂模式
软件体系结构-简单工厂模式 定义 创建型模式 在简单工厂模式中用于创建实例的方法通常是静态(static)方法,因此又被称为静态工厂方法(Static Factory Method)模式 要点:如果需要什么,只需要传入一个正确的参数,就可以获取所需要的对象,而无须知道其创建细节 UML类图 组成:工厂类,抽象产品类,具体产品类,客户端类 考试时的分析注意分析对应关系: 代码 抽象产品类 123public abstract class Shape { public abstract void Draw();} 具体产品类 123456public class Circle extends Shape{ @Override public void Draw() { System.out.println("This is a circle"); }} 工厂类 123456789101112131415public class shapeFactory...
软件体系结构-设计模式概述
软件体系结构-设计模式概述 设计模式定义 设计模式是在特定环境下为解决某一通用软件设计问题提供的一套定制的解决方案,该方案描述了对象和类之间的相互作用。 设计模式: 一套被反复使用的、多数人知晓的、经过分类编目的、代码设计经验的总结 是一种用于对软件系统中不断重现的设计问题的解决方案进行文档化的技术 是一种共享专家设计经验的技术 设计模式的目的:为了可重用代码、让代码更容易被他人理解、提高代码可靠性 设计模式基本要素:模式名称、问题、解决方案、效果 设计模式分类 根据目的,分为:创建型、结构型、行为型: 创建型模式用于创建对象 结构型模式用于处理类或对象的组合 行为型模式用于描述类或对象如何交互和怎么分配职责 根据范围可分为类模式和对象模式
软件体系结构-软件质量
...
软件体系结构-UML概述与结构建模
软件体系结构-UML概述与结构建模 软件体系结构建模概述 UML 是统一建模语言,是一种分析设计语言,也是一种建模语言,是由图形符号表达的建模语言,是一种用于描绘软件蓝图的标准语言,偶尔也要注释。 UML 的结构包括模型结构和通用机制: 模型元素包括事物以及事物之间的联系,无论在哪个图中,同一个模型元素都保持同样的意义和符号。 通用机制包括规格说明、修饰、公共分类、扩展机制这四种,允许用户对 UML 进行扩展。 UML的特点: 工程化,规范化,可视化,系统化,文档化,智能化 基于软件体系结构的开发 软件体系结构模型: 结构模型、框架模型、动态模型、过程模型、功能模型 Kruchten ‘4+1’ 视图模型: 逻辑视图、开发视图、过程视图、物理视图 + 场景视图 UML中的结构建模 类图 类图使用需要出现在系统内的不同的类来描述系统的静态结构,类图包含类和它们之间的关系,它描述系统内所声明的类,但它没有描述系统运行时类的行为。 类图中的对象 可见性: 12345//可见性一般有四种// +:表示public// -:表示private//...
软件体系结构-概述
软件体系结构-概述 软件体系结构的定义 软件体系结构 =...
KMP匹配字符串
KMP匹配字符串 题目链接:https://leetcode.cn/problems/find-the-index-of-the-first-occurrence-in-a-string/submissions/ 实现 strStr() 函数。 给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始)。如果不存在,则返回 -1。 示例 1: 输入: haystack = “hello”, needle = “ll” 输出: 2 示例 2: 输入: haystack = “aaaaa”, needle = “bba” 输出: -1 KMP思路简介 KMP的主要思想是:在匹配时,如果遇到某个项不匹配,则尝试利用之前已经匹配过的结果,避免从头继续匹配。对于字符串匹配,可以做到只遍历一遍文本串就匹配出结果。时间复杂度总暴力循环的O(m*n)降低到O(m+n):匹配时间+生成Next数组的时间。 Next数组生成 next[i]表示:在模式串中,前i个(下标为0开始)字符组成的子串的...






