<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[zzusimon的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/zzusimon</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; zzusimon]]></copyright><item><title><![CDATA[pandas: powerful Python data analysis toolkit]]></title><link>https://blog.youkuaiyun.com/zzusimon/article/details/78336820</link><guid>https://blog.youkuaiyun.com/zzusimon/article/details/78336820</guid><author>zzusimon</author><pubDate>Wed, 25 Oct 2017 08:35:26 +0800</pubDate><description><![CDATA[http://pandas.pydata.org/pandas-docs/stable/]]></description><category></category></item><item><title><![CDATA[python 中的 __call__方法在实际环境中的应用]]></title><link>https://blog.youkuaiyun.com/zzusimon/article/details/78330896</link><guid>https://blog.youkuaiyun.com/zzusimon/article/details/78330896</guid><author>zzusimon</author><pubDate>Tue, 24 Oct 2017 16:14:20 +0800</pubDate><description><![CDATA[用一句话描述是，

Python 的 __call__ 方法可以让类的实例具有类似于函数的行为，通常用于定义和初始化一些带有上下文的函数。

既然说是妙处，那不得不提及 Python 世界中的那几个经典实现了。

一个例子来源于 bottle 框架源码的 cached_property（被我改动了一些细节，但用法基本是一样的），为了在逻辑上构成一个封闭的整体，我们把一个实例当作函数来使]]></description><category></category></item><item><title><![CDATA[jenkins执行shell读不到环境变量问题]]></title><link>https://blog.youkuaiyun.com/zzusimon/article/details/57080337</link><guid>https://blog.youkuaiyun.com/zzusimon/article/details/57080337</guid><author>zzusimon</author><pubDate>Sat, 25 Feb 2017 14:30:34 +0800</pubDate><description><![CDATA[从jenkins远程执行shell源码分析系列中，了解到jenkins执行shell的原理。在使用jenkins过程中，发现执行shell读取不到/etc/profile以及用户下.bash_profile设置的环境变量。

环境:Red Hat Enterprise 5.5

根据jenkins-core项目Shell.java的buildCommandLine方法


   pu]]></description><category></category></item><item><title><![CDATA[2016技术]]></title><link>https://blog.youkuaiyun.com/zzusimon/article/details/54728528</link><guid>https://blog.youkuaiyun.com/zzusimon/article/details/54728528</guid><author>zzusimon</author><pubDate>Wed, 25 Jan 2017 10:05:31 +0800</pubDate><description><![CDATA[1. MVP 架构
2. 浮窗组件
3.NodeJs 全栈开发
4.App web化发展]]></description><category></category></item><item><title><![CDATA[CreateThread和_beginthread区别及使用]]></title><link>https://blog.youkuaiyun.com/zzusimon/article/details/52972771</link><guid>https://blog.youkuaiyun.com/zzusimon/article/details/52972771</guid><author>zzusimon</author><pubDate>Sun, 30 Oct 2016 16:42:35 +0800</pubDate><description><![CDATA[CreateThread 是一个Win 32API 函数,_beginthread 是一个CRT(C Run-Time)函数，他们都是实现多线城的创建的函数，而且他们拥有相同的使用方法,相同的参数列表。

但是他们有什么区别呢？

一般来说，从使用角度是没有多大的区别的，CRT函数中除了signal()函数不能在CreateThread创建的线城中使用外，其他的CRT函数都可一正常使用，但]]></description><category></category></item><item><title><![CDATA[Explicit——谨慎定义隐式类型转换函数]]></title><link>https://blog.youkuaiyun.com/zzusimon/article/details/52972293</link><guid>https://blog.youkuaiyun.com/zzusimon/article/details/52972293</guid><author>zzusimon</author><pubDate>Sun, 30 Oct 2016 15:34:35 +0800</pubDate><description><![CDATA[在查找别的资料的时候，看到这么一个关键字，以前都没见过觉得挺有用，

于是找来More Effective C++进行学习总结一下。

一 隐式转换

　　C＋＋编译器能够在两种数据类型之间进行隐式转换（implicit conversions），它继承了C语言的转换方法。

隐式把char——>int和从short——>double。转换可能会导致数据的丢失。

自定义的类型]]></description><category></category></item><item><title><![CDATA[面试总结]]></title><link>https://blog.youkuaiyun.com/zzusimon/article/details/51509908</link><guid>https://blog.youkuaiyun.com/zzusimon/article/details/51509908</guid><author>zzusimon</author><pubDate>Thu, 26 May 2016 19:27:18 +0800</pubDate><description><![CDATA[1.为什么不能在析构函数中抛异常
如果析构函数抛异常，导致c++调用termiate, 直接终止，导致内存泄露]]></description><category></category></item><item><title><![CDATA[设计模式六大原则]]></title><link>https://blog.youkuaiyun.com/zzusimon/article/details/51393244</link><guid>https://blog.youkuaiyun.com/zzusimon/article/details/51393244</guid><author>zzusimon</author><pubDate>Fri, 13 May 2016 10:35:04 +0800</pubDate><description><![CDATA[目录：

