34-redis数据结构介绍及相关操作

redis 数据结构

Redis 数据库是一款依赖 BSD 开源协议的高性能 Key-Value 数据存储系统,通常又被称为结构服务器,因为它远程支持了几种常用的数据结构,给程序设计带来相当大的便利和性能提升,目前 3.05 版本支持七种类型的数据结构,分别为,string、hashes、lists、sets、sorted sets、bitmaps 和 hyperloglogs 七种数据结构。

Read More

33-PHP后期静态绑定

从 PHP 5.3.0 开时,PHP增加了一个叫后期静态绑定的功能,用于在继承范围内引用静态调用的类,即在类的继承过程中,使用的类不再是当前类,而是调用的类。后期静态绑定使用关键字 static 来实现,通过这种机制,static:: 不再被解析为定前方法所在的类,而是在实际运计算得到的,即为运行时最初调用的类。虽然将其称为 “后期静态绑定” 但它不仅限制于静态方法的调用。比如

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?php
class A {
public static function call () {

echo "class A"."<br>";

public static function test () {

self::call();

static::call();

}

}
class B extends A {
public static function call () {

echo "class B"."<br>";

}

}
B::test();
输出:class A
class B

Read More

32-Laravel依赖注入核心代码解析

反射机制被 Ruby、PHP 等多种语言广泛使用,主要用来动态地获取系统中类、实例对象、方法等语言构件的信息,通过反射 API 函数可以实现对这些语言构件信息的动态获取和动态操作等。PHP 5 具有完整的反射 API ,添加了对类、接口、函数、方法和扩展进行反向工作的能力。此外,反射 API 还提供了获取函数、类和方法等语言构件中的文档注释的方法。

Read More

31-信仰的重要性

今天早上还在睡意朦胧中,我妈就给我打来了电话,今天是周一,按照以往惯例我都是每周六给我妈打一个电话,这已经是躲着整整两天了。说是躲什么,说知道也不太知道。知道当然是她心里最大的愿望是什么,可目前来讲还不太容易满足她,有点愧疚。虽然每次通电话,她不讲这么些事情,可我还是能强烈感受到。也许不是我感受到的,只是我心中也是这么想的罢。所以每次跟我妈打电话,都总是有些 愧疚感,有些怯意。甚至有时候是有点还怕接她的电话。最直观的感受,就是以前基本都是周五,然后每周六清早或周六傍晚。说不太知道的原因,我也不太想得通,我自己的事情,总要爸妈操心什么。我一直标榜自己是个具有独立人格的人,只关注自己内心本心的感受。我的口头禅就是【follow your heart 】,我自以为坦荡地说自己的事,不用爸妈管了,跟他们也毫无关系。

Read More

30-桥梁模式-Bridge

目的

将抽象与实现分离,这样两者可以独立地改变

UML 图

Read More

29-适配模式-Adapter

目的

将一个类的接口转换成可应用的兼容接口。适配器使原本由于接口不兼容而不能一起工作那些类可以一起工作。

例子

    Read More

    28-静态工厂模式-Static Factory

    目的

    与抽象工厂模式类似,此模式用于创建一系列相关或相互依赖的对象。【静态工厂模式】与【抽象工厂模式】的区别在于,只使用一个静态方法来创建所有类型对象,此方法通常被命名为 factorybuild

    Read More

    27-单例模式-Singleton

    前言

    单例被公认是反面模式,为了获取更好了可测试和可维护性。请使用依赖注入模式。

    目的

    在应用程序调用的时候,只能获得一个对象实例。

    Read More

    26-简单工厂模式-SimpleFactory

    前言

    昨天看的是原型模式,大概意思就是,创建一个原型,然后直接克隆,这种方式比较节省开销

    目的

    简单工厂模式是一个精简版的工厂模式

    Read More

    25-原型模式-Prototype

    前言

    昨天看的是对象对象池模式,主要应用场景是用在创建对象比较消耗时跟消耗系统资源时。大概原理是新建一个类继承 \Countable 其中有两私有属性,一个用来保存新建的对象当做对象池,另一个用来计数。当对象池内对象数量少于某个数目时,就创建对象。否则就从对象池中取一个对象,相应数量减一。

    Read More