为什么要进行烦人的单元测试? (转)
为什么要进行烦人的单元测试? (转)[@more@]摘要 这篇文章主要阐述这样一个问题:为什么要进行烦人的单元测试?那些刚刚接触完全测试概念的开发人员常常遇到这个问题。我们这里将采用"反调论证"的方法来回答这个问题, 先提出一些反对单元测试的普遍论点, 然后我们会证明这些论点是站不住脚的。那些公开发表的文章和数据充分证实了单元测试的有效性。 IPL是一个独立的软件开发机构,成立于1979年,基地设在Bath。IPL在1988年通过了ISO9001认证,并在1991年通过TickIT认证。IPL开发并提供AdaTEST和Cantata等软件验证产品。AdaT
用Junit Framework编写单元测试 (转)
用Junit Framework编写单元测试 (转)[@more@]随着Refactoring技术和XP软件工程技术的广泛推广,单元测试的作用在软件工程中变得越来越重要,而一个简明易学、适用广泛、高效稳定的单元测试框架则对成功的实施单元测试有着至关重要的作用。在Java编程语句环境里,Junit framework是一个已经被多数java程序员采用和实证的优秀的测试框架,但是多数没有尝试Junit Framework的程序员在学习如何Junit Framework来编写适应自己开发项目的单元测试时,依然觉得有一定的难度,这可能是因为Junit随框架代码和实用工具附带的用户指南和文档的着重点在
Nt/2000/xp平台下的存储控制模型(Access Control Model) (转)
Nt/2000/xp平台下的存储控制模型(Access Control Model) (转)[@more@]Nt/2000/xp平台下的存储控制模型(Access Control Model) By leezy_2000 2003-7-16 15:59 XML:namespace prefix = o ns = "urn:schemas-microsoft-com:Office:office" /> (-) 鉴于在nt类操作系统下开发程序时有可能涉及操作注册表,读写文件和操控服务等内容,而为使这类程序在不同帐户下皆可正确运行就需要了解nt类操作系统的存储控制模型,所以才写这篇文章。这篇文章所涉及大部分内容可在msdn找到相关说明,小部分内容来自个人经验。错漏之
AspectJ实现设计模式(三)——工厂方法模式 (转)
AspectJ实现设计模式(三)——工厂方法模式 (转)[@more@] 本文将继续介绍使用ASPectJ实现设计模式之工厂方法模式,文章以农场园丁管理水果(读过Java与模式的读者会很熟悉它)例子的形式描述了工厂方法模式AspectJ版本的参考实现。XML:namespace prefix = o ns = "urn:schemas-microsoft-com:Office:office" /> 工厂方法模式根据产品的等级结构使用对应的工厂来创建特定的产品,它一般包括抽象工厂、具体工厂和抽象产品、具体产品,每一个特定工厂用于创建一个对应的产品。模式的简易UML图例如下 下面是使用AspectJ实
浅析J2EE与.NET平台优劣 (转)
浅析J2EE与.NET平台优劣 (转)[@more@]毫无疑问,程序员,软件开发商,企业IT经理一直都在密切的关注着J2EE和.NET的发展,但是选择一个在性能,价格,时间上满足他们需求的平台却并不是一件简单的事情。本文试图在技术上做一个简单的比较,希望对于他们做选择时有所帮助。 一.技术概观 在表现形式上,J2EE是一组规范,而.NET更象是一组产品。但它们的目的都是为了企业应用提供分布式的,高可靠性的解决方案.它们在架构上有着很多的相似之处,下表是一个简单对照: J2EE .net 通信协议 Remote Method Invocation over Internet InterOrb Prot
Java连接各种数据库的实例 (转)
Java连接各种数据库的实例 (转)[@more@]此文中的代码主要列出连接数据库的关键代码,其他访问数据库代码省略1、ORACLE8/8i/9i数据库(thin模式) Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); String url="JDBC:oracle:thin:@localhost:1521:orcl"; //orcl为数据库的SID String user="test"; String password="test"; Connection conn= DriverManager.getConnection(url,user,password); 2、DB2数据库 Class.forName("com.ibm.db2.jdbc.app.DB2Driver ").newInstance(); String url="jdbc:db2://localhost:5000/samp
Cg In Two Pages (转)
Cg In Two Pages (转)[@more@]Cg in Two Pages Mark J.KilgardNVIDIA CorporationAustin, TexasJanuary 16, 2003 游戏引擎开发网 龚敏敏 翻译 1. Cg用例 Cg是用于GPU编程的语言。Cg程序看起来非常像C程序。这儿有一个Cg顶点程序: void simpleTransform(float4 objectPosition : POSITION, float4 color : COLOR, float4 decalCoord : TEXCOORD0, float4 lightMapCoord : TEXCOORD1, out float4 clipPosition : POSITION, out float4 oColor : COLOR, out float4 oDecalCoord : TEXCOORD0, out float4 oLightMapCoord : TEXCOORD1, u
C++ Builder 初学问与答(五) (转)
C++ Builder 初学问与答(五) (转)[@more@]38)问:事件OnChange和OnSCOrll都可以描述滚动条的滚动事件,他们有什么区别吗? 答:事件OnChange和OnScorll是有区别的。只要属性Position的值发生改变,那么无论这个值是用户操作滚动条引起的还是通过程序修改的,都会产生OnChange事件。而OnScorll事件只有在用户操作滚动条时才发生。当用户操作滚动条时,首先发生OnScorll事件,然后OnChange事件才会发生。 下面我们共同看一个程序来加深对滚动条的理解。 在窗体上放置一个水平滚动条ScrollBar1和一个垂直滚动条ScrollBar2,以及一个记录
BCB中用Sender实现代码重用(纠正篇) (转)
BCB中用Sender实现代码重用(纠正篇) (转)[@more@](本文仅供CSDN使用,另授权CCRUN老妖转载)XML:namespace prefix = o ns = "urn:schemas-microsoft-com:Office:office" /> 面向对象的编程工具的特点之一就是要提高代码重用性(Reuse),宝兰的BCB当然可以实现这一功能。我们都知道,在BCB中,大部分程序代码都直接或间接的对应着一个事件,此程序称为事件处理句柄,它实际上就是一个过程。从应用程序的工程到窗口、组件和程序,BCB强调的是其开发过程中每一层次的重用性,可以充分利用已编写过的代码来减少工作量,更会使你的程序
(转贴)关于进程和线程 (转)
(转贴)关于进程和线程 (转)[@more@]笔者最近在开发基于Inte.NET网上的可视电话过程中碰到了这样一个问题,即在基于In ternet网上的可视电话系统中,同时要进行语音采集、语音编译码、图像采集、图像编译码、语音和图像码流的传输,所有这些工作,都要并行处理。特别是语音信号,如果进行图像编解码时间过长,语音信号得不到服务,通话就有间断;如果图像或语音处理时间过长,而不能及时传输码流数据,通信同样也会中断。这样就要求我们实现一种并行编程,在只有一个cpu的机器上,也就是要将该CPU时间按时一定的优先准则分配给各个事件,定期处理各事件
WebSphere5.0开发EJB,工具比较篇 (转)
WebSphere5.0开发EJB,工具比较篇 (转)[@more@] 本文仅为简略介绍XML:namespace prefix = o ns = "urn:schemas-microsoft-com:Office:office" /> 随着越来越多的程序员在其项目中使用 Enterprise JavaBean (EJB) 组件,对简化 EJB 开发的工具需求也日渐增长。本文将介绍现下流行的几种开发EJB工具。大家可以参照其各自的特点,结合自身开发环境进行开发工具的选择。本文以websphere v5.0 +db2为比较环境。 流行的EJB开发工具(ide)及组合有以下几种: 1. Eclipse 2.1+lomboz 2.1 (免费) 2. eclipse 2.1+Ant 1
关于.NET中WinForms里面的ListBox实现数据绑定的解决方法 (转)
关于.NET中WinForms里面的ListBox实现数据绑定的解决方法 (转)[@more@]在.NET中,WINDOW FORMS下面的LIST BOX控件在开发时,如果采用其本身的数据绑定,绑定完以后就不能更改ListBox的Items了.而实际开发中却经常会碰到要改变的情况,在这里我提供了一重方法.采用开发继承ListBox控件的自定义控件.然后在里面提供两个SortedList类的属性,一个可以存放ID,一个存放TEXT,这样就解决了上面说的问题!! 控件的代码如下: using System;using System.Collections;using System.ComponentModel;using System.Drawing;using System.Data;using System.
C++ Builder 初学问与答(四) (转)
C++ Builder 初学问与答(四) (转)[@more@]4.列表类组件 31)问:当我需要使用多个选项的时候,使用单选按钮或复选框来进行选择不是很恰当,因为在窗体上放置大量的按钮既不利于布局的美观,又会消耗大量的系统资源,C++Builder有什么解决办法吗? 答:可以使用列表框(ListBox、CheckListBox)或组合框(ComboBox)这两类最常用的列表组件。 32)问:列表框有那些主要属性? 答:列表组件ListBox在缺省情况下,只能进行单项选择,当属性Multiselected为True时,可以进行多项选择。这时你只要单击想要的选项,那么这些选项都会被选中。
POSIX线程详解(2) (转)
POSIX线程详解(2) (转)[@more@]Daniel Robbins总裁/CEO, Gentoo Technologies, Inc.2000 年 8 月 POSIX 线程是提高代码响应和性能的有力手段。在此三部分系列文章的第二篇中,Daniel Robbins 将说明,如何使用被称为互斥对象的灵巧小玩意,来保护线程代码中共享数据结构的完整性。 互斥我吧!在.NET/Develop/read_article.ASP?id=19676">前一篇文章中,谈到了会导致异常结果的线程代码。两个线程分别对同一个全局变量进行了二十次加一。变量的值最后应该是 40,但最终值却是 21。这是怎么回事呢?因为一个线程不停地“取消”了另一个
世界图景悖论 (转)
世界图景悖论 (转)[@more@]世界图景悖论 ――兼论艾舍尔《画廊》的哲学意义 吴国盛[1] (北京大学哲学系,北京 100871) 摘要:哲学应该去思考科学的世界描绘的条件和界限。世界作为存在者的整体是大全,但大全不能是一个存在者,否则就会出现悖论。世界图景作为一种公开场,不可能是完备的。如果它是完备的,就会出现悖论。艾舍尔的《画廊》是一幅完备但不一致的怪圈,它让不能同时在场者同时出场。怪圈提示着世界的荒谬性。科学越是无禁区、越是无边界,科学的世界图景就越是荒谬。 关键词:世界图景;悖论;艾舍尔 中图分
强类型、弱类型与动态类型 (转)
强类型、弱类型与动态类型 (转)[@more@]与一些传言不同,Python是一种强类型的语言,但它又是动态类型的。强类型、动态类型、弱类型,这是几个不同(而又经常混淆)的概念。 ———————————————— Typing: Strong vs. Weak, Static vs. Dynamicby AahzJuly 15, 2003 SummaryWith the advent of languages such as Python, the debate over typing has heated up again. Contrary to some claims (notably from Bruce Eckel), I believe Python has strong typing, and this article explains why. What is
联通放弃BREW,选择J2ME (转)
联通放弃BREW,选择J2ME (转)[@more@]我发现用Java做手机开发真的是一件很有“钱途”的工作。 —————————————————————————— Chinese mobile operator hedges bets with Java Is the key to DOWNLOADs going to be Java, BREW, something else - or 'D': all of the above? 2003-7-161317541.gif" border=0> China Unicom plans to distribute mobile phone downloads using a version of Java, a deal that could influence how other carriers sell games, ring tones or business application
关于无法创建aps.web项目的解决办法 (转)
关于无法创建aps.web项目的解决办法 (转)[@more@]1、当站点主目录没有创建应用程序: 通过FP扩展+虚拟目录的方式来建立webAPP,步骤如下: (1)、右击站点---所有任务--配置服务器扩展 (2)、建立虚拟目录***,并使其配置应用程序 (3)、在VS中建立WEB项目,名称也为*** (4)、通过通过FP扩展来建立WEB 2、当站点主目录创建应用程序: 第一种方法--FP扩展: (1)、右击站点---所有任务--配置服务器扩展 (2)、在VS中建立WEB项目,名称自己随便定 (3)、通过通过FP扩展来建立WEB 第
旅店管理系统用例流程分析 (转)
旅店管理系统用例流程分析 (转)[@more@]旅店管理系统用例流程分析 1、预定:前提条件:房间空闲 输入:输入客户基本信息:姓名,联系方式,房间号码,入住时间(也是自动过期时间),预定时间。 流程:客户要求预定(与系统无关)-->用户查询符合用户要求的房间 |-->符合条件的房间空闲(推荐其他房间)-->执行预定工作-->结束 |-->|-->符合条件的房间不空闲-->后备预定 | |-->不存在符合条件的房间(推荐的也不满意)-->结束 结果:房间占用 2、租用:前提条件:房屋
Jboss3.0-Tomat4.03下Ejb的开发之一(SessionBean的开发) (转)
Jboss3.0-Tomat4.03下Ejb的开发之一(SessionBean的开发) (转)[@more@] XML:namespace prefix = o ns = "urn:schemas-microsoft-com:Office:office" /> 从今天开始,给大家说说jboss3.0下的EJB的开发,首先给大家说的是一个很简单的SessionBean的开法,在此基础上我会慢慢的说在SessionBean如何连接数据库,如何发电子邮件,如何进行事务处理等等。 一、首先你的保证你的系统能正常的运行起动,对EJB有一定的了解。 二、现在所说的EJB都是标准的EJB没有用到Jboss所特有的特性等等。 1、在E: