响应式编程: 关键字:RxJava,观察者模式,EventBus,广播 理念:一切为事件 发出A事件通知B执行,而不是B一直等待(阻塞),提高效率。 函数式编程: 关键字:lambda,lisp,大数据,AI 理念: 1.一切为函数 2.每个函数是可靠的,没有副作用的;不能依赖外部环境/上下文 3. ...
分类:
其他好文 时间:
2020-03-24 21:38:58
阅读次数:
83
什么是生成器(就是自定义的迭代器) 只要在函数体内存出现yield关键字,那么再执行函数就不会执行函数体代码,会得到一个结果,该结果就是生成器。 def func(): print(" >1") yield 1 print(" >2") yield 2 print(" >3") yield 3 #生 ...
分类:
编程语言 时间:
2020-03-24 15:54:44
阅读次数:
81
距离Java 8发布已经过去了7、8年的时间,Java 14也刚刚发布。Java 8中关于函数式编程和新增的Stream流API至今饱受“争议”。 如果你不曾使用Stream流,那么当你见到Stream操作时一定对它发出过鄙夷的声音,并在心里说出“这都写的什么玩意儿”。 如果你热衷于使用Stream ...
分类:
其他好文 时间:
2020-03-23 00:09:49
阅读次数:
69
什么是AOP AOP(Aspect Oriented Programming)意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的 ...
分类:
编程语言 时间:
2020-03-18 21:55:53
阅读次数:
74
生成器与列表生成式的区别 列表生成式是根据生成式,将整个列表计算出来并填充到内存,以供程序使用。 例如,以下的列表生成式会在内存中分配一段空间,并将生成的列表放到内存中,然后使 指向该列表。这样,如果我们需要的元素足够多,内存将会被占满。为了解决这个问题,python中可以使用生成器 来提供所需要的 ...
分类:
编程语言 时间:
2020-03-18 11:46:23
阅读次数:
54
1.举例sort和sorted对列表排序,list=[0,-1,3,-10,5,9] #列表排序 list=[0,-1,3,-10,5,9] list.sort(reverse=False) print("list.sort在list基础上修改,无返回值",list) list=[0,-1,3,-1 ...
分类:
编程语言 时间:
2020-03-16 14:54:34
阅读次数:
83
今日所学: 一、生成器 生成器函数:yield的好处1、yield可返回值,与return相比可返回多次2、yield可保存状态,可以基于上次next的位置再进行下一次的yield返回操作,接着往下走。 import time def delivery(): print("开始生孩子啦") yiel ...
分类:
编程语言 时间:
2020-03-14 14:32:01
阅读次数:
64
之前看的应该都算是基础知识,然后今天听到类这个说法,刚开始感觉还是非常高大上的,但是慢慢看来,其实用函数式编程也是能实现的,但最终来说class还是牛逼的,那么今天就记录一下自己在引入类过程的认识吧。 1.类即类别、种类,是面向对象设计最重要的概念,对象是特征与技能的结合体,而类则是一系列对象相似的 ...
分类:
编程语言 时间:
2020-03-13 01:39:24
阅读次数:
70
三大编程范式 1、面向过程编程 2、函数式编程 3、面向对象编程 编程进化论 1、编程最初是无组织无结构的,由简单控制流中按步写指令 2、从上述的指令中提取重复的代码块或逻辑,组织到一起(比如定义了一个函数),便实现了代码重用,且代码由无结构走向结构化,创建程序的过程变得更加具有逻辑性。 3、我们定 ...
分类:
编程语言 时间:
2020-03-12 21:42:53
阅读次数:
58
1、Stream流 得益于Lambda所带来的函数式编程,引入了一个全新的Stream概念,用于解决已有集合类库既有的弊端。 Java 8的Lambda让我们可以更加专注于做什么(What),而不是怎么做(How) 1.1. 流式思想 整体来看,流式思想类似于工厂车间的“生产流水线”。 之前: im ...
分类:
其他好文 时间:
2020-03-12 18:54:17
阅读次数:
78