自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 资源 (19)
  • 问答 (1)
  • 收藏
  • 关注

原创 java设计模式10:Flyweight

享元模式是对象的结构模式。 享元模式以共享的方式高效地支持大量的细粒度对象。享元对象能做到共享的关键是区分内蕴状态(Internal State)和外蕴状态(External State). 一个内蕴状态是存储在享元对象内部的,并且是不会随环境改变而有所不同的。因此,一个享元可以具有内蕴状态并可以共享。 一个外蕴状态是可随环境改变而改变的,不可以共享的状态。享元对象的外蕴状态必须由客户端保存,并在

2011-06-28 23:47:00 925 1

原创 java设计模式9:Proxy(3)虚拟代理

加载延迟可以提高软件的友好程度。 当一个真实的主题对象的加载需要耗费资源时,一个虚拟代理对象可以代替真实对象接受请求。一旦接到请求,代理对象马上打出一段“正在加载”的信息,并在适当的时候加载真实主题对象,也就是模块或者图像。简略图如下图所示:   本章将给出一个加载图像的例子,由于图像的加载会耗费一定的资源,因此,要求设计一个虚拟代理对象,以替代图像对象接受客户端的请求。当虚拟代理对象接到请求

2011-06-28 22:38:00 890

原创 java传参的值传递,引用传递

最近需要使用java,发现java并未像c++那样专门通过某些符号来明确参数的值传递和引用传递,而是统一采用引用传递。 例如有如下代码: static void testKFloatChange(KFloat f1, KFloat f2){ f1.nValue = 25; f1.nDigit = 1; f1.nUnit = 0; f2 = f1;}pu

2011-06-28 14:38:00 880

原创 java设计模式9:Proxy(2)

一个美国金融网站的真实的例子 此处的代理,包含权限保护和智能引用代理   package com.javapatterns.proxy.smartproxy; public class Client{ private static Searcher searcher;  public static void main(String[] args) { sear

2011-06-23 00:49:00 696

原创 java设计模式9:Proxy

代理模式也是一种通信接间化的一种思想体现。同样有这种思想的还有适配器模式和装饰模式。 1、类适配器和对象适配器模式简图 2、装饰模式简图 3、所谓代理,就是一个人或者一个机构代表另一个人或者另一个机构采取行动。在一些情况下,一个客户不想或者不能够直接引用一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。简略图如下: 远程代理 虚拟代理 Copy-on-Write代理 保护代理

2011-06-22 23:22:00 786

原创 java设计模式8:Decorator(2)

又一例: 此例中SalesOrder为发票的主部,此处为待装饰的对象。 打印出的内容为: FireWheel Tire    4    ¥154.23    ¥616.92Front Fender    1    ¥300.45    ¥300.45 这对于一个发票而言,是明显不够的,需要有头部,也需要有尾部,再加上前面显示的主要部分,形成一个完整的发票。本例中考虑的是头部与尾部可能会经常

2011-06-22 21:59:00 678

原创 java设计模式8:Decorator

装饰(Decorator)模式又名包装(Wrapper)。装饰模式以对客户端透明的方式扩展对象的功能,是继承关系的一个替代方案。 装饰模式使用原来被装饰的类的一个子类的实例,把客户端的调用委派到被装饰类。装饰模式的关键在于这种扩展是完全透明的。 1、抽象构件(Component):给出一个抽象接口,以规范准备接收附加责任的对象。2、具体构件(Concrete Component):定义一个将要

2011-06-20 23:37:00 594

原创 java设计模式7:Composite

安全式的组合模式 涉及到三个角色:     1、抽象构件(Component):这是一个抽象角色,它给参加组合的对象定义出公共的接口及其默认行为,可以用来管理所有的子对象。组合对象通常把它所包含的子对象当做类型为Component的对象。在安全式的合成模式里,构件角色并不定义出管理子对象的方法,这一定义由树枝构件对象给出。     2、树叶构件(Leaf):树叶对象是没有下级子对象的对象,定义出参

2011-06-20 22:03:00 848

原创 java设计模式6:Adapter

结构模式有下面这些:适配器模式,缺省适配模式,合成模式,装饰模式,代理模式,享元模式,门面模式,桥接模式等. 适配器模式有类的适配器模式和对象的适配器模式两种不同的形式。如下图所示,左边是类的适配器模式,右边是对象的适配器模式。 类的适配器模式把被适配的类的API转换成为目标类的API,其静态结构图如下图所示: 在上图中可以看出,Adaptee类并没有sampleOperation2

2011-06-13 23:24:00 1328

原创 java设计模式5:Prototype

克隆满足的条件:clone()方法将对象复制了一份并返还给调用者。一般而言,clone()方法满足以下的描述:1、对任何的对象x,都有:x.clone() != x。换言之,克隆对象与原对象不是同一个对象。2、对任何的对象x,都有:x.clone().getClass == x.getClass(),换言之,克隆对象与原对象的类型一样。3、如果对象x的equals()方法定义恰当的话,那么x.cl

2011-06-13 21:00:00 2998

原创 java设计模式4:builder

1、抽象建造者(Builder)角色:给出一个抽象接口,以规范产品对象的各个组成成分的建造。一般而言,此接口独立于应用程序的商业逻辑。2、具体建造者(Concrete Builder)角色:担任这个角色的是与应用程序紧密相关的一些类,它们在应用程序调用下创建产品的实例。这个角色要完成的任务包括:1)实现抽象建造者Builder所声明的接口,给出一步一步地完成建造产品实例的操作。2)在建造过程完成后

