プログラム言語に関するメモ

会社を辞めないと決まって、新しい仕事をふられたわけですが、
どの言語でやるか?から検討することに。
ちょっと私的感覚をメモっておく。
(決定理由を説明するときの覚書ってことで)
GUIのあるWindowsアプリケーションということで、
現状考えられる選択肢はこんなものか。
・C++(MFC)
・Managed C++(.NET Framework)
・C#(.NET Framework)
・VB.NET
・Delphi6/7
・Delphi2005(.NET Framework)
○C++(MFC, Win32)
制御系の処理では最も標準的で高速。
GUIの作成に難有り(工数面で)。
技術資料は豊富。
既存コードの流用を考えると、この選択肢が最も適かと思うけど、
既存コードの流用は今回あまり考えていないので、
もっと開発効率の良い他言語を選択する方が良いかも。
○Managed C++(.NET Framework)
結局ILなので、純粋なC++よりは低速。
.NETでC++が使用できる。
C++コードを流用しやすい。
C++の拡張と言われているけど、
実際は、.NETで使えるような文法にコンバートされた言語、
という印象がある。
C++でできていたことが、Managed C++ではできないことも多々。
あと、.NETとC++両者の制約を受けて非常に構造が複雑怪奇。
既存コードの流用を考えないなら、選択肢から除外すべき。
○C#(.NET Framework)
CLR開発に最適(.NET専用言語)。
ILなので、C++より低速。
GUIはつくりやすい。
もう最近は、Windowsアプリをつくるならこれが良いように思う。
最初から.NET用につくられた言語なので、
その考え方や文法もわかりやすく、解説書も多い。
ただ、ILであるので低速なのは否めない。
(ネイティブコンパイルする手もあるが)
○VB.NET
GUIはつくりやすい…が、それだけ。
.NETを使うなら、C#の方がわかりやすく使いやすい。
VBと名がついているが、
VB6.0までの考え方は基本的に踏襲されていない。
(予約語や単語レベルではVBなのだが)
今回の選択肢としては、多分あり得ない。
○Delphi6/7
Win32アプリケーションなら、開発効率、実行速度を、
共に高いレベルで実現できる。
私が個人的に、Delphiは使い慣れている。
もうこれは個人の好み。
多分これを使えば、今回のシステムなんて1ヶ月で作れる。
(仕様さえ凍結すれば)
しかし、世間が許さないと思われる…。
もうちょっとBolandがメジャーになってくれたらなぁ。
○Delphi2005
.NET対応したDelphi、らしい(使ったことはない)。
これを使うくらいならC#なのかもしれない。
VB.NETと同じ理屈で。
ただ、個人的に使ってみたい!?
好みでいえば、C++かDelphiが良いのだけど、
C++だとGUI作成で工数がかなりとられると予想されるし、
Delphiは、お上さまが許してくれないと予想(政治的な話)。
C#かなぁ、という感じ。

タイトルとURLをコピーしました