前提 笔者很久之前就有个想法:参考现有的主流ORM框架的设计,造一个ORM轮子,在基本不改变使用体验的前提下把框架依赖的大量的反射设计去掉,这些反射API构筑的组件使用动态编译加载的实例去替代,从而可以得到接近于直接使用原生JDBC的性能。于是带着这样的想法,深入学习Java的动态编译。编写本文的时 ...
分类:
编程语言 时间:
2020-06-06 11:07:49
阅读次数:
50
这篇文章完全摘录自别人,等后续,基于自己在项目中的应用,再重新写一下。 模板方法模式(Template Method Pattern):定义一个操作中的算法骨架,将一些步骤延迟至子类中.模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 demo 下面是一个模板方法模式的一个d ...
分类:
编程语言 时间:
2020-06-05 21:04:41
阅读次数:
57
装饰者模式 (Decorator Pattern)又称装饰器模式,在不改变原对象的基础上,通过对其添加属性或方法来进行包装拓展,使得原有对象可以动态具有更多功能。 本质是功能动态组合,即动态地给一个对象添加额外的职责,就增加功能角度来看,使用装饰者模式比用继承更为灵活。好处是有效地把对象的核心职责和 ...
分类:
编程语言 时间:
2020-06-04 13:46:08
阅读次数:
63
模板方法模式简述 模板方法(Template Method)模式的定义如下:定义一个操作中的算法骨架,而将算法的一些步骤延迟到子类中,使得子类可以不改变该算法结构的情况下重定义该算法的某些特定步骤。可以理解为:每个人做的一系列事件的顺序固定,不同的人做同一件事的方式不一样,它是一种类行为型模式。 模 ...
分类:
其他好文 时间:
2020-06-03 23:38:16
阅读次数:
108
装饰器,为原函数扩展新功能,用新功能区替代旧功能,在不改变原有的代码基础上,实现功能的扩展闭包函数内涵数使用了外函数的一个局部变量,外函数还把内涵数返回来的一个过程,内涵数为闭包,返回过来的函数替换外函数1.基础写法,闭包函数原理:用新函数替换旧函数,def kuozhang(func): def ...
分类:
其他好文 时间:
2020-06-03 17:33:54
阅读次数:
59
1 决定this指向的是函数执行的时候,而不是函数声明的时候。 2 谁调用的函数,this就指向谁,class和构造函数也适用,this指向实例。 3 箭头函数不改变this指向,this是上级函数作用域的this。 4 fn1.call({x:1}),用call函数调用,this就是传入{x:1} ...
分类:
其他好文 时间:
2020-06-03 00:57:25
阅读次数:
80
装饰器: 在不改变原有代码的基础上,实现功能的扩充.用原函数扩展新功能,用新功能去代替旧功能,用@表示情况一: 基本用法(闭包函数),通过闭包函数来扩展新功能 def kuozhan(tree): def new_tree(): print("旁边有小草") tree() print("旁边有小花" ...
分类:
其他好文 时间:
2020-06-01 20:31:47
阅读次数:
60
最近在工作中遇到了一个需求:老接口升级。是重新写了一个接口,而且是在另一个微服务中。甲方要求不改变原路径。 本人的工作是接口升级,网关是一个老员工在弄(重要代码)。在和老员工的沟通中进一步加深了对网关的认识。 2点收获。 1、本地跑网关微服务。因为有多个网关配置,修改的只是其中一个,启动时需要一些变 ...
分类:
编程语言 时间:
2020-06-01 00:35:52
阅读次数:
99
函数高级 一、闭包 def fun1(): x = 520 def fun2(): print(x) x = 1200 fun1() print(x)# 内部函数包含对外部作用于而非全局作用域的引用 二、装饰器 不改变函数体的代码,并且不改变函数的调用方式,为函数添加功能,他本质就是一个函数,附加被 ...
分类:
编程语言 时间:
2020-05-31 17:56:14
阅读次数:
59
一、装饰者模式的应用场景 在我们的生活中比如给煎饼加个鸡蛋,给蛋糕加上一些水果,给房子装修等。为对象扩展一些额外对象的职责。装饰者模式(Decorator Pattern)是指在不改变原有对象的基础之上,提供了比继承更有弹性的替代方案(扩展原有对象的功能)。 装饰者模式使用于以下几种场景: 用于扩展 ...
分类:
其他好文 时间:
2020-05-30 19:40:54
阅读次数:
84