日記です.自分用のメモ代わりに書くことが多いです.
今日は博士後期課程の先輩の予備審査1の発表がありました.
"1"ってことはまだ2とか3,それに本審査があるんですよね.お疲れ様です.
博士ともなると,大学生活が4+2+3で,実に9年にものぼります.感慨深いですね.
さてさて,今日は私が今はまっているC#(厳密に言うとVisual C#の方が正しい)の素晴らしさについて
語りたいと思います.この記事を見て興味を持ってもらえれば幸いです.
"1"ってことはまだ2とか3,それに本審査があるんですよね.お疲れ様です.
博士ともなると,大学生活が4+2+3で,実に9年にものぼります.感慨深いですね.
さてさて,今日は私が今はまっているC#(厳密に言うとVisual C#の方が正しい)の素晴らしさについて
語りたいと思います.この記事を見て興味を持ってもらえれば幸いです.
まず,C#はオブジェクト指向言語(以下OOLと書きます)です.これは基本ですね.
私は専門家ではないですが,私の主観的には,C#の言語的な仕様はJAVAに負けていないと思います.
C++など相手にならないと言ってもいいかもしれません.もちろん,実行速度の点では劣ると思われますが.
あと,.NET Frameworkが入ってないと動かないとかね.
以下,私が使ってみて,いいと思った機能についていくつか挙げたいと思います.
まず,これはC#に限らずJAVAやC++にもありますが,stringクラスがあることです.
CやC++で文字列処理やってると時々バグにはまりますが,OOLではそういうことはありません.
次に,これはC#特有の機能ですが,デリゲートというものがあります.
例としてマウスで左クリックしたときを考えます.このときマウスイベントが発生するわけですが,
Visual C++ではこれをWndProcのWM_LBUTTONDOWNメッセージあたりを捕まえて処理を行います.
Visual C#では,ウィンドウのインスタンス名をForm1とすると,初期化処理の中に
Form1.MouseDown += new MouseEventHandler(MyMouseDown);
という文を書けば,マウスイベントが起こると自動的にMyMouseDownメソッドが呼ばれます.
(C# 2.0ではさらに簡略化して,Form1.MouseDown += MyMouseDown;と書くことができます)
あと,実はこれが一番凄いと思ったのですが,Visual C#の開発環境の出来の良さです.
Windowsプログラムをする場合は,処理の単位はウィンドウなわけですが,
Visual C++ではウィンドウの追加やコントロールの配置がとても面倒でした.
Visual C#ではこの点が劇的に改善されています.
まずVisual C#で新たなプロジェクトを作成すると,デザイナが表示されます.
その画面で,ウィンドウ上へのコントロールの配置や細かな設定をGUIで行うことができるのです.
デザイナはそれを読み取って自動的にコードに変換してくれます.
あと,コードの補完機能とツールチップ(メソッドの説明などがポップアップして表示される)が素晴らしいです.
Visual C++でもある程度は補完などしてくれますが,Visual C#はその比ではありません.
この点からもMicrosoftがいかにC#に力を入れているかが分かります.
むしろC++は手抜きしてるんじゃなかろうか!?と思うほどです.
他にも色々ありますが,疲れたのでまた他の機会に.
私は専門家ではないですが,私の主観的には,C#の言語的な仕様はJAVAに負けていないと思います.
C++など相手にならないと言ってもいいかもしれません.もちろん,実行速度の点では劣ると思われますが.
あと,.NET Frameworkが入ってないと動かないとかね.
以下,私が使ってみて,いいと思った機能についていくつか挙げたいと思います.
まず,これはC#に限らずJAVAやC++にもありますが,stringクラスがあることです.
CやC++で文字列処理やってると時々バグにはまりますが,OOLではそういうことはありません.
次に,これはC#特有の機能ですが,デリゲートというものがあります.
例としてマウスで左クリックしたときを考えます.このときマウスイベントが発生するわけですが,
Visual C++ではこれをWndProcのWM_LBUTTONDOWNメッセージあたりを捕まえて処理を行います.
Visual C#では,ウィンドウのインスタンス名をForm1とすると,初期化処理の中に
Form1.MouseDown += new MouseEventHandler(MyMouseDown);
という文を書けば,マウスイベントが起こると自動的にMyMouseDownメソッドが呼ばれます.
(C# 2.0ではさらに簡略化して,Form1.MouseDown += MyMouseDown;と書くことができます)
あと,実はこれが一番凄いと思ったのですが,Visual C#の開発環境の出来の良さです.
Windowsプログラムをする場合は,処理の単位はウィンドウなわけですが,
Visual C++ではウィンドウの追加やコントロールの配置がとても面倒でした.
Visual C#ではこの点が劇的に改善されています.
まずVisual C#で新たなプロジェクトを作成すると,デザイナが表示されます.
その画面で,ウィンドウ上へのコントロールの配置や細かな設定をGUIで行うことができるのです.
デザイナはそれを読み取って自動的にコードに変換してくれます.
あと,コードの補完機能とツールチップ(メソッドの説明などがポップアップして表示される)が素晴らしいです.
Visual C++でもある程度は補完などしてくれますが,Visual C#はその比ではありません.
この点からもMicrosoftがいかにC#に力を入れているかが分かります.
むしろC++は手抜きしてるんじゃなかろうか!?と思うほどです.
他にも色々ありますが,疲れたのでまた他の機会に.
PR
この記事にコメントする
プロフィール
HN:
まさぽん
性別:
男性
職業:
会社員
カウンター
ブログ内検索
クリック募金
カテゴリー
なかのひと
アクセス解析