单一职能原则
每个类只做一件事
开闭原则
系统中的类,应该对扩展开放,对修改关闭
基于以上 2 个原则,使用数据-界面分离模式。
运行
npm install
npm run dev
传统面向对象语言,书写类的属性时
- 所有属性全部私有化
- 封装方法供外部调用
在 TS 中设计类时,要保证类中属性要绝对控制(即:存取都受到严格控制)
开发小方块类
它能完成显示,但是它不知道怎么显示,何时显示
显示类
- 它能完成在哪里显示
- 根据传入的参数,处理显示
小方块形状类
知道以下 3 点,便可确定一个形状
- 确定形状的中心点相对坐标,记为(0,0)
- 更具中心点坐标,算出其他相对坐标,如(-1,0)便是在中心点左边位置
- 形状中心点绝对坐标,即真实坐标
完成形状的配置
"./config/square_group.ts"
完成移动类,使用静态方法 move()移动
完成旋转方法
使用继承,每个形状的旋转规则不一样,使用继承继承形状类,通过某个特定的形状,重载形状类的旋转方法