Skip to content

Commit

Permalink
Merge pull request #193 from BeBraveBeCurious/patch-2
Browse files Browse the repository at this point in the history
Update ch4.md
  • Loading branch information
yingang committed Mar 20, 2022
2 parents 4667d28 + f42b868 commit 2220729
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion ch4.md
Original file line number Diff line number Diff line change
Expand Up @@ -290,7 +290,7 @@ Avro 的关键思想是 Writer 模式和 Reader 模式不必是相同的 - 他

#### 代码生成和动态类型的语言

Thrift 和 Protobuf 依赖于代码生成:在定义了模式之后,可以使用你选择的编程语言生成实现此模式的代码。这在 Java、C++ 或 C# 等静态类型语言中很有用,因为它允许将高效的内存中结构用于解码的数据,并且在编写访问数据结构的程序时允许在 IDE 中进行类型检查和自动完成
Thrift 和 Protobuf 依赖于代码生成:在定义了模式之后,可以使用你选择的编程语言生成实现此模式的代码。这在 Java、C++ 或 C# 等静态类型语言中很有用,因为它允许将高效的内存中结构用于解码的数据,并且在编写访问数据结构的程序时允许在 IDE 中进行类型检查和自动补全

在动态类型编程语言(如 JavaScript、Ruby 或 Python)中,生成代码没有太多意义,因为没有编译时类型检查器来满足。代码生成在这些语言中经常被忽视,因为它们避免了显式的编译步骤。而且,对于动态生成的模式(例如从数据库表生成的 Avro 模式),代码生成对获取数据是一个不必要的障碍。

Expand Down

0 comments on commit 2220729

Please sign in to comment.