自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(84)
  • 资源 (41)
  • 收藏
  • 关注

转载 设计模式介绍

一、什么是软件设计模式?设计模式:是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块砖石一样。 二、设计模式和框架可复用面向对象软件系统现在一般划分为两大类:应用程序工具箱和框

2013-06-27 22:41:58 943

转载 适配器模式

适配器模式,即把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法一起工作的两个类能够在一起工作。例如:笔记本的电源适配器、二脚转三脚的电源插座等等。       适配器分成两种形式,分别是类的适配器模式和对象的适配器模式,它们的结构图如下图所示:   实现源码:(由于个人Rational Rose用的不熟,可能代码与上图有点差异) 类的适配器模式:

2013-06-27 22:37:55 678

转载 Builder模式

Builder模式也叫建造者模式或者生成器模式,是由GoF提出的23种设计模式中的一种。Builder模式是一种对象创建型模式之一,用来隐藏复合对象的创建过程,它把复合对象的创建过程加以抽象,通过子类继承和重载的方式,动态地创建具有复合属性的对象。Builder模式的应用场景 - 对象的创建:Builder模式是为对象的创建而设计的模式 - 创建的是一个复合对象:被创建的对

2013-06-27 22:11:51 731

转载 享元模式

GoF对享元模式的描述是:运用共享技术有效地支持大量细粒度的对象。Flyweight模式是构造型模式之一,它通过与其他类似对象共享数据来减小内存占用。也就是说在一个系统中如果有多个相同的对象,那么只共享一份就可以了,不必每个都去实例化一个对象。在Flyweight模式中,由于要产生各种各样的对象,所以在Flyweight(享元)模式中常出现Factory模式。Flyweight的内部状态是

2013-06-27 21:57:36 645

转载 设计模式之Facade

定义:        GOF《设计模式》一书对Facade模式是这样描述的:       为子系统中的一组接口提供一个统一接口。Facade模式定义了一个更高层的接口,使子系统更加容易使用。使用场景:       1、为一个复杂子系统提供一个简单接口时,由于子系统往往因为不断演化而变得越来越复杂,但这种变化不应该影响到客户的调用,此时使用 Facade 模式对外提供一个

2013-06-27 21:56:04 982

转载 设计模式_迭代模式

为什么要使用迭代模式?相较于数组这样简单的数据容器,有时候我们会需要遍历,操作一些更复杂的数据容器,像ArrayList,HashMap等。那么在遍历或操作这些数据容器时,可能会遇到这样的情况:    一.迭代方式没有改变,但是数据容器变了。    二.数据容器没有改变,但是迭代逻辑变了。    问题是,我们不希望改变客户端代码,那么就只有将可能变化的内容抽象化,让客户端去操作抽象接口

2013-06-27 21:54:11 791

转载 java接口回调

在java组件编程时(如Android编程)时会十分频繁的使用到接口回调,以前我都没有发现,只是照着书上写的做。最常见的就是View.setonClickListener(new View.onClickListener())这样的语句了。因为最近看得代码也渐渐多起来了,所以很自然的就发现这个问题了,然后还好现在Android中的sdk源码都是可以直接查看的,现在我明白了。   感觉接口回调也

2013-06-27 21:35:45 5093 1

转载 设计模式之责任链模式

刚学习了责任链模式,感觉还是蛮不错的,随手记录了下学习的内容。 责任链模式:责任链模式用于弱化请求发生者和请求处理者之间的关系。当多个对象都可以对请求进行处理,但不同的对象能处理的请求类型不同时,可以通过指向另一个对象的引用把这些对象连成一条责任链。当 Client 发出一个请求时,并不知道具体由哪个对象进行处理,它看到的只是一条责任链,将请求直接交给责任链,请求会在责任链中传递,直到找到

2013-06-27 21:21:39 781

转载 工厂方法模式

