111
发表于|更新于|设计模式
|浏览量:
文章作者: 岁迹
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 岁迹!
相关推荐

2026-06-27
设计模式
以下是 10种设计模式 的完整技术实现方案,包含 类图(PlantUML)、应用场景、核心代码,按结构化方式组织: 工厂模式:封装对象创建逻辑,客户端无需知道具体类。 策略模式:定义可互换的算法族,运行时动态切换。 装饰器模式:动态扩展对象功能,避免继承层次过深。 组合模式:统一处理单个对象和对象集合,形成树形结构。 观察者模式:一对多依赖关系,状态变化自动通知所有依赖对象。 状态模式:对象行为随内部状态改变而变化,避免条件分支。 中介者模式:封装对象间交互,降低直接耦合。 单例模式:确保一个类只有一个实例,并提供全局访问点。 代理模式:控制对目标对象的访问,增强功能(如缓存、权限)。 享元模式:共享细粒度对象,减少内存开销(如字符、图形复用)。 模板方法模式:定义算法骨架,子类重写特定步骤而不改变结构 一、组合模式(Composite)想表示对象的部分-整体层次结构希望用户用一致的方式处理个体对象和组合对象。 类图 ———————————————————————————————————————————————————————————————- 核心代码123456789...

2026-06-27
数据库概论
数据库概论数据、数据库、数据库管理系统、数据库系统 是数据库中最常用的 4 个基本概念。 数据(Data):数据是描述事物的符号记录,是信息存在的一种形式。只有通过解释或处理的数据才能称为有用的信息。 数据库(Database,DB):数据按照一定格式存储在数据库内。数据库中存储的数据具有 永久存储、有组织、可共享 这 3 个基本特点。 数据库管理系统(Database Manage System,DBMS):专门用于建立和管理数据库的一套软件。实现对数据有效的管理和维护。 数据库系统(Database System,DBS):在计算机中引入数据库技术之后的系统。一个完整的数据库系统包括数据库、数据库管理系统、相关实用工具、应用程序、数据库管理员和用户。其中数据库管理员最终通过 DBMS 维护数据库,用户(程序员和数据库终端用户)则是数据库的服务对象。 数据模型模型:对现实世界的抽象。能反映事物的本质特征 数据模型:对现实世界数据特征的抽象。是数据库系统的核心和基础。 一般而言,数据具有动态、静态两种特征。 数据的静态特征:数据的基本结构、数据间的联系、对数据取值范围的约束 数...

2026-06-27
构建指南详解
这份 CrossLink 构建系统指南 非常专业和全面,它详细说明了一个支持从原生库到Unity Package全流程自动化构建的系统。下面我为你梳理和解释其中的核心内容、工作流程以及最佳实践。 🧠 核心概念与价值这套构建系统的核心目标是实现 自动化 和 标准化。它通过 Makefile 和 Shell 脚本 将复杂的多平台编译、依赖同步和测试流程封装成简单的命令,极大提升了开发效率,保证了构建结果的一致性,尤其适合团队协作和持续集成(CI/CD)环境。 💡 为何有时需要更直接地控制构建工具?既然 Unity 能自动处理,为什么我们有时还需要了解甚至直接使用这些构建工具呢?主要是为了应对更复杂的需求: 深度定制:当你需要深度定制 AndroidManifest.xml(比如添加特殊的权限或元数据),或者引入复杂的第三方 SDK(这些SDK可能有自己的依赖和资源冲突)时,可能需要导出 Gradle 项目到 Android Studio 中进行手动配置。 疑难排查:当打包过程出错时,错误信息往往来自底层的构建工具(如 Gradle 报依赖冲突、aapt报资源重复)。...

2026-06-27
移动端游戏发布
Goggle Play游戏发布Goggle Play Console端 账号与材料准备 注册开发者账号:访问 Google Play Console,使用你的谷歌账号登录并缴纳一次性注册费。务必准确填写开发者名称等信息,因为这将在应用商店中公开显示。 准备应用材料:除了打包好的应用(APK 或 AAB 文件),你还需要准备:应用图标、截图、宣传图、描述文字、关键词、隐私政策链接等。所有图片素材需符合平台要求的尺寸和格式。 应用创建与配置 在 Play Console 中创建新应用,填写名称、默认语言等基本信息。 需要填写一份内容分级问卷,系统会根据答案自动生成内容分级。 必须提供一个可公开访问的隐私政策链接,详细说明数据收集和使用情况。 测试与发布 充分利用测试轨道:在上线前,强烈建议使用 Google Play 的测试功能。你可以创建内部测试、封闭式测试或开放式测试,将应用包分发给指定的测试人员,收集反馈并修复问题,这能有效避免上线后的差评。 发布审核:完成所有配置后,提交应用审核。审核通过后,可以选择手动发布或定时发布 Unity端项目设置Unity 项目关键设...

2026-06-27
Lua面试学习
1.Table表基本原理: 在lua中不存在字典,列表等数据类型,同时也不存在class与struct等数据类型,所有的这些类型都是基于Table表实现的。 lua是关联性数据结构,可以使用任意类型的值来表示索引,但不可以是nil lua是不固定大小的数据结构,可以自动进行扩容 如果在table中允许nil存在,他是会占一个索引位 {}相对于匿名table,如果判断一个table是否为nil,不能直接进行与{}比较,因为相对于2个table,而非空。if next(data) == nil then end进行判断 12345678910111213141516171819202122--数组(如果使用Table表来实现数组,默认索引是从1开始的,但是可以指定元素索引。并且lua中的数组中元素类型可以不相同)--在lua中的#是取出数组长度,但是遇见nil会直接停止,不会获取后序的元素local Mytable = {1,3,"av",1.2,true}Mytable["123"] = "123...

2026-06-27
Mysql
公告
记录游戏客户端开发、项目复盘和个人成长。