读书人

第一个实用程序有感:可怜的delphi,该

发布时间: 2012-02-14 19:19:19 作者: rapoo

第一个实用程序有感:可怜的delphi
可怜的帮助文档。我是初哥,自然很多东西无从入手,而Borland的帮助文档真的没有微软的到位。从两本厚厚的书本中找录信息真的相当的痛苦,还好有互联网在。

没有命名空间,要找到某种操作的方法常常变得象大海捞针,只有找到某一类别的具体的一个方法名时,情况才有所好转。

封装似乎有点随意了。找了很多使用线程的例子,都是相互uses,在线程的unit中使用主窗口的控件来返回线程状态的。不敢想象! 最后找到事件这个好点子,delphi才又给了我信心。

第一个实用程序600多K,已包含了互联网页面请求、本地数据保存、删除。运行速度快。我喜欢。如果有.net的文档式的代理提示,.net式的方法命名(不用先定义再写方法体)就更好了。

[解决办法]
每次接触一个新东西,总是有些难度,摸不着头,待有所了解了,可能看法就变了
[解决办法]
微软和Borland的编程习惯是不一样的,楼主将来会适应的。(现在一天用用Delphi,用用VC确实有时有点晕)
[解决办法]
命名空间是MS在.NET时代才推出的概念吧,如果你用DELPHI FOR .NET也一样。
例子只是给你参考的,仅仅能体现一个功能,甚至安全性都不能保证,这样的例子多了,比如Indy的DEMO、研华的DEMO。
线程访问VCL需要同步,而同步函数无法传递参数,很多时候是靠公共变量实现传递的。
回调函数无法使用类成员(当然,这个是编译器的问题,可以使用一些技巧实现),这些都需要你多读书。
高手不是一天出来的。

不要以为MS是王道,MS的程序员也做了很多龌龊代码,比如托盘拦的弹出菜单,根据MSDN例子书写出来的就会出现一个问题,就是弹出菜单后,如果不理会它,他会一直存在,这个BUG,MS很早就知道了,程序员仅仅在网上说了一句如何避免,而一直没去修正。还有很多函数组,每个小组自行开发一份,导致WINDOWS API很臃肿。
[解决办法]
楼主遇到的问题确实存在,相信CodeGear会改进的.
1.可怜的帮助文档。我是初哥,自然很多东西无从入手,而Borland的帮助文档真的没有微软的到位。从两本厚厚的书本中找录信息真的相当的痛苦,还好有互联网在。

Delphi2007的帮助一直在更新,其实Delphi7和以前的Delphi版本,帮助一直都是很齐整的, Delphi8换了新IDEhou,就没有认真更新过帮助,不能不说,以前的Borland有多滥,总是急功近利的想用新功能吸引老用户使用Delphi新版本,但这些基础工作,做得太龌龊了,用户不买账,CodeGear改善了很多,www.CodeGear.com你可以找到新版本帮助的更新.

2.没有命名空间,要找到某种操作的方法常常变得象大海捞针,只有找到某一类别的具体的一个方法名时,情况才有所好转

说实话,命名空间是从c++中引入的概念,.net进行了一些发展,Delphi.net也含有命名空间概念,这之前,Delphi的单元文件类似.net的命名空间,比如,你可以用 aunit.aobj.IsOk ,当然,命名空间似乎更灵活点,但我想这丝毫不会影响你做出优秀的程序.

3.封装似乎有点随意了。找了很多使用线程的例子,都是相互uses,在线程的unit中使用主窗口的控件来返回线程状态的。不敢想象! 最后找到事件这个好点子,delphi才又给了我信心。

不了解你对封装得好的界定是什么,我想书写范例的人不一定会很在意你注重的那些细节,毕竟范例程序只需要表现某一方面功能代码书写方法,侧重点不一定是你所说的封装性,不然你好好看看VCL的框架代码吧,历经这么多代的变革, VCL框架代码才算是最经典的,就算现在,他应该仍然是最优秀的框架代码吧.

4.第一个实用程序600多K,已包含了互联网页面请求、本地数据保存、删除。运行速度快。我喜欢。如果有.net的文档式的代理提示,.net式的方法命名(不用先定义再写方法体)就更好了

目前有很多程序(特别是商业软件产品)使用Delphi开发,一个最重要的原因就在于Delphi开发的程序是本机代码程序,当然效率会很好,开发出来的产品对环境要求很少,配置简单.

不知道你到底对.net了解多少,不过估计你也是只懂皮毛,两个平台用多了,比较起来会客观点,初学有点困难是正常的,如果你学习VC++,估计你的感慨会更大,因为相对而言,Delphi的门槛以及低很多了,但VC++能做的事情,Delphi大部分都能做,而且,开发效率和运行效率都不差,这就是Delphi.
[解决办法]
慢慢适应吧
[解决办法]
就是,学习就是一个过程呀!~~~
[解决办法]
1、可怜的帮助文档。我是初哥,自然很多东西无从入手,而Borland的帮助文档真的没有微软的到位。从两本厚厚的书本中找录信息真的相当的痛苦,还好有互联网在。

Delphi7的帮助文档还是不错的,小巧实用,Delphi2007的帮助文档也不错,另外,Delphi已经是一个非常成熟的语言,网上的文档演示代码数之不尽,你可以找一下“超级猛料”“大富翁离线论坛”,也可以到www.2ccc.com找到演示例子,电子书,三方控件等。总而言之,Delphi的资源其实非常丰富的。

2、没有命名空间,要找到某种操作的方法常常变得象大海捞针,只有找到某一类别的具体的一个方法名时,情况才有所好转。

有命名空间之后,这一切就变得简单了吗,我是.Net初学者也会为找一个需要的类而大费脑筋的。关键在于积累,查找,自己探索。

3、封装似乎有点随意了。找了很多使用线程的例子,都是相互uses,在线程的unit中使用主窗口的控件来返回线程状态的。不敢想象! 最后找到事件这个好点子,delphi才又给了我信心。

网上的Delphi例子很多非常烂的,这与中国的Delphi程序从事的领域有关,一般更关注于项目,而不关注于语言本身。可以看看Delphi自带的例子,或者自己读一下VCL的代码。我的经验是只相信自己,当然前提有足够的技术知识。

4、第一个实用程序600多K,已包含了互联网页面请求、本地数据保存、删除。运行速度快。我喜欢。如果有.net的文档式的代理提示,.net式的方法命名(不用先定义再写方法体)就更好了。

Delphi在这方面都有所加强了,方法命名只是一个习惯问题,习惯了就好。

[解决办法]
另外,Delphi并不可怜,可怜的是Delphi程序员。
[解决办法]
可怜的是Delphi程序员~这个才是实话啊

读书人网 >.NET

热点推荐