之前有一篇简单工厂模式的介绍:http://liyf155.iteye.com/blog/1180975,里面介绍了简单工厂模式。简单工厂模式的缺点是很明显的,对“开-闭”原则的支持不够,即扩展性不好,如果有新的产品加入到系统中,那么就要去修改工厂类,并且将必要的逻辑加入到工厂类中,工厂方法模式的引进,既保留了简单工厂模式的有点,又克服了它的缺点。       首先,在工厂方法模式中,核心的工

2013-06-27 21:15:15 870

转载 JAVA设计模式之观察者模式2

ObserverManager接口:Java代码  package com.zg.service;     public interface ObserverManager {         public abstract void addObserver(Observer observer);       public abstract void removeObs

2013-06-27 21:09:48 1237

转载 java几种常用设计模式简单示例

1.单例设计模式       所谓单例设计模式简单说就是无论程序如何运行,采用单例设计模式的类(Singleton类)永远只会有一个实例化对象产生。具体实现步骤如下:      (1) 将采用单例设计模式的类的构造方法私有化(采用private修饰)。      (2) 在其内部产生该类的实例化对象,并将其封装成private static类型。      (3) 定义一个静态方法

2013-06-27 21:04:16 91120 11

转载 java设计模式--策略模式

当我们掌握了Java的语法,当我们了解了面向对象的封装、继承、多态等特性,当我们可以用Swing、Servlet、JSP技术构建桌面以及Web应用,不意味着我们可以写出面向对象的程序,不意味着我们可以很好的实现代码复用,弹性维护,不意味着我们可以实现在维护、扩展基础上的代码复用。一把刀,可以使你制敌于无形而于江湖扬名,也可以只是一把利刃而使你切菜平静。Java,就是这把刀,它的威力取决于你使用的方

2013-06-27 20:57:38 3662

转载 Java 设计模式——观察者模式

一、概述 Java的设计模式很多,观察者模式被称为是模式中的皇后,而且Java jdk也对它做了实现,可见该设计模式的重要位置。在图形化设计的软件中,为了实现视图和事件处理的分离,大多都采用了Observer模式,比如 Java的Swing,Flex的ActionScript等。在现实的应用系统中也有好多应用,比如像当当网、京东商城一类的电子商务网站,如果你对某 件商品比较关注,可以放到收

2013-06-27 16:52:06 827

转载 Java开发中的23种设计模式

学习设计模式有两个意义:一、学习设计模式最重要的是了解模式的应用场景。编程遇到特定场景的话,要有意识联想到设计模式,哪怕细节忘了也没关系,翻翻书就找到了。二、提高设计的思想。学习设计模式的时候,要体会模式精妙之处,当想明白大师思想和自己的差距的时候,差距就缩短了一点儿。有的模式平淡无奇,应用却广泛。有的模式设计精巧,应用场景却不易遇到。无论如何,要么掌握工具,要么学到思想,都是收获。

2013-06-27 11:38:13 728

转载 java设计模式示例

创建模式1.工厂方法模式(Factory Method)  将程序中创建对象的操作,单独出来处理,创建一个产品的工厂接口,把实际的工作转移到具体的子类。大大提高了系统扩展的柔性,接口的抽象化处理给相互依赖的对象创建提供了最好的抽象模式。public class TestFactoryMethod {public static void main(String[] args) {

2013-06-27 11:35:00 887

转载 Spring整合JMS——基于ActiveMQ实现

Spring整合JMS——基于ActiveMQ实现(一) 1.1     JMS简介       JMS的全称是Java Message Service,即Java消息服务。它主要用于在生产者和消费者之间进行消息传递,生产者负责产生消息,而消费者负责接收消息。把它应用到实际的业务需求中的话我们可以在特定的时候利用生产者生成一消息,并进行发送,对应的消费者在接收到对应的消息后去完成对应的

2013-06-25 11:00:12 42777 22

转载 Java与C++混合编程

现在的程序员,不再像以前一样,掌握一种编程语言就可以混得有模有样了,这里为大家讲的,就是C++与Java混合编程.现实的情况是,真实的项目中,通常是涉及多种编程语言,举几个简单的例子,一个软件为了快速开发,可能是使用Delphi或VB作为界面开发首选语言,底层的指令或核心算法,会使用C/C++处理,涉及数据处理的时候,为了安全和快速开发,会使用Javascript或Python等脚本语言实现数

2013-06-25 10:59:37 1511

转载 java c++混合编程

具体参照: http://www.cnblogs.com/icejoywoo/archive/2012/02/22/2363709.html                      http://www.cnblogs.com/icejoywoo/archive/2012/02/24/2367116.html

2013-06-25 10:58:56 938

转载 JAVA 与C++ 混合编程 Java中调用C/C++生成的DLL

一、 生成C的头文件   1. 编辑Main.java   public class Main   {   public native static int getStrNum(byte str[], int strLen);   }   2. 生成头文件   按win + r打开“运行”窗口,输入“cmd”,打开DOS控制台窗口。进入上面Main.java所在的目录中

2013-06-25 10:47:08 989

转载 java开发webservice的几种方式

webservice的应用已经越来越广泛了,下面介绍几种在Java体系中开发webservice的方式,相当于做个记录。1.Axis2Axis是apache下一个开源的webservice开发组件,出现的算是比较早了,也比较成熟。这里主要介绍Axis+eclipse开发webservice,当然不用eclipse也可以开发和发布webservice,只是用eclipse会比较方便。

2013-06-25 10:30:49 52979 2

转载 static,inline,volatile的作用

1、static (1)先来介绍它的第一条也是最重要的一条:隐藏。 当我们同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性。为理解这句话,我举例来说明。我们要同时编译两个源文件,一个是a.c,另一个是main.c。下面是a.c的内容char a = 'A'; // global variablevoid msg() {    prin

2013-06-25 08:07:16 680

转载 C++ : __attribute__关键字扩展

GCC使用__attribute__关键字来描述函数,变量和数据类型的属性,用于编译器对源代码的优化。GCC使用__attribute__关键字来描述函数,变量和数据类型的属性,用于编译器对源代码的优化。描述函数属性的几个重要的关键字:void noreturnfun() __attribute__((noreturn));//函数不会返回。void centon(

2013-06-24 22:49:30 10075 3

转载 在main函数之前调用函数,以及对设计的作用

#include #include static void before(void) __attribute__ ((constructor));static void after(void) __attribute__ ((destructor));static void middle(void);static void before(){

2013-06-24 22:33:44 821

转载 main函数之前执行代码

main函数之前执行代码 有的时候,需要会遇到这样的一个情况,“想要在main或者WinMain函数执行前初始化我们的系统框架,和在之后释放我们的系统框架”, 如果这样,我们该怎么做呢?笔者今天放假,来公司继续解决昨天剩余的问题,然后调试exit函数的时候,会发现它会调用static void __cdecl doexit (int code, int quick,int retcalle

2013-06-24 22:14:19 2253

转载 汇编指令大全(有注释)

一、数据传输指令───────────────────────────────────────它们在存贮器和寄存器、寄存器和输入输出端口之间传送数据.1. 通用数据传送指令.MOV 传送字或字节.MOVSX 先符号扩展,再传送.MOVZX 先零扩展,再传送.PUSH 把字压入堆栈.POP 把字弹出堆栈.PUSHA 把AX,CX,DX,BX,SP,BP,SI,DI

2013-06-24 16:51:58 744

转载 C++中调用汇编的方法

1 引言  Visual C++ 是当今最流行的软件开发工具之一,它可以实现可视化编程和支持面向对象的编程技术。人们在开发的过程中将两种语言进行混合编程,这种方法使两种语言相互调用,进行参数传递,共享数据结构和数据信息,充分发挥了各种语言的特点和优势,大大提高了应用软件的效率。因此,正确掌握Visual C++与汇编语言的接口技术对软件开发是十分必要的。   2 Visual C++调

2013-06-24 16:28:10 1706

转载 C/C++函数调用约定

关于 C/C++ 函数调用约定,大多数时候并不会影响程序逻辑,但遇到跨语言编程时,了解一下还是有好处的。VC 中默认调用是 __cdecl 方式,Windows API 使用 __stdcall 调用方式,在 DLL 导出函数中,为了跟 Windows API 保持一致,建议使用 __stdcall 方式。调用约定跟堆栈清除密切相关。如果写一个汇编函数,给 C/C++ 调用,在 __cde

2013-06-24 16:21:49 534

转载 C++中的重载、覆盖、隐藏机制

先讨论一下重载(Overload)的含义,在同一可访问区内被声名的几个具有不同参数列的(参数的类型、个数、顺序不同)同名函数,程序会根据不同的参数列来确定具体调用哪个函数,这种机制叫重载, 重载不关心函数的返回值类型。这里,“重载”是“重复”、“重叠”的意思。例如在同一可访问区内有:① double calculate(double);② double calculate(double

2013-06-24 08:52:14 1019

转载 #include<iostream>和#include<iostream.h>的区别

区别在于:如果用了,则一定要引入命名空间,即"using  namespace  std;如果用了,则不能引入命名空间,否则会引起编译错误,提示找不到命名空间.例程如下:   //情况一:使用和命名空间   #include     using  namespace  std;   int main()   {      cout  need  to  use  nam

2013-06-24 08:38:17 1256

转载 static_cast、dynamic_cast reinterpret_cast和const_cast用法

关于强制类型转换的问题,很多书都讨论过,写的最详细的是C++ 之父的《C++ 的设计和演化》。最好的解决方法就是不要使用C风格的强制类型转换,而是使用标准C++的类型转换符:static_cast, dynamic_cast。标准C++中有四个类型转换符:static_cast、dynamic_cast、reinterpret_cast、和const_cast。下面对它们一一进行介绍。stat

2013-06-24 08:34:41 497

转载 java享元模式

GOF:运用共享技术有效地支持大量细粒度的对象。   解释一下概念:也就是说在一个系统中如果有多个相同的对象,那么只共享一份就可以了,不必每个都去实例化一个对象。比如说(这里引用GOF书中的例子)一个文本系统,每个字母定一个对象,那么大小写字母一共就是52个,那么就要定义52个对象。如果有一个1M的文本,那么字母是何其的多,如果每个字母都定义一个对象那么内存早就爆了。那么如果要是每个字母都共享

2013-06-23 20:32:11 915

转载 Tomcat优化配置

1.内存设置(VM参数调优)(1).Windows环境下,是tomcat解压版(执行startup.bat启动tomcat) ,解决办法:修改“%TOMCAT_HOME%\bin\catalina.bat”文件,在文件开头增加如下设置:set JAVA_OPTS=-Xms512m -Xmx512m-XX:PermSize=128M -XX:MaxNewSize=256m-XX:MaxP

2013-06-23 19:24:09 580

转载 Tomcat性能调优

Tomcat性能调优一、操作系统调优对于操作系统优化来说,是尽可能的增大可使用的内存容量、提高CPU的频率,保证文件系统的读写速率等。经过压力测试验证,在并发连接很多的情况下,CPU的处理能力越强,系统运行速度越快。。【适用场景】 任何项目。二、Java虚拟机调优应该选择SUN的JVM,在满足项目需要的前提下,尽量选用版本较高的JVM,一般来说高版本产品在速度和效率上比低版本会

2013-06-23 19:23:27 529

转载 android之调用webservice 实现图片上传

最近boss要求做android客户端的图片上传和下载,就是调用服务器的webservice接口,实现从android上传图片到服务器,然后从服务器下载图片到android客户端。需求下来了,开始动脑筋了呗。通常,我们调用webservice,就是服务器和客户端(浏览器,android手机端等)之间的通信,其通信一般是传 xml或json格式的字符串。对,就只能是字符串。我

2013-06-23 19:10:17 1173

转载 Linux系统调用

目录:1. Linux系统调用原理2. 系统调用的实现3. Linux系统调用分类及列表4.系统调用、用户编程接口(API)、系统命令和内核函数的关系5. Linux系统调用实例6. Linux自定义系统调用1.系统调用原理系统调用,顾名思义,说的是操作系统提供给用户程序调用的一组“特殊”接口。用户程序可以通过这组“特殊”接口来获得操作系统内核提供的

2013-06-22 21:38:24 643

转载 TS C++调用JAVA方法详解

本文主要http://public0821.iteye.com/blog/423941上的文章。

2013-06-22 16:16:51 848

转载 讲解如何在C/C++中调用Java的方法

Java跨平台的特性使Java越来越受开发人员的欢迎,但也往往会听到不少的抱怨:用Java开发的图形用户窗口界面每次在启动的时候都会跳出一个控制台窗口,这个控制台窗口让本来非常棒的界面失色不少。怎么能够让通过Java开发的GUI程序不弹出Java的控制台窗口呢?其实现在很多流行的开发环境例如JBuilder、Eclipse都是使用纯Java开发的集成环境。这些集成环境启动的时候并不会打开一

2013-06-22 16:13:06 908

转载 开源的源代码编辑控件Scintilla的使用

1.简介Scintilla是一款开源的语法高亮编辑器控件,官方网站:http://www.scintilla.org/。Scintilla 是最优秀的编辑控件之一,实现了语法高亮,代码折叠,书签,自动完成等等诸多功能,速度快,源代码也比较好理解,易于扩展,易于增加对新语言的支持。 比较著名的 scite , Notepad++,Notepad2 都是基于 Scintilla 开发的

2013-06-18 20:38:46 1376

转载 VC环境下基于MFC框架的OpenGL的编程环境的配置

VC环境下基于MFC框架的OpenGL的编程环境的配置 学习OpenGL时,一般都是在控制台环境下的窗口,这里简单介绍一下基于MFC框架的OpenGL的编程环境的配置,希望对你有所帮助。在开始之前,首先确保你的VC已经包含了相应的OpenGL库文件,否则,将无法进行编译。若没有的话,可以从这里下载:http://butterflydog.download.csdn.net/然后解压

2013-06-18 20:38:19 943

转载 剖析MFC的文档视图结构

这是我学习MFC过程中搜集的一些资料的整合。  本文结构: (一)   了解文档 / 视结构 (二)   了解与文档 / 视结构有关的各种类之间的关系 (三)   了解了解 CWinApp::OnFileNew 、 CWinApp::OnFileOpen 和 Window/New 的程序流程。 (四)   几种情况的讨论 (一)了解文档 / 视结构 MFC 应用程序

2013-06-18 20:37:32 732

机房环境监控系统(后台部分)

机房环境监控系统(后台部分),本部分主要实现数据采集和报警控制

2013-04-22

机房监控系统(二) 前台部分

机房监控系统,本部分是前台部分,包括监视和控制部分。下载后,放入tomcat安装目录webapps文件夹下。

2013-04-22

机房监控系统(一) 后台部分

这个部分主要是机房各监控设备的数据采集和设备控制。

2013-04-22

windbg使用说明

本文档详细说明windbg调试使用方法,同时附有PPT,使用说明。

2012-08-20

staruml使用守则

本文件相信讲述了如何使用staruml工具,StarUML是一种生成类图和其他类型的统一建模语言(UML)图表的工具。这是一个用Java语言描述的创建类图的简明手册。

2012-08-15

modbus协议

标准modbus通讯协议,此软件实现的标准服务器程序,程序中有bug,使用时请注意!

2012-08-13

电力协议104

本程序实现电力104协议,包括遥信,遥测,遥控,等功能。这个是测试程序,有bug,请注意修改。

2012-08-13

电力协议101

本程序实现电力101协议,包括遥信,遥测,遥控,等功能。这个是测试程序,有bug,请注意修改。

2012-08-13

电力通信协议

本文档中主要包括电力101 ,104,等通信协议文档,和程序实例。

2012-08-13

RFID LED显示

RFID LED控制系统,实时显示进出站,到发车,车位等 汽车牌照等信息,同时采用upd通信,具体可以看udpserver资源

2012-08-13

CRC校验 C#

此代码包括CRC8 ,CRC 16,CRC 32三种校验方式,是C#的。

2012-08-13

通信类tcp方式c#

tcp 通信类,主要用于服务器端的tcp 开发,使用多线程和异步操作接收数据,事件处理用线程池操作。

2012-08-13

通信类udp方式

upd 通信类,主要用于服务器端的udp开发,使用多线程和异步操作接收数据,事件处理用线程池操作。

2012-08-13

基于IOCP的modbus服务程序

本程序是基于iocp服务,提供modbustcp从站服务,此程序里面包括iocp ,串口操作类,共享内存类,是学习的好列子。

2012-08-13

串口操作C++

串口操作C++,本程序主要是操作windows平台下的串口读写数据。分为同步和异步操作。

2012-08-13

modbus从站服务程序

modbus从站服务程序,主要是模拟modbus从站服务程序,方便用户测试主站程序。同时可以修改值。以达到变化的目的。

2012-08-13

c#操作短信猫收发短信

C# 通过串口操作短信猫收发短信,同时可以配置短信猫参数

2012-08-13

modbustcp测试软件

modbustcp测试软件,可以读取线圈,寄存器等数据,分为同步和异步,同时可以写入数据。

2012-08-13

守护进程管理器

本程序是监视程序有无退出,如果退出则启动。主要用在无人值守的服务器上。

2012-08-13

webtime时间

在。NET下,写的一个小时间程序

2007-11-27

Android程序自动更新实现Demo

由于Android项目开源所致,市面上出现了N多安卓软件市场。为了让我们开发的软件有更多的用户使用,我们需要向N多市场发布,软件升级后,我们也必须到安卓市场上进行更新,给我们增加了工作量。因此我们有必要给我们的Android应用增加自动更新的功能。

2014-09-26

vc++菜单国际化

vc++ 实现菜单资源国际化,同时实现多语言手动切换。不用重启程序。

2014-09-09

C# winform 国际化

简单实现C# winForm 国际化,先实现菜单国际化,后实现资源国际化

2014-09-09

服务器推送技术(聊天)

C# Asp.net 实现的服务器推送技术(聊天),简单系统实现。

2014-09-09

C#代码生成器

C#简单代码生成器, 老师的,用于生产简单的代码生成

2014-09-09

C# winform Framework

DMS C#三层开发框架,学习使用。非常简单,数据库为Access. 可以移植到其他数据库。如MSSQL,Oracle,MySql等

2014-09-09

c++通过occi链接oracle数据库

c++通过occi链接oracle数据库 本文档通过occi链接oracle数据库demo.

2013-07-01

c# 链接oracle数据库(不安装客户端)

c# 链接oracle数据库(不安装客户端) 本demo 实现不安装oracle客户端开发数据库。不过,需安装oracle instant client .同时要主要oracle数据库的版本对应问题。

2013-07-01

c++设计模式 代码实例

c++设计模式 代码实例 本代码中简单介绍23中设计模式代码

2013-07-01

设计模式java简单实例

设计模式,本代码中只有简单的模式实现,java实现。其他语言也是一样

2013-06-27

java调用C++ Demo

java调用C++实例,属于混合编程

2013-06-25

C++调用java方式

c/c++调用java,这个是混合编程实例

2013-06-25

c/c++调用汇编

本实例主要针对c/c++和汇编语言的混合编程

2013-06-25

spring+jms+activemq

使用spring框架 实现消息传递 基于activemq

2013-06-25

boost asio 服务器和客户端 TCP

boost库中asio的简单应用,一个服务器一个客户端

2013-06-14

boost asio中转服务器(TCP)

应用场景是这样的: 客户端和服务器在不同的网段内,它们之间不能直接通过TCP连接,但是有一台机器(暂时称为转发器)有双网卡,两块网卡分别在客户端和服务器端的网段内,这样转发器就能分别和客户端即服务器建立连接,并来回传输数据

2013-06-14

C# 组态软件(后台部分)

本程序注意模仿力控软件。

2013-04-20

OPC Server Light OPC

OPC Server参考项目,这个项目是开源的。值得参考

2013-04-20

空空如也

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

TA关注的人

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