微软研究院最近发布了一份白皮书用来阐述 Type Providers 如何协助 F#来接入和处理海量的网络数据。
Type Providers 旨在解决哪些问题呢?
- 网络上各种来源的不同类型的数据
- 通过特定语言编写的解析层(自动生成或手动编写)来访问上述数据源
Type Providers 提供了一种将现有数据类型转换成可供 F#开发人员使用的数据类型或元数据类型的标准机制。一旦为某种数据类型或模式创建了 provider 以后就不需要再单独为它们创建 provider 了。数据的结构在连接到数据源后的设计时间(假定已与数据源相连),由 Type Provider 推导出。
在 F#的编译器中亦可访问到这些数据,并支持诸如智能提示和内联文档等 IDE 特性,并且在内联文档中,可以按需查看数据源中数据模式和元数据等信息。
与LINQ 结合,这使得F#直接操作各种数据源时额外有效。大家可以通过观看 Joe Pamer 的演讲来了解更多详情。
F# 3.0 与.NET framework 4.5 一同发布。并且微软最近宣布了它的代码发布——可以通过该代码来查看功能特性的实现细节。
查看英文原文: F# Type Providers – Why And How
感谢贾国清对本文的审校。
给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。
评论