自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Black Dragon 的个人博客

本博客内容是本人日常工作学习中的一些总结记录

  • 博客(12)
  • 收藏
  • 关注

原创 php组合模式

首先,组合模式属于结构型模式,那么什么叫组合模式呢?用组合模式有什么要求呢?使用场景是什么呢?定义:将对象组合成树形结构以表示“部分-整体”的层次结构,组合模式使得用户对单个对象和组合对象的使用具有一致性。模式中主要包含哪些角色呢?1.Component 是组合中的对象声明接口,在适当的情况下,实现所有类共有接口的默认行为。声明一个接口用于访问和管理Component子部件。2.Leaf 在组合中表示叶子结点对象,叶子结点没有子结点。3.Composite 定义有枝节点行为,用来存储子部件,在Compo

2017-06-30 16:01:59 2337

原创 php适配器模式

在这个有没有对象都要高呼“面向对象”的年代,掌握面向对象会给我们带来意想不到的方便。学编程的小伙伴从开始能写几行代码实现简单功能到后来懂得将一些重复的操作组合起来形成一个“函数”,再到后来将“函数”和属性组合起来形成一个“类”。一步步走来,我们在考虑着机器运行代码效率的提高的同时也在考虑减轻程序员的工作量。 那么我们今天讲到的适配器模型更着重考虑的是什么呢?是程序员工作量。

2017-06-30 11:10:32 446 1

原创 php抽象工厂模式

无论是简单工厂模式,工厂方法模式,还是抽象工厂模式,他们都属于工厂模式,在形式和特点上也是极为相似的,他们的最终目的都是为了解耦。在使用时,我们不必去在意这个模式到底工厂方法模式还是抽象工厂模式,因为他们之间的演变常常是令人琢磨不透的。经常你会发现,明明使用的工厂方法模式,当新需求来临,稍加修改,加入了一个新方法后,由于类中的产品构成了不同等级结构中的产品族,它就变成抽象工厂模式了;而对于抽象工厂模式,当减少一个方法使的提供的产品不再构成产品族之后,它就演变成了工厂方法模式。

2017-06-29 16:52:16 3397

原创 php工厂方法模式

这种设计模式网上可以查阅的资源有很多,但是很多都是理论性太强,理解起来不是很容易,首先我们先看一下,这种模式是如何定义的?使用的场景是什么?定义:定义一个创建对象的接口,但是让子类去实例化具体类。工厂方法模式让类的实例化延迟到子类中。针对每一种产品提供一个工厂类,通过不同的工厂实例来创建不同的产品实例,在同一等级结构中,支持增加任意产品。问题引出:框架需要为多个应用提供标准化的架构模型,同时也要允许独立应用定义自己的域对象并对其进行实例化。

2017-06-29 14:04:30 3816

原创 php简单工厂模式

简单工厂模式(Simple Factory Pattern):又称为静态工厂方法(Static Factory Method)模式,它属于类创建型模式。在简单工厂模式中,可以根据参数的不同返回不同类的实例。简单工厂模式专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类。简单工厂模式包含如下角色:  Factory:工厂角色,工厂角色负责实现创建所有实例的内部逻辑  Product:抽象产品角色,抽象产品角色是所创建的所有对象的父类,负责描述所有实例所共有的公共接口  Concr

2017-06-28 16:15:39 2682 1

原创 php单例模式

单例模式,正如其名,允许我们创建一个而且只能创建一个对象的类。这在整个系统的协同工作中非常有用,特别明确了只需一个类对象的时候。那么,为什么要实现这么奇怪的类,只实例化一次?在很多场景下会用到,如:配置类、Session类、Database类、Cache类、File类等等。这些只需要实例化一次,就可以在应用全局中使用。

2017-06-28 15:52:41 3271 3

原创 php设计模式自我理解

不论是 PHP、Java还是C++编程语言,在编程的时候,我们所遇到的大部分问题,其实都已经被其他程序员一再的处理了。设计模式提取了共同问题,定义了经过测试的解决方案,并描述了可能的结果。也就是说,设计模式(Patterns)是一些可以在项目中重复使用的解决方案。但是,设计模式并非像组件那样,能被合并来构建系统的固定的解决方案,它们是解决一般性问题的通用方法。通俗来说,设计模式就是一些编程的套路,不是具体的攻防动作,是为设计更好系统设计的解决方案。

2017-06-28 15:48:05 4178

原创 开源实时日志分析ELK平台部署【入门篇】

通常,日志被分散的储存不同的设备上。如果你管理数十上百台服务器,你还在使用依次登录每台机器的传统方法查阅日志。这样是不是感觉很繁琐和效率低下。当务之急我们使用集中化的日志管理,例如:开源的syslog,将所有服务器上的日志收集汇总。集中化管理日志后,日志的统计和检索又成为一件比较麻烦的事情,一般我们使用grep、awk和wc等Linux命令能实现检索和统计,但是对于要求更高的查询、排序和统计等要求和庞大的机器数量依然使用这样的方法难免有点力不从心

2017-06-23 09:47:03 13031 2

原创 apache常用的两种工作模式prefork和worker

apache作为现今web服务器用的最广泛也是最稳定的开源服务器软件,其工作模式有许多种,目前主要有两种模式:prefork模式和worker模式prefork是一个非线程型的、预派生的MPM,使用多个进程,每个进程在某个确定的时间只单独处理一个连接,效率高,但内存使用比较大。worker是支持混合的多线程多进程的多路处理的MPM,使用多个子进程,每个子进程有多个线程,每个线程在某个确定的时间只处理一个连接,内

2017-06-19 10:07:05 2642

原创 【PHP】高级面试题之十万个为什么?(二)

现在也已经工作三年时间了,PHP在平时工作中天天都会使用,但是内心总是感觉差点什么,觉得自己对PHP这门语言了解的还不够,故下定决心,整理了一下平时工作所学所用,提出各种各样的问题,然后再一一的解决这些问题,加深自己对PHP这门语言的理解!!!

2017-06-19 09:42:38 2996

原创 for和foreach那个效率更高?原因是什么?

写这篇文章的原因主要是在开发过程中突然有以下几个疑问,特抽出时间深度探究一下,以加深自身对php的理解。1、作为一名phper,for和foreach循环遍历几乎每天都在使用,那么这两种遍历方式哪一种效率更高呢?2、效率高的原因是什么呢?3、原理分别是什么呢?

2017-06-16 10:47:52 39798 4

原创 【PHP】高级面试题之十万个为什么?(一)

现在也已经工作三年时间了,PHP在平时工作中天天都会使用,但是内心总是感觉差点什么,觉得自己对PHP这门语言了解的还不够,故下定决心,整理了一下平时工作所学所用,提出各种各样的问题,然后再一一的解决这些问题,加深自己对PHP这门语言的理解!!!

2017-06-14 18:35:09 3404

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除