设计模式六大原则（1）：单一职责原则

设计模式六大原则（2）：里氏替换原则

设计模式六大原则（3）：依赖倒置原则

设计模式六大原则（4）：接口隔离原则

设计模式六大原则（5）：迪米特法则

设计模式六大原则（6）：开闭原则

设计模式六大原则（1）：单一职责原则

定义：不要存在多于一个导致类变更的原因。通俗的说，即一个类只负责一项职责。 
问题]]></description><category></category></item><item><title><![CDATA[架构设计是多进程还是多线程]]></title><link>https://blog.youkuaiyun.com/zzusimon/article/details/51319865</link><guid>https://blog.youkuaiyun.com/zzusimon/article/details/51319865</guid><author>zzusimon</author><pubDate>Thu, 05 May 2016 08:54:49 +0800</pubDate><description><![CDATA[就像莎士比亚的“To be, or not to be, that is the question”始终困扰着哈姆雷特，对于“进程还是线程？”这个问题，也经常困扰着那些进行软件架构设计的家伙。所以今天打算聊一下我对这个问题的体会。假如你还搞不清楚线程和进程的区别，请先找本操作系统原理的书好好拜读一下，再回来看帖。

　　由于这个问题很容易引发口水战，事先声明如下：多进程和多线程，无法一概而论地]]></description><category></category></item><item><title><![CDATA[软件打包工具]]></title><link>https://blog.youkuaiyun.com/zzusimon/article/details/8228624</link><guid>https://blog.youkuaiyun.com/zzusimon/article/details/8228624</guid><author>zzusimon</author><pubDate>Tue, 27 Nov 2012 09:53:00 +0800</pubDate><description><![CDATA[InstallAnywhere]]></description><category></category></item><item><title><![CDATA[CSemaphore/CMutex/CCriticalSection/CEvent区别]]></title><link>https://blog.youkuaiyun.com/zzusimon/article/details/7490388</link><guid>https://blog.youkuaiyun.com/zzusimon/article/details/7490388</guid><author>zzusimon</author><pubDate>Mon, 23 Apr 2012 17:10:00 +0800</pubDate><description><![CDATA[临界区：临界区是一种最简单的同步对象，它只可以在同一进程内部使用。它的作用是保证只有一个线程可以申请到该对象。 
         互斥量与临界区的作用非常相似，但互斥量是可以命名的，也就是说它可以跨越进程使用。所以创建互斥量需要的资源更多，所以如果只为了在进程内部是用的话使用临界区会带来速度上的优势并能够减少资源占用量。因为互斥量是跨进程的互斥量一旦被创建，就可以通过名字打开它。]]></description><category></category></item><item><title><![CDATA[大话设计原则]]></title><link>https://blog.youkuaiyun.com/zzusimon/article/details/7466368</link><guid>https://blog.youkuaiyun.com/zzusimon/article/details/7466368</guid><author>zzusimon</author><pubDate>Mon, 16 Apr 2012 16:49:16 +0800</pubDate><description><![CDATA[最近几年来，人们踊跃的提倡和使用设计模式，其根本原因就是为了实现代码的复用性，增加代码的可维护性。设计模式的实现遵循了一些原则，从而达到代码的复用性及增加可维护性的目的，设计模式对理解面向对象的三大特征有很好的启发，不看设计模式，很难深层地体会到面向对象开发带来的好处 。在刚开始学习中，很难做到将这些模式融汇贯通，所以这个需要我们在编码前多思考，等想充分了，在开始实践编码。下面是设计模式应当遵循的]]></description><category></category></item><item><title><![CDATA[设计原则]]></title><link>https://blog.youkuaiyun.com/zzusimon/article/details/7445743</link><guid>https://blog.youkuaiyun.com/zzusimon/article/details/7445743</guid><author>zzusimon</author><pubDate>Tue, 10 Apr 2012 15:45:11 +0800</pubDate><description><![CDATA[1..单一职责原则SRP(Single Responsibility Principle)
2.开放-关闭原则OCP(Open-Closed Principle)
3.里氏替换原则LSP(Liskov Substitution Principle)
4.依赖倒置原则DIP(Dependence Inversion Principle)
5.接口隔离原则ISP(Interface Segre]]></description><category></category></item><item><title><![CDATA[软件设计之“开-闭”原则]]></title><link>https://blog.youkuaiyun.com/zzusimon/article/details/7443978</link><guid>https://blog.youkuaiyun.com/zzusimon/article/details/7443978</guid><author>zzusimon</author><pubDate>Tue, 10 Apr 2012 09:50:13 +0800</pubDate><description><![CDATA[什么是“开-闭”原则？

一个软件实体应当对扩展开放，对修改关闭；这个原则说的是，在设计一个模块的时候，应当使这个模块可以在不被修改的前提下扩展。换言之，应当可以在不必修改源代码的情况下改变这个模式的行为。
 
       满足“开-闭”原则的设计的优越性：
