DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
lazarus/fpc/Free Pascal
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: szliyu112358
今日帖子: 60
在线用户: 21
导航: 论坛 -> DELPHI技术 斑竹:liumazi,sephil  
作者:
男 lsuper (lsuper) ★☆☆☆☆ -
盒子活跃会员
2019/4/11 20:30:24
标题:
Delphi 空工程大小对比(VCL;x86/x64;release) 浏览:2281
加入我的收藏
楼主: 搬运自 b4a 上看到的最新版:Delphi empty projects (VCL; x86/x64; release) size comparison
此帖子包含附件:
PNG 图像
大小:45.4K
----------------------------------------------
-
作者:
男 smartdata (Jack) ★☆☆☆☆ -
普通会员
2019/4/11 20:38:04
1楼: 壳越来越重哦
----------------------------------------------
==========
作者:
男 zyp1984 (小李他妈的飞刀) ★☆☆☆☆ -
普通会员
2019/4/11 22:04:30
2楼: 没什么意义。怎么不说9几年时候的网速是多慢,硬盘和内存多小,价格是多贵,现在的网速是多快,硬盘内存的容量多大,价格多便宜。看下手机上的微信和QQ安装上是多大。
----------------------------------------------
山外青山楼外楼,能人背后有能人弄..
作者:
男 cuit_xiong (熊猫) ★☆☆☆☆ -
普通会员
2019/4/11 23:01:34
3楼: 为什么会越来越大,具体多了什么,需要的是这些信息!
----------------------------------------------
-
作者:
男 lsuper (lsuper) ★☆☆☆☆ -
盒子活跃会员
2019/4/12 0:28:37
4楼: 如楼上所说,不是具体大多少占空间等(当然,有参考意义,如要支持 x64 在乎大小肯定选 XE2 等),而是为啥大,这个趋势:

1、如 XE5 大幅下降,应该没少重构(之前 FMX 引入、跨平台开发没隔离好,对 RTL 的冲击),能不被市场推着走,在还技术债?
2、如 10.1 和 10.2 差不多,估计 VCL 变化不大,而 10.3 又上去了,配合 http://blog.qdac.cc/?p=4981 的结果,主要是 dpi 的改进?
3、以上,纯属个人片面分析 ~
----------------------------------------------
-
作者:
男 feiyanm (feiyanm) ▲▲▲▲▲ -
普通会员
2019/4/12 6:11:04
5楼: 还在用D7。。。。
别的就不说了,说多了伤肝,对身体不好,特别是对我这种半截入土的老年人。。。。
----------------------------------------------
Delphi威武!千秋万代,一统江湖!Delphi威武!千秋万代,一统江湖!Delphi威武!千秋万代,一统江湖!Delphi威武!千秋万代,一统江湖!Delphi威武!千秋万代,一统江湖!Delphi威武!千秋万代,一统江湖!Delphi威武!千秋万代,一统江湖!我去WC吐一会儿去!
作者:
男 go_on (go_on) ★☆☆☆☆ -
盒子活跃会员
2019/4/12 8:35:01
6楼: 正式的项目应该差别不大,空工程其实没有意义
----------------------------------------------
www.eudn.cn工程师联合开发网
作者:
男 zwjchinazwj (蒲石) ★☆☆☆☆ -
普通会员
2019/4/12 10:20:46
7楼: 用几个第三方组件,比如DevExpress,1个exe轻松 几十M

最大的消耗: RTTI

进入 \Program Files (x86)\Embarcadero\Studio\20.0\bin 目录,
按大小顺序排个序
ld-linux.exe  71M
bcc32c.exe    32M
cpp32c.exe    32M
bcc32x.exe    32M
...
超过1M的文件有 144个

进入 Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE
按大小顺序排个序
msenv.dll   9M
msvbide.dll  5M
...
超过1M的文件有 17个

大小并不是不能优化的,Embarcadero只是在随意的挥霍,与某些人的观点一样。
现在磁盘,内存大了,那就随意浪费呗。
----------------------------------------------
-
作者:
男 dlfsystem (dlfsystem) ★☆☆☆☆ -
盒子活跃会员
2019/4/12 11:07:29
8楼: 就EXE 项目,使用bpl,可以缩小2/3.
----------------------------------------------
-
作者:
男 wr960204 (武稀松) ★☆☆☆☆ -
盒子活跃会员
2019/4/12 11:52:11
9楼: 一方面是RTTI造成的体积剧增,另一方面是泛型库代码造成的。
从Delphi2010加入新的RTTI后体积就开始增大
加入泛型后跳跃了一个新的台阶。
而在Classes引用了泛型单元Generics.collections后,那体积就别说多酸爽了。