2011-06-06 23:38:00 2211

原创 java设计模式3:abstract factory

抽象工厂模式是所有形态的工厂模式中最为抽象和最具有一般性的一种形态。抽象工厂模式的简略类图如下图所示: 抽象工厂模式可以向客户端提供一个接口,使得客户端在不必指定产品的具体类型的情况下,创建多个产品族中的产品对象。这就是抽象工厂模式的用意. 抽象工厂模式与工厂方法模式的最大区别就在于,工厂方法模式针对的是一个产品等级结构,而抽象工厂模式则需要面对多个产品等级结构。 采用抽象工厂模式设计出的系统类

2011-06-04 00:36:00 999

原创 java设计模式2:factory method

1、抽象工厂(Creator)角色:担任这个角色的是工厂方法模式的核心。它是与应用程序无关的。任何在模式中创建对象的工厂类必须实现这个接口。在上面的系统中,这个角色由Java接口Creator扮演:在实际的系统中,这个角色也常常使用抽象Java类实现。2、具体工厂(Concrete Creator)角色:担任这个角色的是实现了抽象工厂接口的具体Java类。具体工厂角色含有与应用密切相关的逻辑,并且受到应用程序的调用以创建产品对象。3、抽象产品(Product)角色:工厂方法模式所创建的对象的超类型,也就是产

2011-06-02 23:52:00 789

C++11标准实现的线程池以及在此基础上实现的仿cron功能的定时器

面向C++开发的专业人员,使用C++11标准实现的线程池,此为https://blog.csdn.net/luhouxiang/article/details/137395898文章一个线程池的理解的对应源代码,可以使用vs2015编译。 由于此代码多用C++11的模板以及新特性,因此对于一般开发人员略有难度,且由于是在线程池基础上进一步探索定时任务的实现方式,难度进一步加大。关键点是先明白线程池的运作方式。然后再针对定时任务的处理实际上也是在线程池中的一个工作线程中进行的处理。另外,需说明的是原始码的出处:https://github.com/Ahajha/CTPL,只是github上的必须满足c++20的标准才能编译通过,这儿为了平日工程的需要专门做了降级到C++11,还有一点是github上只是线程池,此处代码在线程池的基础上开发了仿cron的定时任务,相信大家看了后会对cron的实现方式有更深入的理解。

2024-04-05

kline-chart,python3.12下运行,主要使用pyside6开发,下载下来后将所缺库安装即可直接运行

将K线数据用K线图的形式展示出来,最主要的功能是可以根据配置文件来显示额外指标并将之图形化显示出来。例如MA20,MA60,若有存储这两种数据,可直接加载显示,或是动用配置文件中配置的函数由K线基础数据显示对应的均线来。特别适合写量化交易但是算法又不能直观展示的人群。实际上我写这个的目的就是为了能动态展示不同指标数据(有些指标是别的程序计算出来,只要有,标示在配置文件中即可展示出来) 当然复杂的指标的即时计算需要自己写,(比如我写这个是为了理解ZigZag的算法,将其直观显示在K线图上,通过调整数据直观看指标形成的图形)

2024-03-24

boost_1_66_0_windows.rar

C++中boost源码,注意这是windows端源代码,本来想将vs2017编译的版本也一并上传上来,省得换台机器不是vs2017时还需要再编译.编译方法很简单,打开vs2017的x64本机工具,然后cd到解压的boost目录,运行bootstrap.bat,运行完成后再运行bjam.exe即可,运行完成后一般会生成stage目录,其中的lib即为对应的库,没有任何设置的应该生成的是纯静态库。使用也很简单,假设存的路径为D:\boost_1_66_0,只需在工程中引用头文件路径D:\boost_1_66_0,然后再引用库文件路径,即可正常调用一切boost相关功能。

2024-03-16

draw.io-24.0.4-windows-installer

最新的画图工具,只是由于在github上部分同学不好下载,上传在这儿

2024-03-16

vue3-button.zip

vue3+vite+element-plus学习demo

2021-06-22

webpy框架写的blog

web.py服务器框架开发的blog网站范例,参考:http://webpy.org/src/blog/0.3,数据库采用mysql,测试时记得建一个数据库webpy,然后把blog.sql导入库中,同时需要注意的是修改数据库的用户名和密码为你自己的

2017-05-11

web-server

web.py一个简单的网站程序,支持python3.5,亲测可以。使用方法,解压后,运行python index.py,然后即可访问http://localhost:8080

2017-05-10

gtest使用范例-使用cmake编译

使用gtest进行单元,测试,网上有一堆讲解。只是一般只针对一个文件或是两个文件,没有牵涉到很多文件或是非常复杂的工程情况,本范例的重点是如何与以往的工程相结合。在不改变原有工程的前提下测试工程中各类,并且尽可能降低工作量。

