2005年09月22日

C# 3.0 インプレッション

今回のネタは各所で話題のC# 3.0。今更とか言わないで。決してTextBoxの記事を書くのが面倒になった訳じゃないですじょ?

一つ一つこれはどういう機能であるという解説はこちらなどにやって頂くことにして、私の雑感など。

えー、クエリ表現ですか、正直これには今のところ余り興味が湧きません。私にとってSQLが余り身近でないこと、データの検索などの重要度が大きくないことが原因でしょう。こういうのをフレームワークのみならず言語として取り込むというのには言語の複雑性を増すという点、また基本的に異文化であるSQL構文を含むことで言語の統一性が失われると言う点で抵抗が強いです。

型推論がある程度強力になったのはどうでしょう。暗黙の型付け、匿名型、暗黙の型付け配列。いずれもそのままでは書くのが楽になっても読むのに苦労を強いられそうです。匿名型は、プロパティしか定義できないっぽい? なんか微妙。

ラムダ表現、オブジェクト/コレクション初期化子は基本的にただのシンタックスシュガーですから抵抗無く受け入れられそうです。ラムダ表現にはちょっと慣れが必要でしょうけど。

拡張メソッドは賛否分かれそうですね。文としては自然になりますしあってもいい機能だとは思いますが、もうちょっと文法を変えた方が良いような気もします。obj.StaticMethodではどこで定義されているメソッドなのか極めて分かりづらいですからね。obj.Class.StaticMethodって感じでも良いような。んー、利点が無くなるかな……。

C# Version 3.0 Specification Semtember 2005を読んで気になったのは、サンプルが軒並みGenericsを使っていることです。私は、ListなどでGenericクラスを使用するのはまあそれなりに多いですが、しかしGenericsクラスやメソッドを定義することはほとんどありません。まあC#でまともにプログラミングを始めた身、C++のTemplateにはさっぱり疎いのでもっと激しく便利になるような使い方もあるのかも知れませんが。一般の利用者にとって、これらの拡張はそんなに魅力を感じないところが大きいかも知れません。



posted by Hongliang at 23:04| Comment(0) | TrackBack(0) | C# | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック

ここ(hongliang.seesaa.net)で公開しているものについて、利用は自由に行って頂いて構いません。改変、再頒布もお好きになさって下さい。利用に対しこちらが何かを要求することはありません。

ただし、公開するものを使用、または参考したことによって何らかの損害等が生じた場合でも、私はいかなる責任も負いません。

あ、こんなのに使ったってコメントを頂ければ嬉しいです。

×

この広告は180日以上新しい記事の投稿がないブログに表示されております。