1.       通过扩展已有的软件系统，可以提供新的行为，以满足对软件的需求，使变化中的软件系统有一定的适应性和灵活性。
2]]></description><category></category></item><item><title><![CDATA[学习JNI]]></title><link>https://blog.youkuaiyun.com/zzusimon/article/details/7429377</link><guid>https://blog.youkuaiyun.com/zzusimon/article/details/7429377</guid><author>zzusimon</author><pubDate>Thu, 05 Apr 2012 17:20:20 +0800</pubDate><description><![CDATA[JNI是Java Native Interface的缩写，中文为JAVA本地调用。从Java1.1开始，Java Native Interface(JNI)标准成为java平台的一部分，它允许Java代码和其他语言写的代码进行交互。JNI一开始是为了本地已编译语言，尤其是C和C++而设计的，但是它并不妨碍你使用其他语言，只要调用约定受支持就可以了]]></description><category></category></item><item><title><![CDATA[C++类库介绍]]></title><link>https://blog.youkuaiyun.com/zzusimon/article/details/7262154</link><guid>https://blog.youkuaiyun.com/zzusimon/article/details/7262154</guid><author>zzusimon</author><pubDate>Wed, 15 Feb 2012 18:02:19 +0800</pubDate><description><![CDATA[在C++中，库的地位是非常高的。C++之父 Bjarne Stroustrup先生多次表示了设计库来扩充功能要好过设计更多的语法的言论。现实中，C++的库门类繁多，解决的问题也是极其广泛，库从轻量级到重量级的都有。不少都是让人眼界大开，亦或是望而生叹的思维杰作。由于库的数量非常庞大，而且限于笔者水平，其中很多并不了解。所以文中所提的一些库都是比较著名的大型库。

标准库

标准库中提供了C]]></description><category></category></item><item><title><![CDATA[面试总结]]></title><link>https://blog.youkuaiyun.com/zzusimon/article/details/6911007</link><guid>https://blog.youkuaiyun.com/zzusimon/article/details/6911007</guid><author>zzusimon</author><pubDate>Thu, 27 Oct 2011 15:57:00 +0800</pubDate><description><![CDATA[1.静态成员函数可否用const修饰
不可以，原因：静态成员函数转换时没有this指针，因而const不知道修饰谁
2.静态成员函数可否为虚函数
3.构造函数可否为虚函数
4.析构函数可否为虚函数
5.指针和引用的区别，引用可否引用NULL
6.怎样消除继承的二义性
a.继承性二义性问题，可以通过虚拟继承解决
b.非继承性二义性问题，可以通过指定父类名称来解决
1.继承性二义性问]]></description><category></category></item><item><title><![CDATA[python 通过adodb访问sql server数据库]]></title><link>https://blog.youkuaiyun.com/zzusimon/article/details/6821539</link><guid>https://blog.youkuaiyun.com/zzusimon/article/details/6821539</guid><author>zzusimon</author><pubDate>Mon, 26 Sep 2011 11:07:33 +0800</pubDate><description><![CDATA[最近项目中，要用python书写脚本访问sql server数据库，由于公司的安装包中只用wincom库，尽量不使用其它的开发库，因而只能使用adodb访问sql server数据库，但是遍寻网上没有找到相关的资料，只好自己研究，并将结果发布于网上，希望能对需要的人有所帮助~~~]]></description><category></category></item><item><title><![CDATA[项目经理问：为什么总是只有我在加班 – 挂包袱现象]]></title><link>https://blog.youkuaiyun.com/zzusimon/article/details/6804480</link><guid>https://blog.youkuaiyun.com/zzusimon/article/details/6804480</guid><author>zzusimon</author><pubDate>Fri, 23 Sep 2011 16:47:16 +0800</pubDate><description><![CDATA[原创文章，如有转载，请注明出处：http://blog.youkuaiyun.com/yihui823/article/details/6769887
现象
最近和一位项目经理聊天。这位PM之前是个技术大牛，没什么搞不定的东西，而且做事也认真，也卖命。领导没理由不提拔这种牛人。所以，这个]]></description><category></category></item><item><title><![CDATA[静态变量和静态函数]]></title><link>https://blog.youkuaiyun.com/zzusimon/article/details/6752491</link><guid>https://blog.youkuaiyun.com/zzusimon/article/details/6752491</guid><author>zzusimon</author><pubDate>Tue, 06 Sep 2011 10:27:50 +0800</pubDate><description><![CDATA[数据成员可以分静态变量、非静态变量两种. 
静态成员：静态类中的成员加入static修饰符,即是静态成员.可以直接使用类名+静态成员名访问此静态成员,因为静态成员存在于内存,非静态成员需要实例化才会分配内存,所以静态成员不能访问非静态的成员..因为静态成员存在于内存,所以非静态]]></description><category></category></item></channel></rss>