delphi的位置是蛮尴尬的,人们都将其看成是rad工具。而已基本上拿vb,pb以及.net ,java之类的来与其作对比。 包括语言,数据访问,ide等等方面。
delphi 语言
声明和实现分开,这浪费的太多时间,rad工具嘛,就要节省时间
1. 本地变量无需在外面声明,太累了,一个循环变量,我非的隔老远路去过程头部声明一下,几行的小过程还可以,超过20行的,就很麻烦了
如
for var i as string:=1 to 10 do //这里最好用: ,可惜pascal 的赋值也用:=
2 . for in ,可用性太差
这个问题修正一下,发现有 TComponentEnumerator ,但文档居然都是什么都没说
3. 垃圾收集器,可以用一个编译指令来开启
4. unicode ,目前都是internet,都是传字符的,不支持unicode,没有办法面对互联网了
5. 单元问题,老早的兼容8.3文件制的单元命名体系。还有单元太多了,使用某单元的一个函数,大多需要借助帮助去查找,也应该引入只要使用unitname.这样就无需uses的机制。 将unit确实的视为namespace
ide
debug太差了,比起vb,.net 来,天上地下,出错信息基本上没什么用途,大多是凭经验调试
datamodule 中为一个dataset创建字段时,没有生成在该dataset下,而是直接生成在datamodule下,这真是个糟糕的决策
不知道是delphi 2007的设计器问题还是devexpress 的问题,在使用devexpress dxbar时,产生一些控件垃圾,比方说分隔条,itemlink,已经不存在的东西在dfm中还存在,在删除这些东西后,dxbar的工具条合并才正常,当然,等我发现这个问题后,已经是在这上面折腾了近5个小时了
delphi 语言
声明和实现分开,这浪费的太多时间,rad工具嘛,就要节省时间
1. 本地变量无需在外面声明,太累了,一个循环变量,我非的隔老远路去过程头部声明一下,几行的小过程还可以,超过20行的,就很麻烦了
如
for var i as string:=1 to 10 do //这里最好用: ,可惜pascal 的赋值也用:=
2 . for in ,可用性太差
这个问题修正一下,发现有 TComponentEnumerator ,但文档居然都是什么都没说
3. 垃圾收集器,可以用一个编译指令来开启
4. unicode ,目前都是internet,都是传字符的,不支持unicode,没有办法面对互联网了
5. 单元问题,老早的兼容8.3文件制的单元命名体系。还有单元太多了,使用某单元的一个函数,大多需要借助帮助去查找,也应该引入只要使用unitname.这样就无需uses的机制。 将unit确实的视为namespace
ide
debug太差了,比起vb,.net 来,天上地下,出错信息基本上没什么用途,大多是凭经验调试
datamodule 中为一个dataset创建字段时,没有生成在该dataset下,而是直接生成在datamodule下,这真是个糟糕的决策
不知道是delphi 2007的设计器问题还是devexpress 的问题,在使用devexpress dxbar时,产生一些控件垃圾,比方说分隔条,itemlink,已经不存在的东西在dfm中还存在,在删除这些东西后,dxbar的工具条合并才正常,当然,等我发现这个问题后,已经是在这上面折腾了近5个小时了