アカウント名:
パスワード:
曖昧な記憶なんですが、C#を設計した人って、Delphiを設計した人と同じじゃありませんでしたっけ。言語としては非常に素晴らしい出来だ、とその方が自信を持っているという話を聞いたことがあります。
...そろそろ.NETもさわってみようかなぁ。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
最初のバージョンは常に打ち捨てられる。
結構使える (スコア:4, 参考になる)
言語としてもよく考えられていると思うし、開発効率もいいし。
自分はC, C++, DelphiといろいろとやったのですがDelphiがRADとして比重を置いていますがC#はC,C++の中間みたいな感じで非常にバランスよく感じます。
自分が公開しているソフトもC#で書かれたものがありますが……。
あまり見かけないですがどのくらいの人が
Re:結構使える (スコア:2, 興味深い)
曖昧な記憶なんですが、C#を設計した人って、Delphiを設計した人と同じじゃありませんでしたっけ。言語としては非常に素晴らしい出来だ、とその方が自信を持っているという話を聞いたことがあります。
...そろそろ.NETもさわってみようかなぁ。
C# の言語 設計者は James Gosling なのでは... (スコア:3, 参考になる)
僕が検証したところ文法だけ見て C# が Java と根本的に違うのは 5点のみ。
多次元配列の存在、primitive 型(C# では predefind 型)の call by reference、unsafe 構文の存在、check/uncheck、goto 文。
あと小さな違いとしては decimal 型とか、文字列定数の書き方とか、文字列を case にした switch 構文の存在とか。
残りは糖衣構文(syntax suger) のある/なしだと思います。
# 糖衣構文というのは、同じ書き方がもっと基本的な構文の
# 組み合わせで書けるの
コンタミは発見の母
Re:C# の言語 設計者は James Gosling なのでは... (スコア:0)
> 例えば synchronized文由来の lock 文にタイムアウト値が設定できないとか。
ってのは、Javaの別の仕組みで解決できないんでしょうか。
wait(), notify()とかでなんとかとか。
どうにもならんです。 (スコア:1)
synchronized ( obj, timeout ) {
//
} timeout-catch {
//
}
Java に関してはどうにもならんです。Java では wait/notify はモニタを獲得したオブジェクトに対して使うものなので。
仮にモニタロックなしで wait が使えるとしても、タイムアウト処理はロックの所有権を得た時と、タイムアウトで抜けた時を区別できないと意味がないですよね。
Java の wait() って戻り値が void です。そのため、notify されて戻ってきたのかタイムアウトが来て戻ってきたのか区別がないのです。
C# のクラスライブラリはさすがに戻り値を bool 型で返して区別しています。あと try-lock もあります。なのに lock 構文は synchronized 構文の引き写しなのです。せめて try-lock 型が構文で書ければ...
p.s.
IBM のこのページ [ibm.com]には、Java のスレッドの機能不足な点がいろいろ指摘されていています。
コンタミは発見の母