InfoQ ホームページ ニュース F# 3.0 – LINQ + Type Providers = Information Rich Programming
F# 3.0 – LINQ + Type Providers = Information Rich Programming
2011年9月25日 読了時間 2 分
作者:
翻訳者
Microsoftは先日、 クエリ表現を通じたLINQサポートとさまざまなデータソースに対して簡潔なプログラミングが可能な組み込みプロバイダタイププロバイダシステムなどの新しい機能を追加したF# 3.0の開発者プレビュー版のリリースをアナウンスした
F# 3.0の機能であるインフォメーションリッチプログラミング(Information Rich Programming)は、データベース、Webサービス、Webデータフィードとデータブローカーに対してプログラムから直接アクセスできる。現在、これをするために以下のように記述することができる。
[<Generate>]
type Northwind = ODataService<"http://services.odata.org/Northwind/Northwind.svc/">
let db = Northwind.GetDataContext()query { for cat in db.Categories do
select (cat.CategoryID, cat.CategoryName, cat.Description) }
|> Seq.iter (fun (id, name, description) –>
printfn "ID: %d\nCategory: %s\nDescription: %s\n" id name description)
すでに、一般的なデータソースにアクセスするためのタイププロバイダが存在しており、ODataサービス、データベース接続、データベーススキーマ、Entityデータモデルによるデータ仕様、Webサービス、リソースファイルにアクセスすることができる。また、タイプシステムは、オープンでプラグイン可能なため、開発者やサードパーティーが作成したプロバイダを組み込むことができる。
その他の新しい機能
- 自動実装プロパティは、ストアする処理を記述しなくてもプロパティを実装することができる。
- パラメータヘルプとインテリセンスの拡張
- 変換オペレータと計算オペレータを含む、NULL許容型のライブラリサポート
- 国際単位 (SI)の計測タイプの単位。以前は、F# PowerPackに含まれていたが、F#のコアライブラリに昇格した。
さらなる詳細は、MSDNドキュメントを読んで欲しい。また、CodePlexのF# Sample packをダウンロードして、それらの機能解説を確認することができる。
F#は、 命令型とオブジェクト指向プログラミングも包含する関数指向プログラミングであり、.NET Frameworkをターゲットにしたマルチパラダイムプログラム言語である。
-
関連記事
-
関連スポンサーコンテンツ
特集コンテンツ一覧
InfoQ ニュースレター
毎週火曜日に前週のまとめコンテンツをお送りいたします。(日本語版は不定期リリース)25万人のシニアな開発者コミュニティーにぜひご参加ください。 サンプルを見る