02涉及的相关知识点(读书笔记:TypeScript图形渲染实战算法分析与架构设计)

与编程语言相关的知识点
常用编程语言
  • C语系
支持泛型不支持泛型
C C++ C# Java TypeScript(强类型)JavaScript Php(弱类型)
  • 非C语系

Python Visual Basic

编程模式
  • 面向过程编程(C语言)
  • 面向对象编程(C++)
  • 面向接口编程
  • 泛型编程
  • 函数式编程(特点 线程安全,利用线程安全实现并发并行)
与渲染API相关的知识点
2D底层渲染API(与操作系统相关)
  • Windows GDI/GDI+ (Graphical Device Interface图形设备接口,整个windows操作系统都是由GDI/GDI+绘制出来的,它是一组C/C++的API接口)
  • Linux Cairo/QT(Linux中窗口系统是分开的,不像Windows或者MacOS是紧密合在一起的,Cairo/QT都是可以跨平台运行的,包括Windows Linux MacOS IOS,但一般说的范畴的划分是按照操作系统底层原生特效,因此归为Linux中)
  • MacOS/IOS Quartz2D
  • Android Skia(跨平台)
  • HTML5 Canvas2D(将h5的canvas独立出来,因为现在很多浏览器比如Chrome或者FireFoxes都是具有操作系统的,网页操作系统,底层也是使用Canvas2D作为绘制系统,所有网页元素都是由Canvas2D绘制的)
3D底层渲染API
  • DirectX(Windows)
  • OpenGL(ES) (跨平台 PC:OpenGL;移动端:OpenGL(ES))
  • WebGL(用在HTML5中的Canvas元素中)
  • Vulkan
  • IOS Metal
与设计模式相关的知识点
创建型模式
  • 工厂方法模式(由于本书面向接口编程,因此很多地方实例的产生不是用new,因为接口没有办法new出来,所以使用工厂方法创建相关的接口,精灵系统的精灵ISprite和所有基本形体IShape都是由SpriteFactory制造生产的)
  • 抽象工厂模式
  • 单例模式
  • 建造者模式
  • 原型模式
结构型模式
  • 适配器模式(树结构中为了统一线性遍历算法,将队列和栈数据结构适配成一致的操作接口)
  • 装饰器模式
  • 代理模式
  • 外观模式
  • 桥接模式
  • 组合模式(树形结构)
  • 享元模式(本书重点:享元模式最大优点是减少内存。实现的精灵系统使用享元设计模式,多个精灵可以共享同一个形体,但是可以有不同的渲染状态,大小,位置和方向等)
行为型模式
  • 策略模式(用到)
  • 模板方法模式(Application类通过模板方法模式规定了整个入口类的运行流程)
  • 观察者模式
  • 迭代器模式(使用迭代器模式抽象所有具有迭代功能的类或接口,IDoom3 Tokenizer 贝塞尔曲线迭代器 树结构深度优化和广度优化的8个线性遍历迭代器)
  • 职责链模式
  • 命令模式
  • 备忘录模式
  • 状态模式
  • 访问者模式
  • 中间者模式
  • 解释器模式
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值