在平台和产品合作开发的模式下,产品并不拥有全部代码。因此有些产品的问题,需要和平台代码联调,如果环境搭配对了,解决问题往往是比较容易的事情。但是没有调试环境下,仅仅静态查看代码就常常陷入僵局。
因此,环境安装是平台和产品程序员顺利高效合作的重要部分。这里面最为重要的是一键运行——拿来代码,打开工程,按Run——然后该干嘛干嘛。
但是现在的情况并不乐观。局部来自于delphi本身的设计不合理,也来自于我们对这个环境建立的过程不够重视。常常会遇到的问题是:
1. 需要目录来输出dcu文件和exe文件。包括 dcu/bin目录
2. 需要产品内的公用库。如函数库、类库、控件(常常还需要安装)。
3. 拿过来的文件和目录就是不完整的。
4. 需要自己建立数据库的连接。自己手工建立数据库,甚至是插入和修改数据。
5. 有些问题需要外部设备和硬件:比如软件狗
因应上面的问题,尽管说的是一键运行,但是涉及到的问题方方面面,其实是一个综合问题。我们考虑到以Want 工具为中心来解决它们:
1. want加入task来创建需要的目录
2. want加入task,在指定的仓库内export目录到当前工程的lib内
3. 因为源代码,库都在一个大目录内,因此需要解决问题时,一个目录一起丢过来就是,不存在文件不全的问题
4. 连接提出问题的程序员的中间件是一个简单的方法。更好的方法是提供问题的testcase,就只是运行这个testcase 就可以定位问题。
5. 提供设备的Mock:比如软件狗的Mock来模拟软件狗的运行。
仅仅是为了一键运行,在delphi内也是颇费思量,更不要说在delphi在平台模块化方案设计上经历的痛苦——我们花费了一周时间讨论,也没有很好的方法——现在明明有些是业务性的东西,也必须在平台内修改。因此最终的方法,还是迁移到dotnet上来。
引入want也要求目录结构更加规范合理,我们现在的做法通常是这样的:
src, 源代码
Lib,库
Test ,测试用例
Tool\want :want工具
Want.xml: want 任务文件
少用第三方控件。
采用svn export(subversion的导出工具)的方法,好处很多,包括“lib目录在svn内没有副本”,“ 开发者也不能改lib”,尽管“ 在客户端可能会有多个lib的副本”,不过现在这个缺点局限于客户端,而不会影响服务器。
这篇文章涉及到以下知识点:
1. TDD(Test-driven development 测试驱动开发),我们的书架上就有。以后随着trd和项目组合作的逐步深入,tdd的概念会越来越重要,进而成为每个程序员的必备工具箱之一。Testcase,Mock都是TDD的重要概念。
2. Delphi的自动化工具——Want 工具的使用。
3. Testcase中的Mock的概念。
分享到:
相关推荐
本文将重点讨论如何在Delphi集成环境中利用OpenCV进行开发,以及一个特别针对Delphi 2010到XE8优化的OpenCV组件——"Delphi-OpenCV-master"。 首先,"Delphi-OpenCV-master"是专为Delphi 2010至XE8版本设计的OpenCV...
这是一套是一套非常完善的图形系统,适合在电力、煤炭、化工、仿真、网络、自动化等各种工业监控软件以及图形建模、图形管理、图形分析、中小型GIS系统、工作流、中文表格、表单、工程绘图等软件项目中应用。...
本项目“Delphi-OpenCV-master 2.4.13”是将OpenCV库与Delphi集成的实践案例,适用于Delphi 2010到10.3的开发环境。Delphi是一款强大的面向对象的 Pascal 编程工具,常用于桌面应用开发,与OpenCV的结合使得开发者...
这个"delphi-modbus-tcp-indy.7z"压缩包包含的是用Delphi编写的Modbus TCP组件,它基于两个不同的Indy版本——Indy 9和Indy 10。 Indy(Internet Direct)是Delphi和C++Builder中的一套网络库,提供了一组跨平台的...
- "Delphi":这是一种流行的面向对象的编程语言和集成开发环境,由Embarcadero Technologies开发,常用于创建Windows桌面应用程序。 - "modbustcp":这是Modbus协议的一个变种,用于通过TCP/IP协议进行通信,适合于...
《数据库应用技术——Delphi应用系统开发》是蒋丽华教授的一部电子教案,主要针对的是使用Delphi进行数据库应用系统开发的相关知识。Delphi,作为一款强大的RAD(快速应用程序开发)工具,以其高效的编译器和丰富的...
第一章可能涉及了Delphi编程的基础知识,包括集成开发环境(IDE)的介绍,Delphi语言的基本语法,以及面向对象编程的概念。读者可以在这里了解到如何创建项目,设置控件,以及编写简单的程序。 第二章可能是关于...
Delphi是一款著名的集成开发环境(IDE),主要用于编写Object Pascal语言的应用程序。在Delphi 10.4版本中,为了满足不同用户的需求,官方提供了多种语言界面,包括中文和英文。然而,对于某些用户来说,可能需要在...
2. **Delphi编程环境**:Delphi是一款基于Object Pascal语言的集成开发环境(IDE),以其高效、快速编译和优秀的Windows应用程序开发能力著称。在课程中,将详细介绍Delphi的界面、工程管理、组件库以及代码编写环境...
《DevExpressVCL 一键编译安装工具》是针对DELPHI开发者的一款高效实用的软件,它简化了在DELPHI开发环境中备份和还原的过程。在重装系统或更换开发环境时,这款工具能够帮助用户快速地备份和恢复已安装的DevExpress...
Delphi 12_Delphi 12.1 中英文一键切换助手(含操作说明)- 适用 29.0.51961.7529.rar
总的来说,"Delphi 12.1 中英文一键切换助手" 是一个非常实用的工具,它使得开发者能够更加自如地在不同语言环境下工作,提高编程效率,同时也降低了语言障碍带来的困扰。对于那些需要在 Delphi 12.1 中频繁切换界面...
它以其高效的编译器、直观的集成开发环境(IDE)和丰富的组件库而闻名。在 Delphi 11.0 中,开发者可能会遇到需要在中文界面和英文界面之间切换的需求,以便更好地理解和使用各种功能或解决特定问题。为此,"Delphi ...
而Delphi ONVIF组件则为Delphi开发者提供了实现这一功能的工具,使得在Delphi环境下开发符合ONVIF协议的软件变得更为便捷。本篇文章将深入探讨Delphi ONVIF组件的核心概念、功能特性以及实际应用。 一、Delphi ...
### Delphi 6 集成开发环境:深入解析与应用 #### Delphi 6 集成开发环境概述 Delphi 6是一款由Borland公司开发的强大且高效的集成开发环境(IDE),专为Windows应用程序开发而设计。它基于Object Pascal语言,提供...
Delphi IDE 中英文一键切换助手是针对Delphi开发环境设计的一个实用工具,它的主要功能在于帮助用户快速地在中文界面和英文界面之间进行切换。这对于那些习惯于英文版Delphi IDE但又需要阅读中文文档或教程,或者...
《Delphi IDE 中英文一键切换助手 - D10up1 - 共享版》是一款专为Delphi开发环境设计的实用工具,旨在帮助中国开发者更便捷地在中文和英文界面之间进行切换。这款共享版软件体现了对中国开发者的关怀,旨在解决他们...
Delphi IDE,全名Borland Delphi,是一款基于Object Pascal编程语言的集成开发环境(IDE),由Embarcadero Technologies公司开发并维护。这款强大的工具广泛用于创建Windows桌面应用程序,以其高效的编译器和直观的...
这门课程涵盖了从基础到进阶的多个章节,包括但不限于Delphi的集成开发环境(IDE)介绍、对象 Pascal 编程语言的基础、VCL组件库的应用、数据库接口的使用以及用户界面(UI)设计等关键知识点。 1. Delphi IDE简介:...
Delphi 11.3.2 中英文一键切换助手(含操作说明)- 适用 28.0.48361.3236.rar