- お知らせ -
  • 当wikiのプログラムコードの表示を直してみました(ついでに長い行があると全体が下にぶっ飛ぶのも修正)。不具合があればBBSまでご連絡下さい。

C-sharp

はじめに Edit

いいかげん、DelphiからC#(C#)に移行したいという話。

利点 Edit

  • GCがある。Delphiでやりにくいメソッドチェーンがやり放題?
    Delphiだとインターフェスとかにしないとメソッドチェーンしにくい。
  • 新しい機能がバンバン追加される。
    有用かどうかは別として新鮮さがウリ
  • ユーザーが多く、コミニティがでかい
    Delphiはかなわないところ。
  • 匿名関数とdelegateがある
    高階関数みたいなのやり放題?
  • ジェネリックス(Generics)がある
    Delphi2009から入るけど。それ以前でもincludeテクニックで無理やりやる方法もある。
  • UNICODE対応
    UNICODEちゅーかUTF-16対応。Delphi2009でやっと対応予定だが、多分当分バギーだろう。それとコンポーネントの対応問題もある。(SpTBXLib,TnTとかどうなるんだろう?)
    C#はデフォルトでUNICODEっぽい。安心さが違う。
  • ライブラリが豊富
    VCLと比べたらかなり多い。今時Hashが標準じゃないとか信じられん。
  • Delphiから移行しやすそう
    C#開発者がDelphiの開発者であることから、アーキテクチャやライブラリ周りもかなり似ている。

懸念される問題点 Edit

  • Delphiで言うカスタムコンポーネントが作られるか?
    → Controlクラス継承や既存コントロールを継承して作ることができる
  • TFrame相当はあるか?コードを分離して開発できるか?
    → UserControlクラス でいいのかな?
  • DirectX周りの対応
    Managed DirectXは開発停止。XNAはなんかゲーム用だし。
    SlimDX
  • OpenGL周りの対応 → ?
  • 関数内関数(Inner function,Nested function)がない
    リファクタリングとかする時に関数化しまくるけど、関数ローカルな関数が作れないってことはそういうことがしにくいってこと。
    delegateで代入すれば一応できるが……。本末転倒。
    高階関数するには、匿名関数でokだけども。
    関数型言語をめざすにはいると思うけどなあ。

参考リンク Edit


No comment. Comments/C-sharp/DelphiからC-sharpへの移行?

Name:

Front page   Edit Freeze Diff Backup Upload Copy Rename Reload   New Pages Search Recent changes   Help   RSS of recent changes
Last-modified: 2008-09-06 Sat 03:12:08 JST (4290d)