搜索到与相关的文章
编程技术

设计模式介绍之六:工厂模式(factory)的巧妙

本文展示了实际项目中使用到的一个工厂模式实现,在向系统中添加新类型时,只需要在新类型的实现文件这一处做改动,将新增类型对应用程序代码的干扰降到了最低。这个工厂实现的基本思想是:继承自同一个接口的新类型,通过一个函数来创建其对象,利用C++中类的构造函数会被自动调用这一特性,在新类型的实现文件中定义一个静态的(辅助)类对象,在该辅助类的构造函数中,向工厂单例注册新类型的创建函数。先看下代码,然后我们一一来解释。下面是命令接口CommandObject的头文件

系统 2019-08-29 22:35:19 2189

编程技术

怎样成为优秀的软件模型设计者?

我们期待自己成为一个优秀的软件模型设计者,但是,要怎样做,又从哪里开始呢?将下列原则应用到你的软件工程中,你会获得立杆见影的成果。1.人远比技术重要你开发软件是为了供别人使用,没有人使用的软件只是没有意义的数据的集合而已。许多在软件方面很有成就的行家在他们事业的初期却表现平平,因为他们那时侯将主要精力都集中在技术上。显然,构件(components),EJB(EnterpriseJavaBeans)和代理(agent)是很有趣的东西。但是对于用户来说,如果

系统 2019-08-29 22:34:33 2189

编程技术

骗我招数越来越多了。一不小心就上当了。

前几天收到一个电话说是我的一个老朋友。现在在外面遇到了不能说的麻烦要我借点钱给他。我问要多少。他说有多少要多少。我说我有30行不。他说最好给他买个电话卡。因为他的电话卡上面快没钱了。过一会又打过来问给他的电话卡上面存钱了么。我这时想起来我那个朋友会说英语。于是我就用英语和他说。他就挂电话了:)今天又收到一个这样的EMAIL:当时还以为自己又发财了呢?上网一查好多人收到过类似的EMAIL:忽然想起来一句名言:Littleknowlegeisdangerous

系统 2019-08-29 22:27:55 2189

编程技术

自己实在是解决不了了,内存溢出的问题

请各位朋友帮忙看下,困扰好久了.情况是这样:有一个小项目,用spring+ibatis+tomcat的,上传图片是用jspsmart,部署到虚拟主机上的时候上传一张图片就发生oom的现象,图片大小仅仅70k左右,在本机测试的时候和另一个已部署的项目都是采用同样的方式都不会出现这样的问题,而且可以上传10几张图片.部分异常如下:1.java.lang.OutOfMemoryError:Javaheapspaceatjava.io.Win32FileSyste

系统 2019-08-12 09:29:57 2189

编程技术

:>/dev/null 2>&1 的作用

shell中可能经常能看到:>/dev/null2>&1命令的结果可以通过%>的形式来定义输出/dev/null代表空设备文件>代表重定向到哪里,例如:echo"123">/home/123.txt1表示stdout标准输出,系统默认值是1,所以">/dev/null"等同于"1>/dev/null"2表示stderr标准错误&表示等同于的意思,2>&1,表示2的输出重定向等同于1那么本文标题的语句:1>/dev/null首先表示标准输出重定向到空设备文件

系统 2019-08-12 09:29:56 2189

Python

搞清楚 Python traceback的具体使用方法

1.Python中的异常栈跟踪之前在做Java的时候,异常对象默认就包含stacktrace相关的信息,通过异常对象的相关方法printStackTrace()和getStackTrace()等方法就可以取到异常栈信息,能打印到log辅助调试或者做一些别的事情。但是到了Python,在2.x中,异常对象可以是任何对象,经常看到很多代码是直接raise一个字符串出来,因此就不能像Java那样方便的获取异常栈了,因为异常对象和异常栈是分开的。而多数Python

系统 2019-09-27 17:56:45 2188

Python

跟老齐学Python之玩转字符串(2)更新篇

上一章中已经讲到连接两个字符串的一种方法。复习一下:复制代码代码如下:>>>a='py'>>>b='thon'>>>a+b'python'既然这是一种方法,言外之意,还有另外一种方法。连接字符串的方法2在说方法2之前,先说明一下什么是占位符,此前在讲解变量(参数)的时候,提到了占位符,这里对占位符做一个比较严格的定义:来自百度百科的定义:顾名思义,占位符就是先占住一个固定的位置,等着你再往里面添加内容的符号。根据这个定义,在python里面规定了一些占位符

系统 2019-09-27 17:56:04 2188

Python

Python HTTP客户端自定义Cookie实现实例

PythonHTTP客户端自定义Cookie实现实例几乎所有脚本语言都提供了方便的HTTP客户端处理的功能,Python也不例外,使用urllib和urllib2可以很方便地进行HTTPGET和POST等各种操作。并且还允许以类似于插件的形式加入一些handler,来定制request和response,比如代理的支持和cookie的支持都是这样添加进来的。具体来说,通过如下方式构造一个opener:opener=urllib2.build_opener(

系统 2019-09-27 17:55:51 2188

Python

MAC OS中多版本python管理

Mac中python多版本切换管理step1.$sudovi~/.bashrcstep2.命令行中输入aliaspython2=’/…/Versions/2.x/bin/python2.x’aliaspython3=’/…/Versions/3.x/bin/python3.x’Step3.刷新$source~/.bashrcStep4、验证在终端输入python2即代表是Python2.x版本,输入python3即代表是Python3.x版本。Mac设置默

系统 2019-09-27 17:55:04 2188