Wiki:Delphi第三方TCP / IP组件库的最新技术 [英] Wiki: Current state of the art of Delphi 3rd party TCP/IP components libraries

查看:243
本文介绍了Wiki:Delphi第三方TCP / IP组件库的最新技术的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我没有做裸机TCP / IP约18个月,所以我不知道现在的艺术状况是什么。



我正在寻找对于正面和负面的两个方面,开发服务器和客户端软件。

我将在做一个需要一个坚如磐石的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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