1. 封装:数据隐藏,方便调用
将Object.create封装在函数extend中
2. 继承:方便修改数据
使用Object.create在父类型以及子类型建立联系
使用isprototypeof明确继承关系
3. 多态:接口的重用
多态性可以简单地概括为“一个接口,多种方法”,程序在运行时才决定调用的函数
改进命名空间的使用方式,利用模块模式将生成命名空间的功能封装在函数中。并且通过闭包来设置命名空间私有数据。
4. 抽象:方法的重用
小行星游戏(Asteroids)
在小行星游戏中应用抽象原则,我们先想一下这个游戏中的对象。回顾一下,小行星游戏中的对象有:飞船,小行星,飞碟,子弹。现在想一想这些类共有的东西,他们是否有公有的状态、行为,或者功能?通过提取所有对象中公有的元素,我们可以把这些元素概括为一个抽象类。
例如,飞船,小行星,飞碟,子弹,他们有一个共同的行为,就是在画面中移动。我们可以把这个行为抽象出来,创建一个抽象类,这个类里包含对象移动所需的普遍性质。这些性质包括状态:position(位置) 和velocity(速率),行为:moving(移动)。