自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

来自一个小码农的记录

丑小鸭努力至少能长成丑大鸭ba!!!

  • 博客(23)
  • 资源 (1)
  • 收藏
  • 关注

原创 Jetbrains系列软件高版本闪退问题解决

问题描述在安装了高版本的Jetbrains系列软件后,出现了闪退的情况,排查日志发现如下错误## A fatal error has been detected by the Java Runtime Environment:## EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x00007ffb30db99ac, pid=1948, tid=15720## JRE version: OpenJDK Runtime Environment JBR

2022-01-11 19:04:06 4755 1

原创 MongoDB知识整理

数据库操作show dbs; //显示数据库列表(注意,无集合的数据库不显示)db; //显示当前正在使用的数据库use dbname; //如果存在,则切换至数据库,如果不存在,创建后切换至数据库show tables; //展示当前库中的集合列表show collections; //同上db.dropDatabase...

2019-09-21 20:52:49 407

原创 Redis在Windows中安装服务时候遇到的坑

命令记录redis-server --service-install [redis配置文件(一般为redis-server同级目录下的redis.windows.conf)] 安装redis服务 redis-server --service-uninstall 卸载redis服务 redis-server --service-start ...

2019-09-21 12:34:53 1266

原创 初识设计模式——桥接模式

学习笔记意图:把对象的实体部分与抽象部分分离开来,分开进行组合封装,使它们可以分别的变化。主要解决:主要解决的问题是存在多种变化的可能性,而各种的可能性不能通过简单的扩展就可以完成,会造成后续的类的数量爆炸式增多的问题。实现方式:将一个对象进行分割,将实体部分与抽象部分隔离出来,分别封装。在调用的时候,通过类的多态特性进行聚合调用。个人理解合成/聚合复用原则(CARP)中提到,...

2019-02-27 21:44:31 222

原创 初识设计模式——单例模式

个人理解意图:保证一个类仅有一个实例,并提供一个能够访问它的全局访问点。主要解决:一个类的频繁的实例化、销毁,或者需要保证全局只有一个此类的实例化对象,另外,也可以防止随意实例化而占用过多的内存空间。实现方式:将类的初始化函数私有化,使得外部不可直接实例化对象。然后在类的内部(由于初始化函数已经私有化了,所以必须在类的内部)设定一个能够获取到此类的实例化对象的静态方法,方法内部实现实例...

2019-02-23 13:20:40 157

原创 初识设计模式——迭代器模式(PHP中迭代器(Iterator)的使用)

初始迭代器模式迭代器模式提供一种方法顺序访问一个聚合对象中各个元素, 而又无须暴露该对象的内部表示。在《大话设计模式》中提到,此设计模式实用价值远不如学习价值大了,martin flower甚至提出撤销此设计模式。另外,无论是JAVA、Python,亦或是PHP中,都存在多种多样的遍历聚合元素的方式,所以此处就不过多的去了解了。这里我主要记录的是自己对PHP迭代器Iterator的抽象类的使用...

2019-02-20 22:12:17 473

原创 初识设计模式——组合模式

个人理解定义:组合模式(Composite Pattern),又叫部分整体模式,是用于把一组相似的对象当作一个单一的对象。组合模式依据树形结构来组合对象,用来表示部分以及整体层次。这种类型的设计模式属于结构型模式,它创建了对象组的树形结构(Copy的)。理解:存在前提条件,只有满足以下两个条件,才建议使用组合模式(Composite Pattern) 一组相似的对象,说明对象的相似度...

2019-02-19 13:56:23 153

原创 初识设计模式——备忘录模式

个人理解定义:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。理解:前提条件有两个,一个是不破坏封装性的前提下获取对象的成员属性;另一个是保存获取到的属性。由于PHP主要应用于web端,所以在一次请求中频繁改动某个对象的状态的情况并不常见,所以个人感觉该模式在PHP语言中应用并不广泛。主要解决:主要解决的是某个或多个状态的保存与恢复问题。组成部分:Mem...

2018-12-04 20:07:39 154

原创 初识设计模式——原型模式(PHP中的深浅复制)

