<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[小金的想法]]></title><description><![CDATA[编程相关]]></description><link>https://blog.youkuaiyun.com/zjcode</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; zjcode]]></copyright><item><title><![CDATA[使用python来处理excel表《1》]]></title><link>https://blog.youkuaiyun.com/zjcode/article/details/51136926</link><guid>https://blog.youkuaiyun.com/zjcode/article/details/51136926</guid><author>zjcode</author><pubDate>Tue, 12 Apr 2016 20:40:57 +0800</pubDate><description><![CDATA[wb = load_workbook(filename='test.xlsm', use_iterators=True)，需要注意的是如果不加上use_iterators=True，慢的要死，一张表要打开半天。



ws_org = wb.get_sheet_by_name(u'机构信息')

ws_device = wb.get_sheet_by_name(u'监控设备')

]]></description><category></category></item><item><title><![CDATA[TortoiseSVN 配合 Beyond Compare 3]]></title><link>https://blog.youkuaiyun.com/zjcode/article/details/8044723</link><guid>https://blog.youkuaiyun.com/zjcode/article/details/8044723</guid><author>zjcode</author><pubDate>Sun, 07 Oct 2012 10:34:35 +0800</pubDate><description><![CDATA[1.TortoiseSVN-->Settings 
2.Diff Viewer->External E:\EeyondCompare3\BCompare.exe(上下两个都填上)
3.Merge Tool->External E:\EeyondCompare3\BCompare.exe
4.Unified Diff Viewer->External E:\EeyondCompare3\BCo]]></description><category></category></item><item><title><![CDATA[创建型模式]]></title><link>https://blog.youkuaiyun.com/zjcode/article/details/7405050</link><guid>https://blog.youkuaiyun.com/zjcode/article/details/7405050</guid><author>zjcode</author><pubDate>Wed, 28 Mar 2012 23:10:18 +0800</pubDate><description><![CDATA[写着篇文章只是为了整理思路，我相信写完后我能更加清晰。
书中强调复用应主要使用对象复用而不是类继承的方式，创建模式，隔离了具体产品产生的具体过程。
抽象工厂不同的类产生不同的对象。这个方法针对了类。
工厂方法在类中增加产生不同对象接口。这个方法作用于对象。
现实中我觉得两种方法没有这么多的区别，基本上我都有用。
builder封装了构建的对象的过程，构造器提供了构造组件的方法，创造者设定]]></description><category></category></item><item><title><![CDATA[什么是模式]]></title><link>https://blog.youkuaiyun.com/zjcode/article/details/7347014</link><guid>https://blog.youkuaiyun.com/zjcode/article/details/7347014</guid><author>zjcode</author><pubDate>Tue, 13 Mar 2012 00:00:17 +0800</pubDate><description><![CDATA[看了书，看了模式的定义。
应该算顿悟了，虽然不知道悟的如何，是悟空还是悟净，或是悟能。
模式通俗点讲是套路，设计套路。
就像我很想琢磨出一套穿衣服的套路，然后穿的和汤姆克鲁斯一样，拉风的无往不利，这应该叫穿衣模式。
我试着看了两个场景MVC和中介者，然后自己实现了他们，最后回过头来看，真的和书上实现的八九不离十。
我想模式只是一种固定套路，不能适合所有的场景，就像穿衣模式，处刑人中拉风的]]></description><category></category></item><item><title><![CDATA[没有界面的windows程序]]></title><link>https://blog.youkuaiyun.com/zjcode/article/details/6255481</link><guid>https://blog.youkuaiyun.com/zjcode/article/details/6255481</guid><author>zjcode</author><pubDate>Thu, 17 Mar 2011 10:18:00 +0800</pubDate><description><![CDATA[1.建立一个空的win32工程2.子系统改为windows3.建立源文件#include 

