Livfer's Blog


  • 首页

  • 标签

  • 分类

  • 归档

前端自省-1

发表于 2020-05-10 | 分类于 前端 , 自省系列 , HTML

页面导入样式时,使用link@import有什么区别

  1. link是HTML标签,@import是css提供的
  2. link标签映入样式时,页面加载时候同时加载,是同步堵塞加载,@import在页面加载完成是加载
  3. link除了可以引用样式还可以引入图片等资源,@import只能引入样式文件
  4. link是XHTML标签没有兼容问题,@import是在CSS2.1提出的,不兼容ie5以下
  5. link可以通过js操作DOM动态引入,@import不可以
阅读全文 »

go-结构体

发表于 2019-11-20 | 分类于 go

概念

结构体是一种聚合的数据类型,有零个或多个任意类型的值聚合成的实体.

声明定义

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
//声明一个结构体类型
type Employee struct {
id int
name string
address string
}

//声明一个结构体类型的变量
var aa Employee
//访问
aa.id

//修改
aa.id = 1

//对成员取地址,通过指针访问
name := &a.name
*name = "edit" + *name
阅读全文 »

数组、切片、map

发表于 2019-11-20 | 分类于 go

数组

概念

同一数据类型,固定长度的序列

定义

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
//[长度]类型
var arr [2]int

//make创建
var a []int
a = make([]int,4)

//[长度]类型{元素1,元素2}
var arr = [2]int{1,2}
arr := [2]int{1,2}

//[不定长度]类型{元素1,元素2} 长度根据初始化时候的具体元素数量来定
var arr = [...]int{1,2}
arr := [...]int{1,2}

//设置key=>value
var arr = [...]int{1:1,0:2}
arr := [...]int{1:1,0:2}
阅读全文 »

代理模式

发表于 2019-10-23 | 分类于 PHP,设计模式

概念

代理模式是一种结构型模式,它可以为其他对象提供一种代理以控制对这个对象的访问

主要角色

  • 抽象主题角色(Subject):它的作用是统一接口。此角色定义了真实主题角色和代理主题角色共用的接口,这样就可以在使用真实主题角色的地方使用代理主题角色。
  • 真实主题角色(RealSubject):隐藏在代理角色后面的真实对象。
  • 代理主题角色(ProxySubject):它的作用是代理真实主题,在其内部保留了对真实主题角色的引用。它与真实主题角色都继承自抽象主题角色,保持接口的统一。它可以控制对真实主题的存取,并可能负责创建和删除真实对象。代理角色并不是简单的转发,通常在将调用传递给真实对象之前或之后执行某些操作,当然你也可以只是简单的转发。 与适配器模式相比:适配器模式是为了改变对象的接口,而代理模式并不能改变所代理对象的接口
阅读全文 »

原型模式

发表于 2019-10-22 | 分类于 PHP,设计模式

原型模式定义

原型模式是一种创建者模式,其特点在于通过“复制”一个已经存在的实例来返回新的实例,而不是新建实例。

阅读全文 »

观察者模式

发表于 2019-09-18 | 分类于 PHP , 设计模式

定义

观察者模式是一种行为型模式,它定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。

又称为发布-订阅模式,监听模式

主要角色

  • 抽象Subject:主题角色将所有对观察者对象的引用保存在一个集合中,每个主题可以有任意多个观察者。抽象主题提供了增加和删除观察者对象的接口。
  • 抽象观察者(Observer)角色:为所有的具体观察者定义一个接口,在观察的主题发生改变时更新自己。
  • 具体主题(ConcreteSubject)角色:存储相关状态到具体观察者对象,当具体主题的内部状态改变时,给所有登记过的观察者发出通知。具体主题角色通常用一个具体子类实现。
  • 具体观察者(ConcretedObserver)角色:存储一个具体主题对象,存储相关状态,实现抽象观察者角色所要求的更新接口,以使得其自身状态和主题的状态保持一致。
阅读全文 »

享元模式

发表于 2019-09-18 | 分类于 PHP , 设计模式

定义

享元模式是一种结构型模式,它使用共享物件,用来尽可能减少内存使用量以及分享资讯给尽可能多的相似物件

池技术的重要实现方式, 运用共享技术有效的支持大量的细粒度对象,用于减少创建对象的数量,以减少内存占用和提高性能。

使用场景

  • 在有大量对象时,有可能会造成内存溢出,我们把其中共同的部分抽象出来,如果有相同的业务请求,直接返回在内存中已有的对象,避免重新创建。

  • 系统有大量相似对象。

  • 需要缓冲池的场景

阅读全文 »

门面模式

发表于 2019-09-18 | 分类于 PHP , 设计模式

定义

门面模式是一种结构型模式,它为子系统中的一组接口提供一个一致的界面,Facade模式定义了一个高层次的接口,使得子系统更加容易使用。

门面(Facade)角色

  • 此角色将被客户端调用
  • 知道哪些子系统负责处理请求
  • 将用户的请求指派给适当的子系统
阅读全文 »

装饰器模式

发表于 2019-09-17 | 分类于 PHP , 设计模式

定义

装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其结构。这种类型的设计模式属于结构型模式,它是作为现有的类的一个包装。

这种模式创建了一个装饰类,用来包装原有的类,并在保持类方法签名完整性的前提下,提供了额外的功能。

主要角色

  • 抽象构件(Component)角色:定义一个对象接口,以规范准备接收附加职责的对象,从而可以给这些对象动态地添加职责。
  • 具体构件(Concrete Component)角色:定义一个将要接收附加职责的类。
  • 装饰(Decorator)角色:持有一个指向Component对象的指针,并定义一个与Component接口一致的接口。
  • 具体装饰(Concrete Decorator)角色:负责给构件对象增加附加的职责
阅读全文 »

组合模式

发表于 2019-09-17 | 分类于 PHP , 设计模式

定义

组合模式,将对象组合成树形结构以表示“部分-整体”的层次结构,组合模式使得用户对单个对象和组合对象的使用具有一致性

主要角色

  • 抽象组件(Component)角色:抽象角色,给参加组合的对象规定一个接口。在适当的情况下,实现所有类共有接口的缺省行为。声明一个接口用于访问和管理Component的子组件
  • 树叶组件(Leaf)角色:在组合中表示叶节点对象,叶节点没有子节点。在组合中定义图元对象的行为。
  • 树枝组件(Composite)角色:存储子部件。定义有子部件的那些部件的行为。在Component接口中实现与子部件有关的操作。
阅读全文 »
1234…8
Livfer

Livfer

代码的搬运工

73 日志
18 分类
39 标签
GitHub E-Mail
Links
  • 🍊程成🍊
© 2020 Livfer
由 Hexo 强力驱动
|
主题 — NexT.Mist