Delphi怎么编写大程序

Delphi如何编写大程序?
Delphi如何编写大程序?包括被处理的数据模块大,也包括代码总量大?
似乎看不到这方面的资料!



------解决方案--------------------
第一个没看明白,
第二个:我的做法是
建两个UNIT定义CONST常量,另一个放公共自定函数,一个DATAMODULE放公共不可视组件
建一些基类窗口让其它窗体继承。
------解决方案--------------------
何为大程序?
吃大内存?占大CPU?或是编译出来的文件大?

程序达到預期效果,界面漂亮,运行速度快,代码优良就是好软件,管他大还是小!!!
------解决方案--------------------
大内存使用?这个我还真没考虑过,实际上以前使用内存时,我都尽量不占用太多内存,至于操作系统怎么使用虚拟内存技术来倒腾那可观的2G,应该不是偶来考虑的问题了
代码总量大,尽量把代码进行拆分重用是个好习惯,当然不拆分也是可以的,不过维护起来会显得杂乱无章,而且会被后来维护者骂的狗血淋头
至于还牵涉到form等等,可以使用包,dll公用模块等技术来实现

------解决方案--------------------
1、被处理的数据模块大
是需要将大量数据调入内存?程序运行环境内存有限制?
在PC上,现在一般情况下都很少考虑内存空间的问题了,有时往往还会牺牲空间还换取性能的提升

2、代码总量大
显然将所有代码放在一个单元中从可读可维护方面来讲是很不提倡的
因为不了解具体情况,只能笼统的讲要合理的划分了
有一个参考的数字就是一个unit以不超过1000行为宜,当然不绝对
------解决方案--------------------
楼上都是大牛
------解决方案--------------------
mvc或者mvp开发模式很适用于大型程序开发
------解决方案--------------------
我的感觉:还是要把“面向对象”用好,delphi的各种组件的实现就是这个意思,抽象出类来,分别在不同的unit里实现。

说错了别见笑,呵呵
------解决方案--------------------
什么是面向对象编程?
用面向对象的思想编程 就可由繁化简,由大变小
关键是要做好系统设计了 在学校里学的软件工程也可用的上了

------解决方案--------------------
探讨

引用:
1、被处理的数据模块大
是需要将大量数据调入内存?程序运行环境内存有限制?
在PC上,现在一般情况下都很少考虑内存空间的问题了,有时往往还会牺牲空间还换取性能的提升

2、代码总量大
显然将所有代码放在一个单元中从可读可维护方面来讲是很不提倡的
因为不了解具体情况,只能笼统的讲要合理的划分了
有一个参考的数字就是一个unit以不超过1……

------解决方案--------------------
关注,大的工程10M长。主要是多FORM(模块),如果使用DLL模块,主程序会小很多。
------解决方案--------------------
界面 <-> 访问需求 <-> 代码库 <-> 文档

form所在单元可以考虑很少代码,
比如:
因图形必须画在你看到的form上,故作图语句(如画点画线...)自然也就放在与此form相关的unit中,

我会考虑,把绘图部分,放到一起(也可以根据需要分几个单元,这样就需要一个总控制单元),
form的绘图需求,可以这样使用
Form1.OnPaine(Sender);
xxxUnit.MyDraw(Self.Canvas, R : Rect ,以及其他一些参数);
end;
具体实现就在xxxUnit中完成,SaveToFile,LoadFromFile等文档操作同样如此,
这样作好处多多哈,
比如你要打印当前图,只需要把Canvas替换成打印机的Canvas,其实就是替换DC,就完成把当前的图输出到打印机的作用了。
------解决方案--------------------
把大程序切成小块开发。
切的方式有竖着按功能分,横着按层分。
另外数据流图和数据结构也有用。
------解决方案--------------------
分子, 原子多的话, 你的模型是否考虑放置在文件中, 需要看哪个部分的时候在导入那一块呢. 毕竟, 同时展现的不会是很多吧
------解决方案--------------------
建议你去看看directX9.绘图都是渲染几百万个粒子。你肯定是方法不对
------解决方案--------------------
这只是架构设计的问题 不是语言的问题
------解决方案--------------------
探讨
关注,大的工程10M长。主要是多FORM(模块),如果使用DLL模块,主程序会小很多。

------解决方案--------------------
我曾经有个程序因为业务复杂4万行代码,后来改了构架后主程序改成2000行了。
将插件定义为XML+Lua+SQL的方式,插件4万行,不过结构非常清晰。
------解决方案--------------------
我那个马甲不能上传图片。
其实我当初就是看了XML一个小时,Lua一个小时。
没用到高深的地方,只是非常简单的功能。

向你那样的写法最后能把自己写死的。
XML构架图,不知道理解的对不对:
][/img]


------解决方案--------------------