讨论题目:
面向对象的设计模式曾经让很多程序员为之马首是瞻,它们真的有那么大的威力吗,使用C++编程时一定要尽可能使用这些设计模式吗?
思路点拨:
设计模式的本质是解决变化,是否要使用或者是否可以使用恰当取决于你对问题本质和扩展性的理解,切不可照搬。
进一步思考:
面向对象编程的模式到底解决了我们之前什么解决不了的问题了吗,没有它,我们还有没有更好的编程范式。
讨论题目:
面向对象的设计模式曾经让很多程序员为之马首是瞻,它们真的有那么大的威力吗,使用C++编程时一定要尽可能使用这些设计模式吗?
思路点拨:
设计模式的本质是解决变化,是否要使用或者是否可以使用恰当取决于你对问题本质和扩展性的理解,切不可照搬。
进一步思考:
面向对象编程的模式到底解决了我们之前什么解决不了的问题了吗,没有它,我们还有没有更好的编程范式。
const checkType = value =>{
return Object.prototype.toString.call(value).slice(8, -1)
}
const deepClone = obj =>{
const objvalue = checkType(obj)
let result = 0
if(objvalue === 'Object'){
result = {}
}else if(objvalue === 'Array'){
result = []
}else{
return obj
}
for( let key in obj ){
let value = obj[key]
let keyvalue = checkType(value )
if(keyvalue === 'Object' || keyvalue === 'Array'){
result[key] = deepClone[value]
}else {
result[key] = value
}
}
return result
}
登录后即可查看更多作业,立即登录
数据加载中...