javascript中接口的概念
相信大家对工厂模式不陌生,一直都想学好javascript ,最近突然有个想法:能不能用javascript实现工厂模式,那么就会有引入接口的概念,但是小弟知识浅薄,所以不知道有没有这种模式,如果有,什么环境下用,对前端开发有什么价值?
通过对和的学习,加上个人的理解,
模板方法模式:父类定义函数,子类去实现。跟C#中的接口很相似;
策略模式:子类重写父类的函数,但是有些操作,所有的子类都是必须遵循,就不允许重写;
我觉得设计模式是跟语言无关的,所以我觉得在javascript中也可以应用这些设计模式,只是需要在不同的环境下,有不同的取舍。
以上都是个人理解。
现在我们来说说接口吧,C#中接口被继承,就必须实现,而且接口不能有实现,只是一些规范的定义。但是在javascript中能这样吗?先上一段自己写的代码吧:
1 var ICar = function(mycar) { 2 mycar = mycar | {}; 3 mycar.start = function() { }; 4 mycar.stop = function() { }; 5 mycar.speed = function() { }; 6 return mycar; 7 } 8 9 var carA = function() {10 var my = {};11 var mycar = ICar(my);12 mycar.start = function() {13 return "this is carA.start method!";14 };15 mycar.stop = function() {16 return "this is carA.stop method!";17 };18 mycar.speed = function() {19 return "this is carA.speed method!";20 };21 }22 23 24 var carB = function() {25 var my = {};26 var mycar = ICar(my);27 mycar.start = function() {28 return "this is carB.start method!";29 };30 mycar.stop = function() {31 return "this is carB.stop method!";32 };33 mycar.speed = function() {34 return "this is carB.speed method!";35 };36 }
不知道我写的对不对,希望大家多多指点。