深复制与浅复制看了很多资料,知道很多语言都有所谓的深复制、浅复制(深拷贝、浅拷贝),对于PHP来说,也是存在深复制、浅复制的,先标记一下定义:深复制:克隆一个变量来使用,在克隆的过程中,在内存中将会使用两份资源进行存储,改变一个变量的值不会影响到另一个变量的值。浅复制:克隆一个变量来使用,在克隆的过程中,在内存中不会使用两份资源进行存储,而是只存储在一份内存中,当一个变量的值发生变化的...

2018-11-07 20:55:38 258

原创 初识设计模式——状态模式

个人理解定义:当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变其类。理解:这个模式主要解决的问题是消除庞大的条件分之语句,条件分支语句过大的使用,可能出现维护困难,操控的对象方法较为复杂等问题。例如订单的状态、游戏的等级等等都可以使用状态模式。主要解决:对象的行为依赖于它的状态(属性),并且可以根据它的状态改变而改变它的相关行为(状态模式的行为上说的,如果从状态模式的表...

2018-10-29 21:20:52 466

原创 初识设计模式——观察者模式

个人理解定义:定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态发生变化时,会通知所有观察者对象,使他们能够自动更新自己。理解:在符合两个条件的情况下就可以使用观察者模式。第一,存在一(主题对象)对多(观察者对象)的依赖关系;第二,当主题对象在状态发生变化时,观察者对象需要更新自己。主要解决的是一个对象状态改变给其他对象通知的问题,而且要考虑到易用和低耦...

2018-10-16 19:42:33 153

原创 初识设计模式——建造者模式

个人理解定义:将一个复杂对象的构建与其表示相分离,使得同样的构建过程可以创建不同的表示。理解:一般用于可组合的对象中,比如商品(可通过价格、名称、介绍、规格等等进行组合生成)、套餐(可通过不同的商品进行组合),而不可在分的对象,比如优惠券对象,个人感觉在这个模式中用处不大。在可组合的对象中,将构建该对象的不同组成部分分别定义,然后使用指挥者控制建造者进行搭建,感觉解释的比较牵强,哈哈,理解...

2018-10-10 21:15:30 232

原创 初识设计模式——外观模式

个人理解定义:为子系统中的一组接口提供一个一致的界面,此模式定义了一个高级接口,这个接口使得这个子系统更加容易使用。外观模式的构造:一个子系统的若干类(可以负责相同的事务,也可以负责不同的事务;可以继承同一父类,也可以内部方法尽不相同)、一个外观类Facade。使用方法: 在设计初期阶段,应该要有意识的将不同的两个层分离,层与层之间建立外观Facade 在开发阶段,子系...

2018-10-09 20:49:25 326

原创 初识设计模式——模板模式

个人理解定义:定义一种操作的算法骨架,而将一些步骤延迟到子类中。延迟方法使得子类可以不改变一个算法结构即可重定义该算法的某些特定步骤。在模板模式中,一个抽象类公开定义了执行它的方法的方式/模板。它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方式进行。模板模式的基本构造:一个模板抽象类、至少一个继承模板抽象类的实体类。模板模式中,模板抽象类将模板的大体骨架做好,但某些具体的可变...

2018-09-30 12:59:00 221

原创 初识设计模式——装饰器模式

个人理解定义:允许向一个现有的对象添加新的功能,同时又不改变其结构。这种类型的设计模式属于结构型模式,它是作为现有的类的一个包装。刚开始接触的时候,实在不知道装饰器的意思,经过反复的查看资料,咀嚼书上的各种例子,总结出来的装饰器意思就是“用于修饰主体功能的代码叫做装饰器代码,而装饰器模式则可以用于添加新的装饰器,无需扩展子类即可实现多种装饰的主体功能(纯属个人理解,不是官方的定义)”,举个...

2018-09-26 08:58:31 279

原创 初识设计模式——工厂模式

由于简单工厂模式违反了设计模式六大原则中的“开闭原则”,所以产生了工厂模式,工厂模式定义一个创建对象的接口,让子类决定实例化那一个类。工厂方法使一个类的实例化延迟到子类。以之前的简单工厂模式所实现的功能为例,工厂模式的代码如下。工厂接口<?phpinclude './Claculator.php';include './claculator/Add.php';include...

2018-09-17 08:59:30 325

原创 初识设计模式——简单工厂模式、策略模式及两者的结合使用

简单工厂模式简单工厂模式是属于创建型模式,又叫做静态工厂方法(Static Factory Method)模式,但不属于23种GOF设计模式之一。简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。简单工厂模式是工厂模式家族中最简单实用的模式,可以理解为是不同工厂模式的一个特殊实现。简单工厂模式中工厂对象的主要功能为决定创建出哪一种产品类,所以,工厂类中是存在判断的。以实现一个简单的...

2018-09-11 14:51:54 317

原创 初识设计模式——设计模式的六大原则

单一职责原则(Single Responsibility Principle, SRP)定义:就一个类而言,应该仅有一个引起它变化的原因解释:如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化可能会削弱或抑制这个类完成其他职责的能力,当变化发生时,设计会遭到意想不到的破坏。开放-关闭原则(Open-Closed Principle, OCP)定义:对于...

2018-09-04 21:18:57 170

原创 初识设计模式——UML类图

序言【初识设计模式】系列主要作为本人的设计模式的学习记录(学习来源主要来自《大话设计模式》这本书,后面会将PDF格式的文件放在博客中,有需要的朋友可以下载),有需要的朋友也可以作为参考。由于在设计模式中本人也是新手,所以可能存在理解偏差的地方。UML类图先说一下为什么要学习UML图,个人感觉UML图就类似于工程中的CAD图纸,没有图纸的建筑也是存在的,要么这个建筑非常小(比如我们家的农...

2018-09-03 21:19:44 241

转载 CURL扩展开启,但curl_init不可用的解决方案

1、在php.ini中开启curl扩展2、在php的目录下,找到libeay32.dll,libssh2.dll,ssleay32.dll这三个文件,复制(或剪切)粘贴到,apache的bin目录下3、重启apache,OK!转自 https://www.cnblogs.com/hf8051/p/5755483.html...

2018-08-24 14:47:12 4870

原创 前后端分离与跨域的解决方案(CORS的原理)

前后端分离    前后端分离的好处最大的好处就是前端JS可以做很大部分的数据处理工作,对服务器的压力减小到最小。 后台错误不会直接反映到前台,错误接秒较为友好。 由于后台是很难去探知前台页面的分布情况,而这又是JS的强项,而JS又是无法独立和服务器进行通讯的。所以单单用后台去控制整体页面,又或者只靠JS完成效果,都会难度加大,前后台各尽其职可以最大程度的减少开发难度。    个人理解...

2018-08-23 22:43:39 77964 4

原创 PHP使用Imagick绘制六芒星能力图

先说一下本人在工作中遇到的瓶颈       之前做过一个【霍兰德职业兴趣测试】测试的项目,大体结构就是用户答题,系统根据用户回答的问题进行职业性格测试,最后显示结果,在结果页存在一个类似于六芒星的能力分析图(这个是我自己起的名字,具体是叫什么我也不太清楚,下面将以“六芒星图”代替),起初我们用的是Echarts插件,本来相安无事。突然有一天,客户提了一个需求,需要把结果页实现一个长按保存的功能...

2018-08-22 21:29:19 2608 1

原创 推荐一款PHP可用的中文分词扩展

本文介绍《SCWS中文分词》的安装及使用,主要用于个人记录,如有需要,请访问SCWS官方网站。使用前准备首先要准备Linux系统及安装编译好的php,本人使用源码编译安装的php,具体信息如下(可能有些许报错,将就着看吧)下载安装SCWS软件1.下载scws源码            wget http://www.xunsearch.com/scws/down/scws-...

2018-08-08 12:06:50 7362

StarUML 3.0.2 内含详细破解方法

StarUML 3.0.2 内含详细破解方法,个人使用过,感觉不错,本来不想收积分的,但是CSDN最低需要选择一个,

2018-09-30

空空如也

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

TA关注的人

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