2018年1月29日

5.装饰器进阶篇

摘要: 接着上一篇来 1.使用装饰器来验证函数参数的类型是否正确: 2.使用装饰器对一些计算非常耗时、复杂的结果进行缓存: 没有命中缓存 4999999950000000 命中缓存 4999999950000000 3.使用装饰器来实现单例模式 阅读全文

posted @ 2018-01-29 22:31 后端bug开发工程师 阅读(128) 评论(0) 推荐(0) 编辑

4.装饰器基础篇

摘要: 1.三个功能函数 f1,f2,f3 2.项目遇到性能瓶颈,需要统计各个函数执行的时间 第一种解决方案(红色部分为新加代码): 分析:为了统计各个函数执行的时间,修改了函数原有的代码,违反了代码设计的开放-封闭原则(对扩展开放,对修改关闭) 3.使用装饰器进行改进(红色部分为新加代码): 分析:使用装 阅读全文

posted @ 2018-01-29 17:59 后端bug开发工程师 阅读(145) 评论(0) 推荐(0) 编辑

3.闭包

摘要: 执行步骤: 1.调用 outer 函数并且返回内部函数 inner,outer 函数调用完成 2.执行 inner 函数并输出结果:5 分析: 如果是普通函数,在执行第一步完成时,outer 函数作用域里面的局部变量会被释放,但是在执行 inner 函数时为什么还能够使用 arg 变量呢?这就是闭包 阅读全文

posted @ 2018-01-29 17:02 后端bug开发工程师 阅读(144) 评论(0) 推荐(0) 编辑

导航