Wiki:Delphi第三方TCP / IP组件库的最新技术 [英] Wiki: Current state of the art of Delphi 3rd party TCP/IP components libraries
问题描述
我正在寻找对于正面和负面的两个方面,开发服务器和客户端软件。
我将在做一个需要一个坚如磐石的TCP / IP层的项目,所以对我来说这是一个重要的方面:)
为了成为一个社区维基,我正在寻找更广泛的答案,而不仅仅是坚实。因此,例如有关功能宽度的信息也是值得赞赏的。
我将在答案中找到相关方面更新问题,以获得wiki条目对这些图书馆有一个平衡的概述。
例如,看到我的答案,我以前的经验与Indy
我对异常处理和反对在indy中,尽管我习惯了它,但仍然感觉有些不自然。
现在我开发Delphi 2007(非Unicode)和XE(Unicode) ,所以我正在考虑的图书馆至少应该支持两个Delphi版本。
编辑:我以前对Indy经验的总结以及意见(感谢尤金,Marjan )
(请更新当前的Indy最新技术):
Pro:
- 附带Delphi
- 成熟
- 开发社区
- 开源,所以大量的眼睛仔细检查这些来源
- 在源代码中载入一系列有价值的评论文档
- OpenSSL支持
- 支持广泛的Delphi版本(包括2007和XE) / li>
- 广泛的协议选择
Con:
- 与Delphi一起运送的版本并不总是最稳定的;通常需要从源代码中获得一个稳定的构建。
- (同时)现在在Delphi中的很多重复的代码(但是Indy需要与旧的Delphi版本兼容)
- 并不是所有的TCP / IP组件都是最新的(例如,POP3客户端组件不支持一些基本的POP3命令)
- 版本互操作性是一个痛苦:从一个Indy版本升级到另一个可能是非常耗时的
- 我对Indy的异常处理和防冻非常矛盾,尽管我被使用对它来说,它仍然感觉有些不自然。
- 破坏更改是在构建更新之间进行的; ifdefs需要适应那些
- 发布状态如果有任何一个,没有RC长时间,得到中继可以使您的本地副本不稳定
I've not been doing bare metal TCP/IP for about 18 months, so I wonder what the current state of the art is.
I'm looking for both positive and negative aspects, with development of both server and client software.
I will be doing a project that needs a rock-solid TCP/IP layer, so for me that is an important aspect :)
For this to become a community wiki, I'm looking for broader answers than just 'rock solid'. So for instance information about the feature-width is also appreciated.
I'll be updating the question with relevant aspects found in the answers in order to get a wiki entry that has a balanced overview of those libraries.
For example, see my answer below with my past experience with Indy I'm ambivalent on the exception handling and anti-freeze in Indy, though I got used to it, it still felt somewhat unnatural.
Right now I develop in both Delphi 2007 (non Unicode) and XE (Unicode), so the libraries I'm considering should support at least those two Delphi versions.
Edit: Summary of my past experience with Indy, and the comments (thanks Eugene, Marjan) (please update with the current Indy state of the art):
Pro:
- ships with Delphi
- mature
- development community
- open source so lots of eyes scrutinizing those sources
- a truckload of valuable comment documentation in the source code
- OpenSSL support
- supports a broad set of Delphi versions (including 2007 and XE)
- wide choice of protocols
Con:
- the version shipping with Delphi was not always the most stable one; download from the sources was usually required to get a stable build
- (in the mean time) lots of duplication of code that now is in Delphi (but Indy requires for compatibility with older Delphi versions)
- not all TCP/IP components were up-to-date (for instance, back then the POP3 client component did not support some basic POP3 commands)
- version interoperability was a pain: upgrading from one Indy version to another could be very time consuming
- I'm ambivalent on the exception handling and anti-freeze in Indy, though I got used to it, it still felt somewhat unnatural.
- breaking changes are made between build updates; ifdefs required to accommodate those
- Unclear release status if any at all, no RCs for a long while, getting trunk can make your local copy unstable
这篇关于Wiki:Delphi第三方TCP / IP组件库的最新技术的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!