0

一些开源语言没有像memcache等所有数据库的所有驱动程序。所以我想为它们编写一个驱动程序。但我不知道该怎么做。我从哪里开始?

4

1 回答 1

1

有几种方法可以做到这一点。

  1. 使用语言的外部函数接口来包装现有的驱动程序。这通常是最快的方法,但生成的 API 可能很笨拙或不自然,而且很难利用语言特性。

  2. 阅读 memcached 协议规范并编写驱动程序。这适用于简单的协议,并允许您编写使用该语言所有特性的驱动程序(例如异步 IO)。但是,如果协议不简单,这可能需要大量工作。

  3. 将现有驱动程序移植到目标语言。如果存在用于类似语言的现有驱动程序(例如,Java 和 C# 是类似的),这将很有效。

我按照它们的常见程度对这些技术进行了粗略的排序。有时,随着语言的成熟和社区的发展,FFI 库(#1)被本机库(#2)取代。

于 2013-11-05T05:42:08.670 回答