int APIENTRY _tWinMain(HINSTANCE hInstance,
					   HINSTANCE hPrevInstance,
					   LPTSTR lpCmdLine,
					   int nCmdShow)
{
	return 0;
} 4.入口点改为_tWinMain5.搞定。]]></description><category></category></item><item><title><![CDATA[备忘]]></title><link>https://blog.youkuaiyun.com/zjcode/article/details/6234969</link><guid>https://blog.youkuaiyun.com/zjcode/article/details/6234969</guid><author>zjcode</author><pubDate>Wed, 09 Mar 2011 18:54:00 +0800</pubDate><description><![CDATA[<br /><br />今天又看了深入浅出MFC<br />有几点印象比较深刻<br />1.C++是静态类型语言，MFC中的CRunTimeClass也只是为了方便的生成代码框架而已，其意义在实际工作中不是很明显。<br />例如使用配置文件动态生成类，这个在C++中无法通过语言自身的能力实现。<br />2.终于明白document/view结构的好处，以后开发软件会方便很多，以前舍本逐末的放弃这个文档视图框架真是傻啊<br />3.消息机制终归离不开遍历，说到底，计算机里只有遍历才是王道。<br />]]></description><category></category></item><item><title><![CDATA[windows下配置SVN]]></title><link>https://blog.youkuaiyun.com/zjcode/article/details/6162180</link><guid>https://blog.youkuaiyun.com/zjcode/article/details/6162180</guid><author>zjcode</author><pubDate>Tue, 25 Jan 2011 00:28:00 +0800</pubDate><description><![CDATA[<br />原文地址：http://hi.baidu.com/guanwei/blog/item/a9c065386bbf382097ddd8c8.html<br /> <br />备忘<br /> <br />由于用svnservice配了半天不成功，apache又麻烦，只采用简单的daemon形式<br /><br />1.下载安装文件http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91<br />2.解压到一个目录D]]></description><category></category></item><item><title><![CDATA[环形缓冲区]]></title><link>https://blog.youkuaiyun.com/zjcode/article/details/6156045</link><guid>https://blog.youkuaiyun.com/zjcode/article/details/6156045</guid><author>zjcode</author><pubDate>Fri, 21 Jan 2011 00:47:00 +0800</pubDate><description><![CDATA[<br />在缓冲区的一头读出数据<br />在缓冲区的另一头写进数据<br />根据两头的指针指明当前保存数据的区域<br /> <br />apped方法写进数据<br />pop方法弹出数据<br /> <br />SBuffer.h<br />#ifndef S_buffer_class
#define S_buffer_class
#include "ComDefine.h"
#define BYTE8	char
#define BYTE32	int
#define BUFFER_MAX]]></description><category></category></item><item><title><![CDATA[VS2005编译ZThread]]></title><link>https://blog.youkuaiyun.com/zjcode/article/details/6030935</link><guid>https://blog.youkuaiyun.com/zjcode/article/details/6030935</guid><author>zjcode</author><pubDate>Tue, 23 Nov 2010 23:16:00 +0800</pubDate><description><![CDATA[<br />原文地址：http://0flyingpig0.blog.163.com/blog/static/99370556201011811245324/<br /> <br /><br />工程属性----->配置属性----->连接器----->附加依赖项------->添加ZThread.lib即可<br /> <br />1。在7。1里建立项目，选择静态库的项目，注意，把“使用预处理”前的勾打掉，就是不使用预处理<br />2。在文件夹里添加现有项，把2.3.1里的src文件夹里所有的CXX文件]]></description><category></category></item><item><title><![CDATA[删 svn 文件的方法]]></title><link>https://blog.youkuaiyun.com/zjcode/article/details/5982485</link><guid>https://blog.youkuaiyun.com/zjcode/article/details/5982485</guid><author>zjcode</author><pubDate>Tue, 02 Nov 2010 16:50:00 +0800</pubDate><description><![CDATA[<br />在群里看到一个方法 不错 很灵 <br /> <br />建立一个文本文件，取名为kill-svn-folders.reg（扩展名由txt改为reg），内容如下：<br />Windows Registry Editor Version 5.00<br />[HKEY_LOCAL_MACHINE/SOFTWARE/Classes/Folder/shell/DeleteSVN] <br />@="Delete SVN Folders"<br />[HKEY_LOCAL_MACHINE/SOFTWA]]></description><category></category></item><item><title><![CDATA[抽象工厂和生成器]]></title><link>https://blog.youkuaiyun.com/zjcode/article/details/5956113</link><guid>https://blog.youkuaiyun.com/zjcode/article/details/5956113</guid><author>zjcode</author><pubDate>Thu, 21 Oct 2010 11:09:00 +0800</pubDate><description><![CDATA[用一个例子在表述抽象工厂和生成器的差异，备忘！/*
	抽象工厂(abstract factory)和生成器(builder)
	抽象工厂用来生成对象
	生成器用来生成和组装对象
	使用这两种模式来模拟生产一台只有CPU的计算机