我自己重写的RTL类库,主要是SysUtils,Classes这两个单元,用来开发体积小的工程。基本编译出来只有200-300KB,去掉RTTI后会再小一点点。

所以体积最大的贡献就是引入泛型单元的classes单元。
----------------------------------------------
武稀松http://www.raysoftware.cn
作者:
男 zwjchinazwj (蒲石) ★☆☆☆☆ -
普通会员
2019/4/12 14:14:46
10楼: 受教了。我之前发现引入classes导致大小膨胀厉害。但一直以为RTTI是主因。

也发现classes中把之前的TList,都改成了TList<T>,曾经提建议,
不要做这样的修改,不要让classes依赖Generics.collections,
因为TList改成TList<T>,根本毫无意义。

但没鸟用。

泛型的唯一作用:浪费体积,少写点代码。
我觉得应该规定:泛型只能给咱们(业务开发)用,RTL不得使用泛型。
----------------------------------------------
-
作者:
男 smartdata (Jack) ★☆☆☆☆ -
普通会员
2019/4/12 22:28:00
11楼: 体积大小还是有意义的,同样的功能算法以前不到1MB大小,现在高出10倍左右,好处没体现。
网络速度再快,内存和硬盘再海量,能够小还是小。
与MS无可比较性,因为很多runtime东西都在WINDOWS里面了。
----------------------------------------------
==========
作者:
男 wr960204 (武稀松) ★☆☆☆☆ -
盒子活跃会员
2019/4/12 23:01:52
12楼: @zwjchinazwj (蒲石)
我觉得应该规定:泛型只能给咱们(业务开发)用,RTL不得使用泛型。

你这句话是对的,比如VC的类库MFC,ATL,stl模板库都没有在里面用。STL基本就是给我们做业务的用的。如果MSVCRT这种RTL库都用了STL我觉得是不合理的。
同理,VCL,FMX自身我觉得不该用泛型,泛型是给开发者外挂使用的。
----------------------------------------------
武稀松http://www.raysoftware.cn
作者:
男 zgc123 (zgc123) ★☆☆☆☆ -
盒子活跃会员
2019/4/13 12:11:59
13楼: 越来越大,麻烦。
----------------------------------------------
欢迎访问我的网站:http://zhenggc.cc/http://zhenggc.com
作者:
男 sxqwhxq (步惊云) ★☆☆☆☆ -
普通会员
2019/4/13 13:49:39
14楼: 几M与十几M,在运行效率差别上只有毫秒级,对人的主观感受来说,没有意义。而对程序效率而言,因为网络传输的是数据,而exe/app处理的是也数据,这个不会因目标代码变大而影响传输和处理效率,或是影响是非常轻微的。
delphi目标代码的增量是非常有限的,即是,你以release方式编译,体量达到一个限度后,例如12M(我观察,除引入dev外,dev是非常另类的)你引入的库、第三方组件再增加,同类的或不同的组件,目标程序也不会再增加体量。
另外,lsuper大师难得出来,大家别光忙着写代码,赶快出来捧场,活跃一下盒子的氛围。
----------------------------------------------
-
作者:
男 zwjchinazwj (蒲石) ★☆☆☆☆ -
普通会员
2019/4/14 10:43:43
15楼: 就是因为“几M与十几M,在运行效率差别上只有毫秒级,对人的主观感受来说,没有意义”
所以,要特别花点时间,把classes.pas 中
FItems: TList; 换成 FItems: TList<TCollectionItem>; 
然后让exe臃肿,最后来证明“大”更好?
除此以外,由此不用写强制转换,给写classes.pas的程序员带来的一点快感。

我不知道这样洗地的言论有什么积极意义。
----------------------------------------------
-
作者:
男 szlbz (秋风) ★☆☆☆☆ -
盒子活跃会员
2019/4/14 10:48:14
16楼: @wr960204 (武稀松) 武大侠,能提供你重写的SysUtils,Classes这两个单元给我们用吗?
----------------------------------------------
-
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v3.0.1 版权所有 页面执行953.125毫秒 RSS