- 博客(14)
- 收藏
- 关注
原创 异常安全
当设计一个类时,如何保证这个类是异常安全的。 有三个层次的保证。 1. 基本保证 (Basic Guarantee)当异常发生时,程序不会有资源泄漏。 2. 高级保证 (Strong Guarantee) 当异常发生时,程序的状态不会被破坏 3. 禁止抛出保证 (NoThrow Guarantee)在任何环境下都不会抛出异常。
2009-05-11 10:09:00 113
原创 Python源代码中使用中文编码
当在Python源代码中使用中文字符串时,如果没有指定编码格式,运行会出错,必须在第一行或者第二行加上# coding=gbk 才能够正常运行。参见:http://www.python.org/dev/peps/pep-0263/
2008-01-06 16:18:00 1671
原创 Pointcut的学习(三)
根据连接点的所属,Pointcut有以下几种类型: Method execution execution(MethodSignature) Method Call call(MethodSignature)Method execution捕捉的连接点是在被执行的函数体
2005-07-17 22:35:00 953
原创 什么叫产生式编程
来自《产生式编程》一书:产生式编程(Generative Programming, GP)是一种软件工程范型,基础是对系统族建模。产生式编程的目标针对的是系统族,而不是一个或者一种的系统,它是基于通用的产生式领域模型之上的。产生式领域模型是由三部分组成的:指定的系统族成员的方法;可以组装出每个成员的实现组件;成员说明书和一个已有成员的配置知识映射关系。
2005-07-12 23:32:00 1377
原创 Pointcut的学习(二)
信号(signature)语法在一个Pointcut的定义中,Signature是用来定义在哪里捕捉连接点的。如下面的例子红色部分:public pointcutlogNew():execution(*.new())&& !within(Log);Signature可以是一个具体的定义,如 publicpointcut logNew():executio
2005-07-12 23:22:00 875
原创 Pointcut的学习(一)
Pointcut: 在程序中捕捉或者标识连接点(joint point)的,捕捉到连接点后,可以在连接点执行的前面或者后面设置一些规则。在AspectJ中,Pointcut可以是匿名的也可以是命名的。匿名的pointcut附着在使用它们的地方,如一个Advice或者另一个pointcut的定义中。如: before():execution(* *.*(..)){
2005-07-08 10:23:00 825
原创 在eclispe中使用Boost
我的机器操作系统是WinXPHome Edition,安装了cygwin,和gcc 3.3,最近下载了Eclipse 3.1和CDT 2.0。还下载了boost 1.32.0版本,用VC6.0编译了boost类库,安装在c:/Boost。这次想看看在Eclipse中boost能否被使用。在Eclispe中创建了一个managed make c++ project,token_test,
2005-07-08 10:21:00 1018
原创 增强写作能力
今天看了一篇文章,是写给计算机系的大学生的,但对于向我这种已经出来这么多年的程序员来说也是有帮助的,里面提到一点,就是“增强写作能力”。的确,写作能力十分重要,无论是技术文档,设计文档还是需求分析等等,虽然有一定的格式可以参考,但有没有好的表达能力,能否将问题描述清楚,涉众能否正确理解你所写的内容都是很关键的。另外,写作也能够让你对被写的知识更加了解,你需要对这些内容进行总结,重新划分知识的结构,
2005-07-06 16:51:00 820
原创 AspectJ中的around advice的学习
Around:将连接点的执行旁路到Around()的语句中,如果要在执行Around()后继续执行连接点的内容,需要在Around()中加入关键字processed()如下面代码所示:我们有一个类HelloTest,HelloTest中有一个方法sayHello(),功能只是在trace窗口打印一个“Hello AspectJ!”的语句。 public class
2005-07-06 16:50:00 1211
原创 py2exe的使用
没有仔细研究py2exe的代码,只是根据提供的例子代码来编译一个python程序,该程序使用了pywin,4suite和一些python的核心模块。主程序应用了win32serviceutil.ServiceFramework,我需要把这个应用程序编译成一个windows服务,可以发布到没有python环境的机器上。我建立了一个setup.py程序,基本框架参考py2exe中的例程。cla
2005-07-06 16:49:00 1536
原创 ACDT安装小结
<html xmlns:o="urn:schemas-microsoft-com:office:office"xmlns:w="urn:schemas-microsoft-com:office:word"xmlns="http://www.w3.org/TR/REC-html40">ACDT是在eclipse中开发基于AspectC++的程序的插件,是Asp
2004-11-11 16:27:00 913 1
原创 在win32系统下编译publicVoiceXML
publicVoiceXML是一个开源代码的VoiceXML解析器,是基于VXI的一个项目,下载很久了,但一直没有编译过它。昨天下午使用MSVC进行编译。publicVoiceXML需要的外部库较多: gnu_regex (在Libwww中需要) http://people.delphiforums.com/gjc/gnu_regex.exe zlib (在libw
2004-10-29 09:08:00 1919
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人