J#でもつかってろよ
おお、まさにJ#でこの話終わりだなww
コンテキストキーワードよりもはるかに気持ち悪いのは,
インターフェイスとか抜きで特定の名前(引数)のメソッドの呼び出しに変換される機能
foreach→GetEnumerator()とかコレクション初期化子→Add(引数任意)とかクエリ式とか
C#コンテキストキーワードって
get set partial where yield value と後はC#3.0で導入されたクエリキーワードぐらいだよな。
>忘れちゃうキーワード
explicit implicit stackalloc unchecked volatile あたりは時々忘れそうになる。
add/removeとかも<コンテキストキーワード
そろそろ次スレ立てたほうがいい?970くらいでいい?
>>954 java5にも同じのあるじゃないか
Iterable/Iteratorでfor ( : ) をお忘れではないか
>>958 C#のはダックタイピング的なのでちょっと違う。
多分
>>954はその事を知ってて書いてる。
Whereという名前のメソッドがあればクエリ式のwhere使えるんだよね
961 :
デフォルトの名無しさん:2008/06/18(水) 22:53:33
>>955 ええ!それは忘れないだろ。
それ、使わないならC#言語じゃなくてもいいでない?
ん・・・このスレのレベルは、理解に苦しむ・・
>>959 了解、インターフェイスがなくてもメソッドの名前が一致してればOKという話か。
usingはなぜかIDisposable.Dispose()でないと受け付けない。
これもメソッドの名前だけで使わせて欲しいよ。
>>956 リファレンスのキーワードの項に、
>>955のとクエリキーワードは載ってるけど、add/removeが載ってない
中の人にも忘れられてる?
add/removeはデリゲートだけでデリゲートでも普通使わないからやっぱり忘れられていると思う。
C#というのは、Javaと比べるとポインタ演算unsafeとstackallocが売りだと思うんだけど…
いやなウリだな
>>964 WinFormでもWPFでもコントロールのイベントはカスタムしてるのがほとんどだぜ
便利なものはどんどん積極的に組み込んでアピールしていこうっていうのがコンセプトでしょ
ヘジたんはむしろ抑え役っぽい
抑え役だし押さえ気味だよなぁ。
というかあいつら基本的に自分たちでだいぶ使ってから出すから
まぁそんなもんかという気はする。
VBと違ってクエリ演算子のサポートが消極的すぎ
中途半端に付けるくらいならクエリ式なんて無くてよかった
メソッド形式だけだとどうしてもインパクトに欠けるからなあ
javaがいったいいくつ独自キーワードを取り入れたか
今のC#のウリは関数型とラムダ式だろ
JavaやC++とくらべて進んでるところは
次はついに動的型くるかも
動的型というか、動的っぽい記述が一時的につかるようになる dynamic ブロックになりそうかな。
GetEnumeratorは仕方ない。
ジェネリックがなかったころだから。
Mix-in 入れてくれんかな
978 :
デフォルトの名無しさん:2008/06/18(水) 23:49:20
相変わらずC#はキモイな
どこがどうキモイかを気がついてないようだけどw
>相変わらずC#はキモイな
何言ってる?
現在進行形でキモクなってんだよっ
まあJavaBeansのプロパティルールよかまし
自分でもどこがキモイか指摘できないから、
釣り糸をたらして誰かがボロを出すのを待ってるんですね。
わかります。
動的型はいいよ
VBでやってくれ
C#の魅力は静的型付けの言語でここまでやるかってところ
Expression Treeなんかすでに動的言語の領域だけどね
Linq for SQLは明らかに別物ですから。
Linq for SQLはORMであることを前面に出してアピールしたほうが健全だと思える。
これをごちゃ混ぜにしてLinqと呼んでるからユーザーが混乱する。
混乱して分からなくなるようなやつは使わなければいい
Linq to SQL はフェードアウトするかもしれんけどな。その話とは関係ない話ではあるが。
SQLクエリとin-memoryオブジェクトクエリが同じ記法で書けるってのが1つの売りだからなぁ。
デリゲートとExpessionTreeが同じ文法で書けるのが実に素敵。
ADO.NET2.0でデータの更新時に同時実行違反になったときどうしてる?
エラーダイアログ出して、ユーザーが編集していた更新内容を
まるっと破棄してしまうと、なんか文句言われそうなんですが・・・
Expression Treeじゃなくてメソッド全部ツリーにしてくれればいいのに
あと匿名型を普通に引数とか戻り値に使えるようにしてくれ
ExpressionTree面白いんだが、自分であれいじくろうと思うとちょっとうんざりしそう。
もうちょっとシンタックスシュガーが( ゚д゚)ホスィ…
俺はMSDNにあるExpressionVisitor使っていろいろ作ってる
合成関数とか、任意の引数のバインディングとか
expr1.ComposeWith(expr2)
expr1.BindSecond(3)
てな感じで使ってる
正直、何につかったらいいかわかんねExpressionTree
識別子の名前が取ってこれるのが重要なんじゃない?>ExpressionTree
それ以外は生の処理でもできそうだけど
まあ、Expression Treeを使うのは主にライブラリ作成側の人だろ。
たいていのプログラマは間接的な恩恵しかない。
動的メソッド+ILの替わりに、デリゲート+Expression Treeが使えるのは大きい
ソースとプロジェクトファイルを人に渡したいのですが
最低限必要なのはどのファイル(※)でしょうか?
※ Windowsフォームアプリケーションで新規作成した場合に
作成されたファイルを下記のリストにしてみました(第二階層まで)
test.sln
test.suo
2008/06/21 17:07 <DIR> bin
2008/06/21 17:07 <DIR> obj
2008/06/21 17:07 <DIR> Properties
2008/06/21 17:04 374 Form1.cs
2008/06/21 17:04 1,338 Form1.Designer.cs
2008/06/21 17:04 546 Program.cs
2008/06/21 17:07 3,622 test.csproj
2008/06/21 17:07 74 test.csproj.user
>>997 2008/06/21 17:07 <DIR> bin
2008/06/21 17:07 <DIR> obj
は全部消していい。
あとはtest.csproj.userくらいか
>>998 削除&プロジェクトファイルを開く、で削除可否を確認しました。
下記リストの状態でプロジェクトが開くのを確認。
教えて頂いたファイルからさらにtest.suoを削除しています。
ありがとうございます。
消さなかったファイル・フォルダ
test.sln
2008/06/21 17:07 <DIR> Properties
2008/06/21 17:04 374 Form1.cs
2008/06/21 17:04 1,338 Form1.Designer.cs
2008/06/21 17:04 546 Program.cs
2008/06/21 17:07 3,622 test.csproj
消したファイル・フォルダ
test.suo
2008/06/21 17:07 74 test.csproj.user
2008/06/21 17:07 <DIR> bin
2008/06/21 17:07 <DIR> obj
1001 :
1001:
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。