web-dev-qa-db-ja.com

C#言語名の由来

私はCおよびC++プログラマーであり、C#を学ぼうとしています。私はこの本を購入しました Professional C# Wrox出版物。

CからC++への移行中に、なぜ++がCに追加されたのか疑問がありました。後で++はインクリメント演算子であり、 'Object Oriented Extension '。

C#では、#の意味は何ですか?

71
Prasoon Saurav

「C sharp」という名前は、書かれた音符を半音高くする必要があることを示すシャープ記号からヒントを得たものです。[6]これは、C++の言語名に似ています。「++」は、変数を1増やす必要があることを示します。シャープ記号は、4つの「+」記号の合字(2行2列のグリッド)に似ています。言語がC++の増分であることを意味します。

表示の技術的制限(標準フォント、ブラウザなど)と、シャープ記号(♯、U + 266F、MUSIC SHARP SIGN)が標準キーボードにないため、番号記号( #、U + 0023、NUMBER SIGN)は、プログラミング言語の記述名の鋭い記号を表すために選択されました。[7]この規則はECMA-334 C#言語仕様に反映されています。ただし、そうすることが実際的である場合(たとえば、広告やボックスアート[8])、Microsoftは意図したミュージカルを使用しますシンボル。

ウィキペディアから

また、 このインタビュー では、Anders Hejlsebergは次のように述べています。

「名前に言語のC遺産への言及を望み、最終的にC#に落ち着きました。私が思い出す他のいくつかの候補は、eC、Safe C、C-square、C-cube、C-prime、C-star、およびCesiumでした…見ていて、今は私たちの選択にかなり満足しています。」

最後に、 ナオミ・ハミルトンはアンデルス・ヘイルセバーグに直接質問した

[NH]元々この言語の名前はCoolでしたが、なぜC#への変更を促進したのですか?

[AH]コード名はCoolで、「Cのようなオブジェクト指向言語」の略です。私たちはその名前が好きでした。すべてのファイルは.coolと呼ばれ、それはちょっとクールでした!最終製品の名前を維持することを真剣に考えましたが、あまりにも多くのクールなものがありすぎたため、商標の観点からは実行不可能でした。

したがって、命名委員会が機能する必要があり、そこにCへの固有の参照があるという概念が好きで、C++で小さなWordがプレイされます。鋭いサインを4つのプラスとして見ることができるので、それはC++++です。そして、音楽的な面も面白かったです。 C#だったので、実際にその名前に本当に満足しています。それは私たちによく役立っています。

108
Gregory Pakosz

これがプログラマーのWebサイトであることを考えると、Microsoftプログラマーがプロジェクトで作業したときに使用した名前である「本名」をリストするのは興味深いかもしれません。これらの名前は、考古学的記録のように、CLR(ローター)、SDKヘッダーファイル、および参照ソースのソースコードに表示される傾向があります。

C#はCOOL(Cのようなオブジェクト指向言語)として始まりました。ローターメイクファイルは、初期のC#コードが.coolファイル名拡張子を持つファイルに書き込まれている可能性があることを示しています。ただし、COOLCという名前の場所もいくつかあります。

CLRにはいくつかの名前がありました。これは、Windows 2000のCOM +で動作するグループ内のプロジェクトとして始まりました。CLRソースコードには「ComPlus」への多くの参照があります。管理された例外の例外コードは、0xe0434f4e、0xe0 + "COM" +1です。 WinError.hファイルでは、CLRエラーコードは「URT」、「Universal Run Time」を使用します。短縮形「Cor」は、ホスティングインターフェイス「COM Object Runtime」の多くの場所に表示されます。 CLRソースコードは、実行エンジンとCLRコードベースの変更の一部の略で、マネージコードを実行するために、CORとは異なるEE頭字語を非常によく使用します。

私が見た内部プロジェクト名:

  • Rainier:Visual Studio 2002
  • エベレット:Visual Studio 2003
  • ホイッドビー:Visual Studio 2005
  • Orcas:Visual Studio 2008
  • ハワイ:Visual Studio 2010(非常に早い段階)
  • ローター:CLRの共有ソースバージョン
  • アバロン:WPF
  • インディゴ:WCF
  • ユーコン:SQL Server 2005
  • カトマイ:SQL Server 2008
  • Strike:CLRの最初のバージョンをデバッグするために使用されるカスタムデバッガー拡張機能。SOS(Son of Strike)に進化しました。
7
Hans Passant

1991年、Al StevensはDr. Dobbs Journal(DDJ)でD-Flatを紹介しました。ユーザーインターフェイスを構築するためのDOSベースのイベント駆動型フレームワーク( http://www.ddj.com/18440855 を参照)。当時、D-FlatはCで書かれていました。AlStevensがDDJのCプログラミングコラムを書いたからです。 C++という名前はすでに採用されており、C-Sharpを検討していましたが、誰かがすでにそれを考えていたと確信していました( http://www.ddj.com/184410858 を参照)。私の意見では、D-Flatは気まぐれではなく、彼は非常に多くの言語経験を持っているため、Al StevensはC-Sharpという名前について長い間考えていました。

6
Joe Mayo

この説明をご覧ください: http://www.jameskovacs.com/blog/CNETHistoryLesson.aspx

C#の名前は音楽に触発されました。 C/C++の上位にあるCスタイルの言語で、シャープ(#)は音の上の半音を意味します。

4
driis

「#」は実際には音楽的なシャープ記号を意味します-++はC++がCインクリメントされることを示し、#はC++インクリメントされること、またはC++++を示します。より高いレベルの機能を提供するC構文を持つ言語。

2
Petter berrie

「#」は実際には音楽的なシャープ記号を意味します-++はC++がCインクリメントされることを示し、#はC++インクリメントされること、またはC++++を示します。より高いレベルの機能を提供するC構文を持つ言語。

これについては wikipediaの記事 をご覧ください。

2
ljs

それは単なる名前です。 #文字は、C#(Cシャープ)がCの上の音符の半分であることを意味する楽譜から取られています。

C#は部分的にC/C++に基づいていますが、Java and Pascal(Delphi).Javaと同様に、C#はオブジェクト指向言語ですが、C++とPascalはオブジェクトの機能が追加された手続き型言語ですオリエンテーション。

1
Guffa

C#は音楽にインスパイアされた名前で、ポリフォニックC#もあります

1
jlru

他の場所に記載されている音楽の参照に加えて、「♯」と「#」が2つの「+」記号が重なっているように見えることに注意してください。

最終的には、技術的な決定ではなく、マーケティングの決定でした。

(余談ですが、当時は、検索エンジンが「特別な」文字を無視し、「C」の結果が表示されるため、これは適切な選択ではないと考えていました。現在、検索エンジンはよりスマートになっています。)

1
Jay Bazuzi