误区1:在项目的需求分析阶段,开发方与客户方在各种的问题的基本轮廓上达成一致即可,具体细节可以在以后填充。因为无论开始时有多么细致, 以后对需求的修改几乎是必然的。分析:这是一种非常危险的思想。实际上许多软件项目失败的最主要的原因就是需求阶段对问题的描述不够细致,导致后来预算超出或者时间 进度达不到要求。正确的做法是:在项目需求分析阶段,双方必须全面地尽可能细致地讨论项目的应用背景、功能要求、性能要求、操作界面 要求、与其他软件的接口要求,以及对项目进行评估的各种评价标准。并且,在需求分析结束以后,双方还要建立可以直接联系的渠道,以尽 早地对需求变动问题进行沟通。
误区2:软件项目的需...
----目前在许多学习软件、游戏光盘中,经常会看到各种 图形显示技巧,凭着图形的移动、交错、雨滴状、百页窗、积木堆叠等显现方式,使画面变得更为生动活泼,更 能吸引观众。本文将探讨如何在Delphi中实现各种图形显示技巧。 基本原理 ----在Delphi中,实现一副图象的显示是非常简单的,只要在Form中定义一个TImage组件,设置其picture属性,然后选 择任何有效的.ICO、.BMP、.EMF或.WMF文件,进行Load,所选文 件就显示在TImage组件中了。但这只是直接将图形显示在窗体中,毫无技巧可言。为了使图形显示具有别具一格的效果,可以按下列步骤实现: ...
用 Delphi 编写 VxD 设备驱动程序(转)关键词:Delphi控件杂项作者:Emil Biserov(dinfo@mail.primorye.ru)(Russion) 英语翻译:Vitaly Zayko(zayko@vitsoftware.com) 中文翻译改编:Riceball(teditor@mailroom.com) 前言 用 Delphi 3.0 编写 VxD 设备驱动程序,在Delphi 3 下编译通过,Delphi 2 下没有测试,Delphi 4 建立的 Object 文件 M$ Linker 5.12.8181 不能识别,这里使用的汇编器是M$的Macro A...
procedure CheckResult(b: Boolean);begin if not b then Raise Exception.Create(SysErrorMessage(GetLastError));end;function RunDOS(const Prog, CommandLine,Dir: String;var ExitCode:DWORD): String;var HRead,HWrite:THandle; StartInfo:TStartupInfo; ProceInfo:TProcessInformation; b:Boolean; sa:T...
Procedure GetWordCellStr;var
WordApp: TWordApplication; WordDoc: TWordDocument; DocInx,FileName,CfCversions,IsReadOnly,AddToRctFiles,PswDocument, PswTemplate,Revert,WPswDocument,WPswTemplate,FormatWord: OleVariant; i,iRow,iCol: Integer; myCell: Cell; myRow: Row;begin Memo....
忠告一
布尔型变量的赋值操作应该是直接的。
忠告二
避免使用嵌套的if/then/if语句,而用and来代替。
不用担心后面的判断语句会超前执行。Project|Options|Compiler|Syntax Options|Complete Boolean eval选项通常是关闭的(除非你选定这个项),这保证了执行顺序不会颠倒。
对象的布尔型属性(Boolean),自动被初始化为False (0);整型变量(Integer),自动被初始化为 0;字符串(String),自动被初始化为空字符串。
忠告三
判断布尔型变量的值时,无需用"=True"或者"=False"这样的语...
1、什么是常见的对表和字段的名字约束?
SQL Server 2000下的表和字段名称有1到128字节的限制,并且遵循用于标识的规则。第一个字母必须是如下的一种:· Unicode Standard 2.0中规定的字母。Unicode对字母的定义包括:拉丁字母,从A到Z,除了来自其他语言的字母之外。· 下划线(_),at符号(@),或者数字符号(#)在SQL Server中以这些符号作为标识符的开始具有特殊的含义。一个以at符号(@)开头的标识符表示一个本地的变量或者参数。一个以数字符号(#)开头的标识符代表一个临时表或者过程。一个以两个数字符号(##)开头的标识符标识的是一个全局临时...
面向对象数据库系统(OODBS)是数据库技术与面向对象程序设计方法想结合的产物。
对于OO数据模型和面向对象数据库系统的研究主要体现在: 研究以关系数据库和SQL为基础的扩展关系模型;以面向对象的程序设计语言为基础,研究持久的程序设计语言,支持OO模型;建立新的面向对象数据库系统, 支持OO数据模型。
面向对象程序设计方法是一种支持模块化设计和软件重用的实际可行的编程方法。程序设计的主要活动集中在建立对象和对象之间的联系(或通信)上,面向对象程序设计的基本思想是封装和可扩展性。
面向对象数据库系统支持面向对象数据模型(OO模型)。即是一个持久的、可共享的对象库的存储和管理者;而一个...
shellexecute(handle,'open','explorer.exe','http://www.baidu.com',nil,SW_SHOW);
构造线程:
constructor create(createsuspended:boolean)
其中:createsuspended=true 构造但不唤醒
false 构造的同时即唤醒
也可以用如下方法
inheried create(createsuspended:boolean)
挂起线程:
suspend
(把线程挂起的次数加一)
唤醒线程:
resume
(注意:注意这个属性是把线程挂起的次数减一,当次数为0 时,即唤醒。也就是说,线程挂起多少次,唤醒也需要多少次...
多线程的基本概念:
win 98/nt/2000/xp 是个多任务操作系统,也就是:一个进程可以划分为多个线程,每个线程轮流占用cpu 运行时间和资源,或者说,把cpu 时间划成片,每个片分给不同的线程,这样,每个线程轮流的“挂起”和“唤醒”,由于时间片很小,给人的感觉是同时运行的。
多线程带来如下好处:
1)避免瓶颈;
2)并行操作;
3)提高效率;
在多线程中,通过优先级管理,可以使重要的程序优先操作,提高了任务管理的灵活性。
另一方面,在多cpu 系统中,可以把不同的线程在不同的cpu 中执行,真正做到同时处理多任务(win 98...
后台程序访问数据库的方式从BDE改为ADO,原因是由于业务量的增加,通过DBE不论是向数据库写入数据还是从数据库中读出数据的速度都变得无法忍受,ADO在数据库访问速度方面比BDE要快的多了。
但是ADO控件的线程不安全性(事实上这种不安全性是来自Microsoft ADO Library,所以在其他开发工具中也存在同样的问题)因此在使用多线程ADO编程时应该注意一下问题:
第一: 要保证每个线程都拥有自己的会话。
第二: 作为客户端程序应该尽可能的减少与数据库服务器的连接数。
第三: 在退出线程之前确保释放所有的资源。
参考文献:
1,李维《Delphi 5.X ADO/MT...
1. Delphi中 Integer、Double、Int64、LongInt、Byte、Word、LongWord占多少字节?
Shortint(8位)、Smallint(16位)、Longint(32位)、Integer(32位)、Int64(64位)是有符号数;而Byte(8位)、Word(16位)、Longword(32位)是无符号数, Double(64)
2. lstr: String; 求出SizeOf(lstr)=?
4;
3. 将Int64值赋给Double类型会不会造成数据丢失?
自我感觉应该不会有问题吧! Int64和...
1, 需求是什么
简单的说: 软件需求就是系统必须完成的事和必须具备的品质。进一步的说,软件需求包括功能需求,非功能需求和设计约束等3方面的内容。
(1)业务需求
业务需求只反映组织机构或客户对系统,产品高层次的目标需求,通常问题定义本身就是业务需求。
(2)用户需求
描述用户使用产品必须要完成什么任务,如何完成需求。通常是在问题定义的基础上进行用户访谈,调查,对用户的场景进行整理,从而建立从用户角度出发的需求。
(3)系统需求
系统需求是从系统的角度说明软件的需求,包括用特性说明的功能需求,质量属性。以及其他非功能需求,设计约束等。
(4)功能需求
功能...