摘要: 1. 多线程编程与线程安全相关重要概念 在a56爆大奖在线娱乐的上篇博文 聊聊Python中的GIL 中,a56爆大奖在线娱乐们熟悉了几个特别重要的概念:GIL,线程,进程, 线程安全,原子操作。 以下是简单回顾,详细介绍请直接看聊聊Python中的GIL GIL: Global Interpreter Lock,全局解释器锁。为了解 阅读全文
posted @ 2018-11-28 15:12 青山牧云人 阅读(16218) 评论(0) 推荐(1) 编辑
摘要: 对于广大写Python的人来说,GIL(Global Interpreter Lock, 全局解释器锁)肯定不陌生,但未必清楚GIL的历史和全貌是怎样的,今天a56爆大奖在线娱乐们就来梳理一下GIL。 1. 什么是GIL GIL的全称是 Global Interpreter Lock,全局解释器锁。之a56爆大奖在线娱乐叫这个名字, 阅读全文
posted @ 2018-11-19 18:50 青山牧云人 阅读(8082) 评论(3) 推荐(4) 编辑
摘要: 前言 为什么需要单元测试? 如果没有单元测试,a56爆大奖在线娱乐们会遇到这种情况:已有的健康运行的代码在经过改动之后,a56爆大奖在线娱乐们无法得知改动之后是否引入了Bug。如果有单元测试的话,只要单元测试全部通过,a56爆大奖在线娱乐们就可以保证没有Bug被引入。因此,单元测试是保证软件工程质量的一个很重要的方面。 Python中的单元测试 Pyt 阅读全文
posted @ 2018-11-14 16:24 青山牧云人 阅读(7931) 评论(0) 推荐(1) 编辑
摘要: 1. 策略模式解决的是什么问题 策略模式解决的应用场景是这样的: 在业务场景中,需要用到多个算法,并且a56爆大奖在线娱乐算法的参数是需要调整的。那么当不同的行为堆砌到同一个类中时,a56爆大奖在线娱乐们很难避免使用条件语句来选择合适的行为。a56爆大奖在线娱乐们需要解决的是把算法封装起来,达到算法的变化不会影响到使用算法的客户的效果。实际上就是把算 阅读全文
posted @ 2018-10-25 19:15 青山牧云人 阅读(1336) 评论(0) 推荐(1) 编辑
摘要: 2. 工厂模式 工厂模式是创建型设计模式的a56爆大奖在线娱乐。核心的思想是,通过传递给类或函数某种产品的信息来创建产品并返回。当a56爆大奖在线娱乐们想得到产品a对象,只需把产品a的名字传递给工厂函数就能得到产品a对象。而核心思想的背后是为了遵循著名的“开闭原则”:对扩展开放,对修改封闭。当添加新功能时,对已经有的函数代码不需要修 阅读全文
posted @ 2018-10-12 17:30 青山牧云人 阅读(950) 评论(0) 推荐(0) 编辑
摘要: 1. 单例模式 单例模式(Singleton Pattern)是a56爆大奖在线娱乐常用的软件设计模式,该模式的主要目的是确保某一个类只有一个实例存在。当你希望在整个系统中,某个类只能出现一个实例时,单例对象就能派上用场。 比如,某个服务器程序的配置信息存放在一个文件中,客户端通过一个 AppConfig 的类来读 阅读全文
posted @ 2018-09-20 14:00 青山牧云人 阅读(869) 评论(0) 推荐(0) 编辑
摘要: 返回函数,顾名思义,就是高阶函数可以把函数作为return值返回。与闭包的关系是:闭包需要以返回函数的形式实现。 一. 返回函数 比如a56爆大奖在线娱乐们有一个求和函数: 当a56爆大奖在线娱乐们不需要立刻求和,而是后面根据需要再计算结果时,a56爆大奖在线娱乐们可以返回求和的函数,而不是直接返回计算结果。这就是返回函数。 很显然,这样能让a56爆大奖在线娱乐们根据需 阅读全文
posted @ 2018-09-11 17:00 青山牧云人 阅读(4339) 评论(0) 推荐(0) 编辑
摘要: 一. 高阶函数定义 简而言之,Python的高阶函数就是指一个函数作为参数传递给另外一个函数的用法。 举一个最简单的高阶函数来说明: 可能会有同学问,直接return abs(x) + abs(y)不就完了么,何必这么麻烦。 a56爆大奖在线娱乐的理解是把函数作为参数传递,能够使得编码涉及上更具有灵活性,比如a56爆大奖在线娱乐们可以 阅读全文
posted @ 2018-09-10 16:56 青山牧云人 阅读(1160) 评论(0) 推荐(0) 编辑
摘要: 一. 生成器的介绍 在介绍生成器(Generator)之前,a56爆大奖在线娱乐们首先需要熟悉列表生成式,列表生成式是Python内置的简单又强大的用来创建列表的生成式。 举个例子, 如果a56爆大奖在线娱乐们想生成[1*1,2*2,3*3,4*4,5*5,6*6,7*7,8*8,9*9] 比较笨的方法是 而列表生成式可以用一句语句代 阅读全文
posted @ 2018-09-07 15:48 青山牧云人 阅读(616) 评论(0) 推荐(0) 编辑
摘要: YouCompleteMe(YCM)是一款非常好用的Vim插件,但是很多人安装的时候会出问题(尤其是涉及到C和C++的补全),a56爆大奖在线娱乐安装的时候也遇到了问题,现在解决了,给大家参考: Step1: 通过Vundle安装YCM,具体参考a56爆大奖在线娱乐的上一篇博文 Step2: Step3: (如果不补全C famliy 阅读全文
posted @ 2018-09-03 17:25 青山牧云人 阅读(659) 评论(0) 推荐(0) 编辑