思考并回答问题:
UIFrameWork
思考并回答以下问题:
- Resources.Load后都需要使用Dictionary缓存吗?都需要写在管理类中吗?管理类需要设置成单例吗?
- 为什么Asset文件夹和Hierarchy视图中的都需要管理?如何管理?
- 为什么单例模式要分成可以继承MonoBehavior和不继承MonoBehavior的?
- 为什么要使用单例继承?
- UIFramework原来是3个类,后来多加了4个类。共7个类。为什么这样做?
- 将多个UI管理起来成一个系统。怎么理解?
- 当你不知道要传什么类时,就使用反射。是什么意思?
- 为什么要自动挂载脚本到预制体上?
- AddComponet(typeof(A))和AddComponet\()的区别是什么?
- 枚举只有一种类型的成员:命名的整数值常量。定义枚举,ENUMName,声明EnumName ConstName = EnumName.ConcreteConstant。
- 按钮点不了两种情况:1.被其他面板挡住了。2.EventSystem被删除掉了。怎么理解?
- 窗体之间进行解耦合怎么理解?怎么做到?
加载速度的优化--代理模式
思考并回答以下问题:
- 加载的Unity Asset资源会自动实例化成游戏对象吗?要怎么做?
- 代理模式的官方定义是什么?
- 代理模式的类图是什么样的?
- 代理者模式是结构型模式吗?
- 什么是资源管理“高速缓存”功能,为什么要使用这个功能?如何使用?
- 举例如何使用“高速缓存”这个例子描述代理模式。
- 如何用总经理和秘书来类比代理模式?这是保护代理吗?为什么?
- 和原始对象实现同一个接口并做前置判断是什么意思?
- 客户端全部调用代理者的方法来执行怎么理解?
- 代理模式的优点是可判断是否要将原始类的工作交由代理者类来执行,如此则可以免去修改原始类的接口及实现,怎么理解?
- 代理模式最重要的是新增一个代理类,然后在客户端把调用原始对象类的代码改成调用代理类的代码。怎么理解?
俘兵--适配器模式
思考并回答以下问题:
- “适配”这个词是什么意思?适配器是什么?为什么要适配?举一个生活中的物品。
- 适配器模式的官方定义是什么?背下来。
- 适配器模式为什么是结构型模式?
- 使用俘兵的例子来理解适配器模式是个很好方法,为什么?
- 原先是有3个类,一个是客户端,一个是Target接口类,还有一个是与预期不同的类。适配器模式就是增加一个适配器类。就像二孔插头和插座,希望三孔插头可以使用,需要增加一个二孔到三孔的转换器。一旦想到适配器模式,就是增加一个适配器类。这个类要保持需要适配的类的引用,继承Target接口类,就像电源适配器连接两头一样。然后客户端使用里氏替换原则调用,怎么理解?
前缀字尾--装饰模式
思考并回答以下问题:
- 装饰模式的官方定义是什么?
- 装饰模式为什么是结构型模式?
- 将“一个具有新功能的类,加入到现在类群组结构中,且不会破坏原有架构和接口”哪三种模式是这样的?
- 装饰者模式是在开—闭原则下实现动态添加或减少功能的一种方式。怎么理解?
- 装饰者模式就是不修改原类代码和继承的情况下动态扩展类的功能,传统的编程模式都是子类继承父类实现方法重载,使用装饰器模式,只需要加一个新的装饰器对象,更加灵活,避免数量和层次过多。怎么理解?