读书笔记
是谁在敲打我的头
喜欢编程的过程,解决问题的方法不止一种。希望脱离菜鸟行列,慢慢强大,希望能认识更多好朋友。
展开
-
十大经典排序算法
十大经典排序算法http://ddrv.cn/docs/SortingAlgorithm/index.html通俗易懂,适合初学者,顺便推荐这个网站原创 2020-08-28 12:32:33 · 76 阅读 · 0 评论 -
大话设计模式--读书笔记7原型模式
依旧先是概念,原型模式原型模式:可以通过一个对象创建对象群,并且可以拷贝创建新的实例。原型模式实际就是一个对象创建另一个对象,而且新的对象还具有原本的对象的特性。原型模式结构图:原型模式其实就是一个对象在创建另外一个可定制大的对象,并且不需要知道任何创建的细节。一般初始化的信息不发生变化的情况下,克隆是一个好办法。即隐藏了对象的细节,又大大提高了性能。 不用重新初始化...原创 2018-04-06 16:52:52 · 170 阅读 · 0 评论 -
大话设计模式——读书笔记9策略模式
: 大话设计模式–读书笔记策略模式策略模式策略模式:定义了算法族,分别封装,让他们之间可以相互替换,此模式让算法的变化,不会影响到使用算法的客户结构图商场收银时,如何促销,使用打折还是返利,其实都是一种算法,(算法本身是一种策略),最重要的是这些算法是随时都可能相互替换的,者就是变化点。封装变化点是面向对象的一种很重要的思想方式。Strategy类 :定义所有支持的...原创 2018-05-01 21:43:22 · 99 阅读 · 0 评论 -
大话设计模式--读书笔记8适配器模式
设配器模式:将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 主要解决的问题: 软件系统中的数据和行为都正确,但接口不符,应该考虑使用适配器。目的是使控制范围外的一个原有对象与某个接口匹配。适配器主要应用于希望复用一些现存的类,但接口又与复用环境要求不一致的情况。两种类型: 类适配器模式 对象适配器模式适配器模...原创 2018-04-24 23:30:14 · 133 阅读 · 0 评论 -
python3的import和from import
python3的import和from import在python官方概念module一个.py文件(包含声明和陈述)package 包含.py文件的文件夹,其中还包括特殊的init.pyimport和from import的用法-import packagename #yes-import modulename #yes-from module imp...原创 2018-05-07 00:00:11 · 1962 阅读 · 0 评论 -
对于Nginx的初级认知
NginxNginx——Ngine X,是一款自由,开源,高性能Http服务器和反向代理服务器;也是IMAP,POP3,SMTP代理服务器;Nginx基础(不依赖第三方模块的情况)反向代理百度百科:(反向代理Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上的请...转载 2018-05-23 20:59:11 · 174 阅读 · 0 评论 -
SpringBoot下Aop的简单例子
说明:正好和同事讨论说到了一个解决方案,用到了aop这里复习一下。切面方法说明@Aspect 作用是把当前类标识作为一个切面供容器读取。@Before 标识一个强制增强方法,相当于BeforeAdvice的功能@AfterReturning 后置增强,相当于AfterReturningAdvice,方法退出时执行。@AfterThrowing 异常抛出增强器,相当于...转载 2018-06-25 01:04:11 · 698 阅读 · 1 评论 -
Mysql数据库的索引采坑
是昨天同事那里针对sql的优化问题。 一开始发现left join后面的临时标出结果比较慢,在测试数据库中测试不到4000的数据居然花费了近20秒。(而实际上,真实表是由2万多条数据的,呵呵) explain该语句发现小数据的表居然时全查询(index),似乎是索引没有起作用。但是这个表的索引是手动建立好的,甚至之后索引还重新删除重建了一次。索引依旧没有起作用。 表现为哪怕是普通的sel...原创 2018-06-30 23:38:07 · 304 阅读 · 1 评论 -
大话设计模式-读书笔记备忘录模式
举个栗子以保存游戏为例,在玩魂斗罗之前,一般在快到boss的时候,我会先保存游戏的状态。与boss作战时万一游戏挂了。可以利用备忘录恢复到战前状态了。基本概念备忘录模式:获取一个对象的某个状态,并且在对象之外保存,使得在需要的情况下恢复对象。(不会破坏封装性) 又叫做快照模式(Snapshot Pattern)或者Token模式,是23种设计模式之一用例图示角色分类Ori...原创 2018-07-23 00:02:33 · 159 阅读 · 0 评论 -
Git 远程仓库更新代码到本地
Git 远程仓库更新代码到本地学习背景最近远程仓库经常变动,而重新克隆到本地需要大量的时间和资源。(近2G大小)。使用这个可以只下载修改过的详细操作查看远程分支$git remote -v$origin https://gitee.com/fuyang_lipengjun/platform.git (fetch)$origin https://gitee...原创 2018-07-31 23:56:45 · 8239 阅读 · 5 评论 -
算法模式---贪婪算法初识
作为科班毕业的程序员,在下的代码能力感觉都是笑话。痛定思痛,决定啃一啃算法。发现好像都是大学的课本知识,摸摸头…尴尬。当然不能一口吃一个胖子,这些仅作为入门学习常用算法设计思想常见分类迭代法、贪婪法、穷举法搜索法、递推法、递归法、回溯法、分治法、动态规划法。贪婪法 — 贪心算法这种方法模式一般将求解过程分成若干个步骤,但每个步骤都最贪心,选择当前状态下收益最大,局部最有利的选择,并以此...原创 2018-11-12 00:23:17 · 298 阅读 · 0 评论 -
大话设计模式--读书笔记5代理模式
去年面试的一道题,我答错了,理解成中介者模式上了Proxy Patern代理模式:给某一个对象提供一个代理,并由代理对象控制对象的引用。某些情况下,一个客户不想或者不希望直接引用某对象,可以通过一个 代理 第三方来实现间接引用。代理对象可以在客户端和目标对象之间起到 中介 作用,并可以通过代理对象去掉客户不能看到的内容和服务 或者 添加额外的服务。(当学生当惯了,出现新的东西必...原创 2018-03-28 23:51:06 · 158 阅读 · 0 评论 -
大话设计模式--读书笔记4创建者模式
抽象工厂模式周末写,想和其他工厂做一个总结。创建者模式需要将一个复杂的构建与他的表示分离,使得同样的构建过程可以创建不同的表示。生成器模式创建者模式结构图Builder:建造产品各个部分的抽象类,创建一个Product对象的各个部件指定的抽象接口。 ConcreteBuilder:具体建造者,实现Builder接口,构造和装配各个部分。 Product:具体产品 ...原创 2018-03-27 23:27:51 · 116 阅读 · 0 评论 -
大话设计模式-读书笔记8状态模式
老规矩,上概念:状态模式state状态模式:当一个对象的内在状态改变时允许改变其行为,类似该对象改变了其类。 当控制一个对象状态转换的条件表达式过于复杂时的,将状态的判断逻辑转移到表示不同状态的一系列类中,可以把复杂的判断逻辑简化。 状态模式的好处和用处状态模式的好处:将特定状态相关的行为局部化,并且将不同的行为分割开来。(将特定的状态相关行为都放入一个对象中,由于与状...原创 2018-04-15 01:44:10 · 191 阅读 · 0 评论 -
尝试学习java反射
首先使用图片: 图片来源网络 当有一段代码:Object obj = new Object();实例化 运行过程 jvm启动,代码会编译为.class文件,被类加载器带到jvm内存中,类Object加载到方法区中创建了Object的class对象到堆中,(非不是new出来的对象,是类的类型对象),每个类只有一个class对象, 是方法区类的数据结构的接口。 jvm创建对象...原创 2018-03-18 01:53:34 · 82 阅读 · 0 评论 -
java操作对象
直接上代码:public class Visaul{ public static void main(String[] args){ Student t1 = new Student(); Student t2 = new Student(); t1.age = 45; t2.age = 14;System.out.pr...原创 2018-03-30 00:04:10 · 464 阅读 · 0 评论 -
大话设计模式--读书笔记1简单工厂模式
感觉我的学习方向错了,决定重点放在java上,其他东西偶尔会写点。 1.Java编程思想 2.和大话设计模式面向对象编程面向对象解决的问题 活字印刷术的思考 可维护性 可复用性 可拓展性 灵活性面向对象的优点在未按照标准面向对象思想设计方式的程序中,代码不容易维护,灵活性差,不容易拓展,复用性没有突出,面对需求变化,加班加点,程...原创 2018-03-24 23:50:57 · 140 阅读 · 0 评论 -
Java类之间的关系:泛化、依赖、关联、实现、聚合、组合
参考自 https://blog.csdn.net/lpjishu/article/details/51491779泛化泛化:继承关系,’is-a-kind-of’,泛化关系用于描述父子之间的关系。父类又称作基类或超类,子类叫做派生类。 java使用继承extends实现泛化,对应uml图为带空心三角形直线表示。 uml中有三个要求: 1.父类所具有的属性、操作,子类都应该有。 ...原创 2018-03-25 00:30:41 · 1646 阅读 · 0 评论 -
Https的学习
其实我也是新学习的,是一次面试题。在这里学习一下,懂一点原理更好一点。HTTSHyperText Transfer Protocol over Secure Socket Layer 基于安全套接字层的超文本传输协议(HTTP–> HyperText Transfer Protocol ,超文本传输协议,是浏览器等与web服务器之间的应用层通讯协议)可以理解为HTTP+SSL/...原创 2018-04-07 21:13:15 · 164 阅读 · 0 评论 -
大话设计模式--读书笔记2单例模式
单例模式:因程序需要,有时我们只需要某个类同时保留一个对象,不希望有更多对象,此时,我们则应考虑单例模式的设计。这里需要实例化但不使用new方式,可以在构造方法前面添加private,私有化构造方法。 (使用背景:所有类都有构造方法,不单独编写构造方法则系统默认使用空构造,单独编写构造方法的话,默认的构造器就会失效)然后需要单独创建一个公共方法来专门返回一个类实例。在该方法中需要对是否实...原创 2018-03-25 22:12:55 · 133 阅读 · 0 评论 -
Java内存结构模型总结
最近感冒了,脑袋很疼。昨天很早就睡了。由于个人编程经验少,今天想学习Java内存模型,但是看了好几篇文章,讲的都很深入。都是对着书本讲的,我目前只是想学习Java内存中的结构。所以不是非常深入的文章。 很多大牛在文章中都推荐阅读 java并发编程 和 深入java虚拟机等,这些书会看,但目前阶段水平不到,看不懂。 好了,开撸——Java源代码文件会被java编译器编译为字节码文...原创 2018-03-31 23:42:58 · 114 阅读 · 0 评论 -
TCP建立连接---三次握手,四次挥手
接着昨天的话题,继续面试题的整理。因为那次实在是被虐哭了。这图不错,虽然有点看不懂,当关键是清晰直观一点http发出一次请求,tcp建立连接。目的还是为了建立可靠的连接服务,三次握手进行初始化。(我感觉就像是拿上话筒,想吹吹,试试好坏)。确保连接双方的序列号和确认号并交换TCP信息。1.第一次握手:建立连接。 客户端发送连接请求报文段,将SYN置为1,Squence Number...原创 2018-04-08 22:49:26 · 134 阅读 · 0 评论 -
大话设计模式--读书笔记6抽象工厂模式
抽象工厂模式提供一个创建一系列相关或相互依赖对象的接口,无需指定它们具体的类。又称为kit模式,属于对象创建模型。结构图:抽象工厂 AbstractFactory :工厂方法模式的核心,与产品逻辑上无关具体工厂 ConcreteFactory : 直接在客户端调用下创建产品的实例,它具有选择合适产品对象的逻辑,与系统生产产品业务逻辑紧密相关抽象产品 Abstract Pro...原创 2018-04-02 00:29:14 · 126 阅读 · 0 评论 -
大话设计模式-读书笔记3工厂方法模型
工厂方法模式实现工厂方法模型:工厂模型,虚拟构造器模式,多态工厂模式,属于类创建模型。在工厂方法模型中,工厂父类负责定义创建产品对象的公共接口,工厂子类则负责生成具体的产品对象,这样做的目的是将产品类的实例化操作延迟到工厂子类完成,通过工厂子类来确定究竟应该实例化那个具体产品。包括如下角色: Product:抽象产品 ConcreteProduct:具体产品 Factory:抽象工厂...原创 2018-03-27 00:26:20 · 179 阅读 · 0 评论 -
git使用总结
git和svn的区别git:版本控制系统,内容管理系统,工作管理系统。 和svn的区别: 1.git是分布式的,svn不是:这是git和svn、cvs非分布式版本控制系统最大的区别。 2.git把内容按 元数据 方式存储,cvs是按文件:所有资源控制系统都是把文件的元信息隐藏在类似.svn,.cvs等文件夹里。 3.git分支和svn分支:在svn中分支就是版本库中的另外的目录。 4...转载 2018-03-16 23:54:47 · 100 阅读 · 0 评论