2017-02-08

一个简单的calendar源代码

来源于深入php与jQuery开发配套源代码,只不过流传的都有些问题 此源代码只跟进到刚好显示日历,其它的后面应该会跟进。 另外,此源码用phpStorm测试,此开发工具的调试能力无限强大。

2016-06-19

Spring 3.x 企业应用开发实战-源代码(myeclipse测试通过)

网上有对应的源代码,只不过那些源代码都缺少jar包,搜集这些jar包非常痛苦,稍有版本不同最后就直接运行出错,让你看不到那个论坛界面,本源代码是第17章实战案例,前面16章实际都是围绕这个论坛来讨论的,因此全书实际上只需要把17章这个论坛跑起来就OK了,搜集jar包的过程非常痛苦,那些零散的jar包在csdn上有下载,合在一起大概花费了几十分吧,不过这不重要,关键是需要花费大量的时间。我学习的方式属于那种很笨的方式,即一定要能跑起来才会看这些代码的前后逻辑,此资源献给那些和我一样的人。以下为代码本身的介绍:本代码取自《Spring 3.x 企业应用开发实战】完整高清扫描版)》第17章内容,是一个简单的论坛代码,由于网上流传的配套光盘依然不能正常运行,因此整理出来。 本代码环境:jdk1.7,javaee1.6,tomcat7.0,myeclipse10.7.1 数据库版本5.0 数据库账号:root,密码:root 数据库名:sampledb.sql,运行此程序前请先创建数据库,相关语句在sampledb.sql中

2015-12-25

maven3 安装包

下载后解压至D盘根目录,然后设置环境变量M2_HOME=D:\apache-maven-3.3.9,并在path变量中加上%M2_HOME%\bin,然后打开命令行,输入mvn -v,出现字样Maven home: D:\apache-maven-3.3.9即表示设置成功(注意,前提是jdk已安装并设置好jdk环境)

2015-12-06

maven3插件

maven3插件,myeclipse10.7联机下载我这边是不能成功的,所以只能采用离线安装的方式,此为需下载的插件

2015-12-06

ExtJS智能提示工具spket安装与破解

在myeclipse中开发,ExtJS智能提示工具spket安装与破解

2015-04-23

wing ide 5.0.6 最新注册机

wing ide 5.0.6-1测试通过,需要先手动更改文件中的requestcode为你自己的requestcode,然后再运行之即可得到你所要的注册码

2014-06-02

正则表达式解析器源码(C#完成)

看C#的正则表达式,偶然看到这个解析器,觉得比较经典,虽然做完后感觉极简单,对于初手而言应该会受益良多。代码用vs2008C#完成,调试通过,简单测试通过。

2014-04-20

log4cplus-1.1.2vs2008编译通过

前段时间在公司使用一个也不知是什么版本的log4cplus,经常程序莫名死掉,考虑将其换成log4cxx,因以前用这个库比较顺手,并且从未发生过因日志死掉的现象,到网上一查4cxx的最后更新日期为10年,4cplus更新日期为今年,很明显还是有优势的,于是下了个最新版本,发现只能用vs2010版编译,比较麻烦,因为我们的代码统一用vs2008,不方便联调修改,便利用vs工具重新架构了vs2008编译版,只针对log4cplus的4个dll编译通过,因平时使用已然足够,其它的请参考vs2008版自己做吧。

2013-12-08

nginx源码vs2008版

nginx最近是越来越火,许多大型商业网站都用它作服务器,作为开发人员很有必要拿来研究一下。从网上下来的都是make版,代码看起来不是那么方便,特别是对我这种习惯vs的程序员,幸好有朋友整理了一下,在vs2008下,release版测试通过,可以运行。

2012-08-25

log4cxx测试工程

log4cxx是一个专业的日志系统,我们在日常工作中应该直接使用使得我们的程序更具有可维护性。此程序包含了log4cxx相关的头文件及lib和dll,可直接引入工程,非常方便。

2012-03-03

Windows核心编程第5版(英文版)

在网上找到的,很被推崇的一本技术书。可惜中文版的pdf太大了,有100多M,超过了上传所限(20M),只好传一个英文版的

2011-02-13

设计模式之详解(c++实现版)

这是gof的23个设计模式的具体实现,书中的例子极其艰涩,阅读起来比较难以理解,这个是针对每一个设计模式写的例程代码,以期用最少量的代码说明事物的本质,强烈推荐.这个东西不是我本人整理,也是偶有一天在网上看到,不过现在可能找不到了.稍后有时间会考虑将书中的例子的代码补齐,再优化,去除那些不必要的东西,以期理解设计模式的本质.

2009-07-08

多叉树构造器

可以用来构造不同类型的树,并显示出来,可按非递归的方法进行遍历,遍历分两种方法,广度优先搜索和深度优先搜索。代码中有详细说明。在readme.txt有一些相关介绍。<br>程序在vc6,vs2005环境下编译通过。

2008-04-13

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

TA关注的人

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