*/

//首先定义 Computer、 CPU类.
class CPU
{
};
class Computer
{
public:
	void Assembl(CPU* _cpu);
private:
	CPU* _cpu;
};

//定义一]]></description><category></category></item><item><title><![CDATA[DX学习记录-顶点结构]]></title><link>https://blog.youkuaiyun.com/zjcode/article/details/5887901</link><guid>https://blog.youkuaiyun.com/zjcode/article/details/5887901</guid><author>zjcode</author><pubDate>Thu, 16 Sep 2010 11:19:00 +0800</pubDate><description><![CDATA[<br />在DX例子中有这样一个顶点结构<br />// A structure for our custom vertex type. We added a normal, and omitted the
// color (which is provided by the material)
struct CUSTOMVERTEX
{
	D3DXVECTOR3 position; // The 3D position for the vertex
	D3DXVECTOR3 normal;  ]]></description><category></category></item><item><title><![CDATA[Wireshark的Pcap文件格式分析]]></title><link>https://blog.youkuaiyun.com/zjcode/article/details/5884105</link><guid>https://blog.youkuaiyun.com/zjcode/article/details/5884105</guid><author>zjcode</author><pubDate>Tue, 14 Sep 2010 17:33:00 +0800</pubDate><description><![CDATA[<br />原文地址：http://blog.chinaunix.net/u2/82392/showart_1870732.html<br /> 前段时间因工作要求，需要对各种数据包进行分析和操作，内容涉及网路协议分析，socket，文件操作等。在此分享下学习和实践的经验。　　<br />　　首先介绍下网络抓包、协议分析的必备软件Ethereal，新版（Wireshark）以下还以 Ethereal代之，目前最新版本已经支持在无线局域网抓包了。Linux和Windows均有对应安装包，它们分别是gcc和VC]]></description><category></category></item><item><title><![CDATA[RTP协议格式 备忘]]></title><link>https://blog.youkuaiyun.com/zjcode/article/details/5867000</link><guid>https://blog.youkuaiyun.com/zjcode/article/details/5867000</guid><author>zjcode</author><pubDate>Mon, 06 Sep 2010 20:02:00 +0800</pubDate><description><![CDATA[<br />/* <br /> * RFC3550.txt<br /> * RTP: A Transport Protocol for Real-Time Applications<br /> *<br /> * The RTP header has the following format:<br />    0                   1                   2                   3<br />    0 1 2 3 4 5 6 7 8 9 0 1 2 3 ]]></description><category></category></item><item><title><![CDATA[使用16进制输出网卡地址]]></title><link>https://blog.youkuaiyun.com/zjcode/article/details/5866714</link><guid>https://blog.youkuaiyun.com/zjcode/article/details/5866714</guid><author>zjcode</author><pubDate>Mon, 06 Sep 2010 17:05:00 +0800</pubDate><description><![CDATA[<br />printf( "dest_addr is: %02x:%02X:%02X:%02X:%02X:%02X/n",
			(unsigned char)addr.dest_addr[0],
			(unsigned char)addr.dest_addr[1],
			(unsigned char)addr.dest_addr[2],
			(unsigned char)addr.dest_addr[3],
			(unsigned char)addr.dest_addr[4],
		]]></description><category></category></item><item><title><![CDATA[cab包正常 控件无法下载]]></title><link>https://blog.youkuaiyun.com/zjcode/article/details/5754304</link><guid>https://blog.youkuaiyun.com/zjcode/article/details/5754304</guid><author>zjcode</author><pubDate>Thu, 22 Jul 2010 09:17:00 +0800</pubDate><description><![CDATA[<br />使用Tomcat服务器<br />cab包正常但是控件无法正常下载<br /> <br />这真是一个鸟问题，搞了我1天<br />结果 是因为 cab包文件名大小写引起的<br /> <br />这件事情证明 我就是一个悲剧]]></description><category></category></item><item><title><![CDATA[AS3自定义List]]></title><link>https://blog.youkuaiyun.com/zjcode/article/details/5744243</link><guid>https://blog.youkuaiyun.com/zjcode/article/details/5744243</guid><author>zjcode</author><pubDate>Sun, 18 Jul 2010 14:18:00 +0800</pubDate><description><![CDATA[<br />今天写了一个 List 用来处理一个人物显示列表的数据，其实用Array也是可以的，只是我无聊就再弄一个。<br />AS3中的对象都是引用，相当于C中的指针。<br />List由节点组成（Node），每一个节点有一个数据对象，两个指针对象。数据对象用于存放需要数据，两个指针对象分别标识他的前一个节点和后一个节点。<br />于是就有了下面这个类<br />package JWM_DataStruct
{
	public class CJWMNode
	{
		public funct]]></description><category></category></item><item><title><![CDATA[如何在一个工程中嵌入模块]]></title><link>https://blog.youkuaiyun.com/zjcode/article/details/5681874</link><guid>https://blog.youkuaiyun.com/zjcode/article/details/5681874</guid><author>zjcode</author><pubDate>Sun, 20 Jun 2010 16:36:00 +0800</pubDate><description><![CDATA[<br />在开发过程中我们经常会遇到这样一个问题：<br />一个游戏在接近尾声的时候突然来了一个需求，要在主游戏过程中嵌入一个小游戏，并且现有逻辑要使用这个小游戏的游戏结果。<br />这时候 我们应该怎么办？<br />最一般逻辑应该是，在需要触发小游戏的时候，嵌入整个小游戏的代码（或者是类或者是函数），然后在执行完游戏后使用返回结果。这样做容易造成代码不容易维护。<br />于是我想那就把这个小游戏单独先做成一个swf放在备用，在主游戏中预留一个用于嵌模块的虚函数，然后要嵌套的时候直接加载这个fla]]></description><category></category></item><item><title><![CDATA[使用AS3开发小游戏(2)]]></title><link>https://blog.youkuaiyun.com/zjcode/article/details/5671033</link><guid>https://blog.youkuaiyun.com/zjcode/article/details/5671033</guid><author>zjcode</author><pubDate>Mon, 14 Jun 2010 17:08:00 +0800</pubDate><description><![CDATA[这几天加班加的天昏地暗，今天下午继续。继续上一篇的话题，今天尝试可以把所有的资源打包在一个swf里。先把这个swf加载进来，然后使用的时候分离出自己想要用的某个对象。CJWMSPriteLoader加载CBINARYLoader加载好的资源， 接口GetChild(resName:String):Sprite。其实一下午就弄出了一句语句public function GetChild(resName:String):Sprite
		{
			return _resContent[resName];
]]></description><category></category></item><item><title><![CDATA[使用AS3开发小游戏(1)]]></title><link>https://blog.youkuaiyun.com/zjcode/article/details/5665397</link><guid>https://blog.youkuaiyun.com/zjcode/article/details/5665397</guid><author>zjcode</author><pubDate>Sat, 12 Jun 2010 00:06:00 +0800</pubDate><description><![CDATA[<br />着手开发一款网页游戏，类似于开心农场。<br />当作写作日记，我计划每天一小时，30天把客户端搞定。<br />第1天<br />今天第一天，我想的是需要需要一个精灵类。AS3提供Sprite就可以满足基本的需求了。<br />但是如果需要载入外部位图或者外部swf文件则有需要很多额外的代码。<br />那么就把这些操作封装起来吧<br />用到了一个殿堂之路上的小技巧，就是把函数当作一个参数传入另一个函数。可以理解为回调函数<br />//定义可以接收函数参数的函数
function Lo]]></description><category></category></item></channel></rss>