- 博客(31)
- 收藏
- 关注
转载 浅谈Python设计模式 -- 责任链模式
声明:本系列文章主要参考《精通Python设计模式》一书,并且参考一些资料,结合自己的一些看法来总结而来。 之前在最开始就聊了Python设计模式有三种,其中关于创建型和结构型设计模式基本都已经聊了,那么现在来聊聊关于Python设计模式的行为型设计模式。 行为型设计模式: 用来处理系统实体之间通信的设计模式。 接下来,聊一下关于行为型设计模式...
2018-11-08 21:02:00
218
转载 浅谈Python设计模式 - 代理模式
声明:本系列文章主要参考《精通Python设计模式》一书,并且参考一些资料,结合自己的一些看法来总结而来。 一、在某些应用中,我们想要在访问某个对象之前执行一个或者多个重要的操作,例如,访问敏感信息 -- 在允许用户访问敏感信息之前,我们希望确保用户具备足够的去权限。同时在网络访问时,限制某些网络的访问等操作。 二、把一个计算成本较高的对象的创建过程延迟到用户首...
2018-11-08 19:51:00
183
转载 浅谈Python设计模式 - 享元模式
声明:本系列文章主要参考《精通Python设计模式》一书,并且参考一些资料,结合自己的一些看法来总结而来。 享元模式: 享元模式是一种用于解决资源和性能压力时会使用到的设计模式,它的核心思想是通过引入数据共享来提升性能。 在开发3D游戏时,例如有成千上万的士兵或者有成千上万棵树,如果一个3D地带的每个对象都单独创建,不使用数据共享,那么性能是无法接受的。...
2018-11-08 17:23:00
185
转载 浅谈Python设计模式 - 外观模式
声明:本系列文章主要参考《精通Python设计模式》一书,并且参考一些资料,结合自己的一些看法来总结而来。 外观模式 外观模式的核心在于将复杂的内部实现包装起来,只向外界提供简单的调用接口。类似现实世界中的电脑,开机按钮可以说就是一个简单的调用接口,帮用户屏蔽了复杂的内部电路。外观设计模式 -- 有助于隐藏系统的内部复杂性,并且通过一个简化的接口向客户端暴露必...
2018-11-08 16:28:00
155
转载 浅谈Python设计模式 - 适配器模式
声明:本系列文章主要参考《精通Python设计模式》一书,并且参考一些资料,结合自己的一些看法来总结而来。 从本篇便开始介绍结构型设计模式,而适配器设计模式便是该类设计模式的一种,那么什么是结构型设计模式呢? 结构型设计模式: 其主要用来处理一个系统中不同实体(比如类和对象)之间关系,关注的是提供一种简单的对象组合方式来创造新的功能。 适配器模式 该书...
2018-11-08 15:58:00
129
转载 浅谈Python设计模式 - 建造者模式
声明:本系列文章主要参考《精通Python设计模式》一书,并且参考一些资料,结合自己的一些看法来总结而来。 建造者模式 当我们想要创建一个由多个部分构成的对象,而且他们的构建需要一步接一步的地完成,只有当各个部分都创建好,这个对象才算完整。 -- 这正是 建造者设计模式的用武之地。 根据《精通Python设计模式》介绍,建造者模式通常用于补充工厂模式的...
2018-11-08 14:46:00
136
转载 浅谈Python设计模式 - 抽象工厂模式
声明:本系列文章主要参考《精通Python设计模式》一书,并且参考一些资料,结合自己的一些看法来总结而来。 在上一篇我们对工厂模式中的普通工厂模式有了一定的了解,其实抽象工作就是 表示针对工厂方法进一步抽象化,用于工厂方法本身也需要抽象集中管理的情况。 从工厂模式我们可以知道: 根据用户输入的不同,调用相同的工厂,将会输出不同的结果。 那么抽象工厂模式呢...
2018-11-08 11:44:00
105
转载 浅谈Python设计模式 - 工厂模式
声明:本系列文章主要参考《精通Python设计模式》一书,并且参考一些资料,结合自己的一些看法来总结而来。 工厂模式: 顾名思义,工厂则是根据提供的不同的材料,生产出不同的产品。那么在编程的设计模式,根据提供不同的用户输入,调用相同的接口,得出不同的结果。 示例一: 在编写一个web框架时,我们需要考虑到用户可能会连接各种各样的数据库,但是我们不...
2018-11-08 10:58:00
124
转载 浅谈Python设计模式 - 原型模式
声明,本系列文章主要参考《精通Python设计模式》一书,并且参考一些资料,结合自己的一些看法来总结而来。 在《精通Python设计模式》中把设计模式分为三种类型:创建型模式结构型模式行为型模式 本篇主要介绍关于 创建型模式的一种,书上的说法为:当我们已有一个对象,并希望创建该对象的一个完整副本时,原型模式就派上用场了。在我们知道对象的某些部分...
2018-11-08 09:51:00
119
转载 关于Ubuntu下is not in the sudoers file解决方法
当我在postgres用户下去执行sudo vim demo.sql需要用管理员权限运行时,并且输入本用户的密码,但是输入之后提示如下:postgers is not in the sudoers file. This incident will be reported 翻译一下:postgres 不在sudoers文件中。将报告此事件。 这时候我们可以...
2018-11-07 14:24:00
1296
转载 关于Ubuntu中Could not get lock /var/lib/dpkg/lock解决方案
这是我在Ubuntu 18.0安装 postgresql时遇到的问题,如下:E: Could not get lock /var/lib/dpkg/lock - open (11: Resource temporarily unavailable)E: Unable to lock the administration directory (/var/lib/dpk...
2018-11-07 10:50:00
50
转载 关于MySQL数据库编码修复相关问题
本篇主要是本人在实际开发过程中遇到的MySQL字符编码等bug修复相关问题。 在使用下列语句在执行数据库表通过flask-sqlacodegen 进行ORM映射成模型类的时候发生的bug:flask-sqlacodegen mysql+pymysql://root:password@127.0.0.1:3306/wechat_food --outfile commo...
2018-11-02 10:49:00
95
转载 浅谈Python设计模式 - 单例模式
本篇主要介绍一下关于Python的单例模式,即让一个类对象有且只有一个实例化对象。一、使用__new__方法(基类) 要实现单例模式,即为了让一个类只能实例化一个实例,那么我们可以去想:既然限制创建实例,那么我们可以修改其创建实例的根源即可,那就是父类__new__方法。 注意:不能使用自身的__new__()方法,应为自身这个类去进行实例化,是调用父类的__n...
2018-10-27 12:15:00
104
转载 Python类的__new__()
本篇主要想要详细的介绍一下关于类的魔法方法__new__()方法。 在学习之前我们看一下Python3中关于object基类的__new__() 方法: @staticmethod # known case of __new__ def __new__(cls, *more): # known special case of object.__ne...
2018-09-21 22:13:00
141
转载 Flask项目-循环导入及蓝图
在学习flask时,肯定有许多人好奇,为什么一定要使用蓝图,而不能直接使用app应用程序对象导来导去,很多可能会说那是由于 循环导入的缘故,但是当我们通过url访问视图函数的时候,为什么会报404 not found的错误呢?下面详细介绍一下: 在启动文件 fresher.py文件中:图一图一 fresher.py 在处理视图逻辑的文件 book.py中...
2018-09-04 20:13:00
278
转载 06-jQuery进阶
本篇主要介绍jQuery的正则、冒泡事件、委托事件、以及DOM操作、JavaScript对象以及ajax等知识;一、正则 简而言之,正则的规则无论是各种语言均是通用的,故其规则中的字符便不再介绍了,通常前端所需要的是常用的正则规则即可; 1.1 正则表达式的写法var re=new RegExp('规则', '可选参数');var re=/规则/参数...
2018-08-18 16:51:00
81
转载 05-jQuery介绍
本篇主要介绍jQuery的加载、jquery选择器、jquery的样式操作、jQuery的事件、jquery动画等相关知识。一、jQuery介绍 jQuery是目前使用最广泛的javascript函数库。据统计,全世界排名前100万的网站,有46%使用jQuery,远远超过其他库。微软公司甚至把jQuery作为他们的官方库。 jquery是一个函数库,一个js文...
2018-08-18 16:18:00
118
转载 04-JavaScript的操作
本篇主要介绍获取元素的方法、操作元素、数组和字符串的操作方法、定时器和封闭函数、以及贪吃蛇案例;一、获取元素的方法 1、document.getElementById:可以使用内置对象document上的getElementById方法来获取页面上设置了id属性的元素,获取到的是一个html对象,然后将它赋值给一个变量,比如:<script type="...
2018-08-18 13:49:00
243
转载 03-JavaScript语法介绍
本篇主要关于原生JavaScript的介绍,其中包括其嵌入HTML页面方式,JavaScript的语法结构,以及贪吃蛇案例;一、绪论 JavaScript是运行在浏览器端的脚步语言,JavaScript主要解决的是前端与用户交互的问题,包括使用交互与数据交互,JavaScript是浏览器解释执行的。 前端三大块 1、HTML:页面结构 2、CSS:页面表现:...
2018-08-18 12:20:00
56
转载 02-CSS常用样式
本篇主要介绍css的常用样式,以及网页布局相关知识、绝对定位和相对定位,盒子模型、css权重、以及css选择器;绪论:CSS基本介绍 为了让网页元素的样式更加丰富,也为了让网页的内容和样式能拆分开,CSS由此思想而诞生,CSS是 Cascading Style Sheets 的首字母缩写,意思是层叠样式表。有了CSS,html中大部分表现样式的标签就废弃不用了,ht...
2018-08-17 22:15:00
126
转载 01-HTML基本介绍
本篇主要介绍HTML相关标签的使用,以及其常用标签的作用等介绍。 一、HTML的介绍 HTML是 HyperText Mark-up Language 的首字母简写,意思是超文本标记语言,超文本指的是超链接,标记指的是标签,是一种用来制作网页的语言,这种语言由一个个的标签组成,用这种语言制作的文件保存的是一个文本文件,文件的扩展名为html或者htm。 其基...
2018-08-17 22:02:00
51
转载 04 -- 元类和ORM
本篇主要介绍元类,为什么说一切皆对象;如何动态的创建类等;以及ORM,即什么是ORM等知识一、元类 1.1 在Python中一切皆对象 在学习元类中我们首先需要了解一个概念--python中一切皆对象,那么为什么这么说呢? 扩展:通过globals()--查看所有的全局变量,当我们定义全局变量时,python会将这些全局变量存放至一个字典中;而其中包含 ...
2018-08-04 21:53:00
120
转载 02- web-mini框架添加路由、MySQL(二)
本篇在上篇的基础上为其增设路由功能,同时将上篇中的数据库中数据备份添加进去。一、装饰器 在之前有介绍过为一个函数不改变源代码不改变原函数的调用方式下为其增设附加功能,需要用到装饰器,而在该上篇的web-mini框架中每当服务器发送动态资源请求过来时,我们需要做if判断,那么我们可不可以省去这繁琐的步骤呢? 1.1 通过闭包来实现装饰器:# 为函数附加新功...
2018-08-02 17:29:00
153
转载 web-mini框架的基本实现(一)
本篇主要介绍WSGI-web-mini框架的基本实现,以及什么是WSGI协议、对于浏览器的资源请求服务端是如何处理的等相关知识;一、浏览器资源请求 我们知道浏览器和web服务器之间是基于HTTP协议进行文件的传输的,而根据请求消息的不同,服务器处理的流程也是不同的;如下图: 通常而言: 对于浏览器请求的静态资源,服务器在收到请求消息时(处理完后),...
2018-08-02 12:06:00
146
转载 六、MySQL系列之数据备份(六)
本篇主要介绍用户授权、以及数据备份等知识;一、用户授权 首先我们需要知道的是: 所有的用户及权限信息都存储在mysql数据库下的user表中,故我们可以通过查看user表的记录来查看用户权限信息,当然修改用户权限需要 grant方法; 1.1 查看用户权限 1、查看user表的结构---- 查看 user 表的结构 desc us...
2018-07-30 17:31:00
65
转载 一:MySQL系列之基本介绍(一)
本篇主要介绍关于MySQL数据的基本知识,包括数据存储的变化,什么是MySQL以及其有什么优点、以及什么是RDBMS概念性知识等,以及关于MySQL语句的SOL的基本用法;一、数据库 数据库,顾名思义是用来存储数据的仓库,像以前的草绳记事、甲骨文,或者像现代的图书馆、文件管理系统等等都是数据储存的方式,但是面对海量数据,需要保证其稳定、无损、且能够快速的读取和写入数据...
2018-07-24 17:28:00
253
转载 第十一篇:面向对象之属性方法
本篇主要介绍类中定义的各种属性,例如类属性、实例属性、类的私有属性,以及各种方法,例如实例方法、类方法、静态方法以及property属性方法等相关知识。class Tool(object): dog_type = "Huskie" # 类属性 def __init__(self,name): self.name = name ...
2018-07-23 08:58:00
100
转载 第十篇:面向对象系列之三大特性(二)
本篇主要介绍面向对象的三大特性及 封装、继承、多态。一、封装 第一层意义上的封装: 封装:从封装本身的理解,装 -- 将一系列东西(苹果、梨子、香蕉等)一股脑的塞进一个盒子内,而封--自然就是密封,即用胶带啥的为其封口;同样编程中的封装也可以这样理解:上述的盒子我们可以理解为类,即将一大堆的代码塞进一个类中,这个类中可以有属性和方法,当然我们可以通过特殊的方法(在...
2018-07-21 22:03:00
121
转载 Python开发之路:目录篇
第一部分:Python基础知识 本篇主要python基础知识的积累和学习,其中包括python的介绍、基本数据类型、函数、模块及面向对象等。 第一篇:Python简介 第二篇:Python基本知识 第三篇:Python基本数据类型 第四篇:Python基础之杂货铺 第五篇:Python函...
2018-07-18 16:18:00
121
转载 Linux基础知识(二)
本篇还是接着介绍关于Linux的一些常用命令; 1、> :输出重定向命令 该命令主要用于将命令执行结果重新定向到一个文件内,即执行结果本应输出到屏幕上定向输出到文件内进行保存。例如: 注:> 覆盖式输出重定向保存在文件内, >> 追加式输出重定向保存到文件内。 2、| 管道 该管道主要用于将管道...
2018-07-05 22:04:00
72
转载 Linux基础知识(一)
本篇主要介绍Linux操作系统相关知识以及其常用命令等。一、操作系统的基本知识 一般而言,现代计算机计算机系统是一个复杂的系统,故若程序员需要掌握该系统的每一个细节例如如何通过代码去调用音响等这些事情,那可能不再编写代码了,这种情况会严重影响程序员的开发效率。并且管理这些部件并加以优化使用,是一件极富挑战性的工作,于是,计算安装了一层软件(系统软件),称为操作系统...
2018-07-04 19:59:00
140
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人