K4ys0n's Blog

Just keep moving!

设计模式(五)观察者模式

根据《Python设计模式(第2版)》一书的学习,记录下来的笔记。本篇博客是观察者模式,是一种行为型模式。

前言 行为型模式,主要关注的是对象的责任,用来处理对象之间的交互。 行为型模式建议对象之间应该能够彼此交互,同时还要松散耦合。 观察者模式是行为型模式的一种。 观察者实际上是了解对象的情况。 1. 观察者模式定义 观察者设计模式,对象(主题)维护了一个依赖(观察者)列表,以便主题可以使用观察者定义 的任何方法通知所有观察者它所发生的变化。 2. 代理模式场景 通常用于广播或者订阅系...

设计模式(四)代理模式

根据《Python设计模式(第2版)》一书的学习,记录下来的笔记。本篇博客是代理模式,是一种结构型模式。

前言 本章介绍一下代理模式,代理模式也是一种结构型设计模式。 先从代理开始理解吧。代理通常是介于寻求方和提供方之间的中介系统。寻求方是发出请求的,提供方是根据请求提供资源的。 在web世界中,代理相当于代理服务器。当客户端访问网站时,首先连接到代理服务器,向它请求资源, 代理服务器在内部评估此请求,将其发送到适当的服务器,当它收到响应后,就会将响应传递给客户端。 1. 代理模式定义 在...

设计模式(三)门面模式

根据《Python设计模式(第2版)》一书的学习,记录下来的笔记。本篇博客是门面模式,是一种结构型模式。

前言 门面设计模式是一种结构型模式,什么是结构型模式呢? 结构型模式描述如何将对象和类组合成更大的结构。 是一种简化设计工作的模式。 类模式可以通过继承来描述抽象,从而提供更有用的程序接口,而对象模式则描述了如何将对象联 系起来从而组合成更大的对象。结构型模式是类和对象模式的综合体。 结构型模式例子: 门面模式 适配器模式 桥接模式 装饰器模式 感觉门...

npm设置代理以及换源

npm由于国内网络原因,需要使用淘宝镜像源cnpm来进行资源包下载。同时由于公司内网原因需要设置代理。

前言 由于国内网络原因,需要使用淘宝镜像源cnpm来进行资源包下载,可以让下载更快。 同时由于公司内网原因需要设置代理npm才能下载。 设置代理 win+R输入cmd打开命令行,然后输入以下命令(确保你已经安装好node.js): set http_proxy=http://xx.xx.xx.xx:xxxx set https_proxy=http://xx.xx.xx.xx:xxxx ...

设计模式(二)工厂模式

根据《Python设计模式(第2版)》一书的学习,记录下来的笔记。本篇博客是工厂模式,是一种创建型模式。

前言 感觉工厂模式比起单例模式要复杂一些,得花点时间理解才行,本章主要包含了三个部分:简单工厂 模式、工厂方法模式和抽象工厂模式。在最后会做一下简单的对比。 此外,本章python代码实现时,都会把提炼抽象类和抽象方法,这样逻辑会更加统一。 本章源码链接:https://github.com/K4ys0n/design-pattern/blob/master/factoryPattern...

设计模式(一)单例模式

根据《Python设计模式(第2版)》一书的学习,记录下来的笔记。本篇博客是单例模式,是一种应用开发过程中最简单的一种创建型设计模式。

前言 设计模式这一系列是我在看书籍《Python设计模式(第2版)》的读书笔记,记录一些重要的、关键的知识 点,主要内容都是出自书中。 为了防止以后想起来的时候忘记实现细节,或者一些关键的编程,我会尽量把笔记做好,也按照书的流程进 行梳理。 接下来简单介绍一下设计模式的内容。 本章源码链接:https://github.com/K4ys0n/design-pattern/blob/ma...

Django基础(五)

停更一周,主要学习了用户认证django-allauth库,主要写一下博客网站views.py中的编写,使用一些通用视图类,通过修改其中的方法,或者加一些修饰器来实现目标视图。还有利用bootstrap做一点修改美化。还没有完全完善,仅仅记录一下过去一周的学习进展,理解还不够深刻。

前言 前面说到建了一个base.html页面的模板,接下来会先根据那个基础模板,创建一系列页面。当然,页面内部暂时先不做具体设计。 然后我们接着models.py编写之后,继续来完成一些View的编写。 完成了Model的设计,我们在views.py中做一些视图函数,去调用这些模型提取数据,处理好然后嵌入到模板Template中, 之后我们再分配路由url给到这些视图函数。 步骤 1....

Django基础(四)

这篇主要是套用bootstrap的模板到我们的博客项目中,其中需要注意一些复制,学习一下如何简单地、适当地修改模板。

前言 本篇主要是插入一个笔记,记录一下django如何应用bootstrap的一些样式,并学习一下如何做一些简 单的修改,提炼一个基础页面,让我们的页面变得稍微好看一点,后续在Template介绍中再进行更多修改。 步骤 1. 创建templates、static和media文件夹 在myblog工程目录下创建三个文件夹,templates、static和media。 然后再在stati...

Django基础(三)

今天是在前面models.py建立基础数据模型的基础上,补充一些Model相关的知识。

Model简介 Model是Django表示数据的模式,我们可以在models.py中设置数据项、数据格式等,一个数据类对应数据库的一个数据表。 数据表之间的关联也要在数据类中定义好。完成定义,Django不需要我们编写SQL指令,在一些程序的控制下它就会自动生成 SQL语句并执行了。事实上我们只要配置好数据库即可,什么数据库不重要。 models.py创建类 from django.db...

Django基础(二)

今天是在models.py建立基础的数据表。由于我想直接上手MySQL,所以今天开始切换到MySQL数据库,其实除了配置,其他都是一样的,后面就不用sqlite3了。

前言 Django基础我也是学了点基础,现在边学边做,所以无法一步到位实现完整的网站,一开始只是一点简陋界面实现一点简单的功能,越到后面越来越完善。 今天先切换MySQL数据库,后面就不打算继续用Sqlite3数据库了;然后是models.py建立基础数据表,数据表目前也不是最全的,后续慢慢跟进项目接着完善。 1. 配置MySQL数据库 1.1 安装MySQL数据库并启动服务 这里就不多...