meideru blog

家電メーカーで働いているmeideruのブログです。主に技術系・ガジェット系の話を書いています。

Visual C++じゃなくてVisual C#で開発しよう

 

つい最近、Visual C++ を入門しました(-“-)

今だとWindowsのアプリケーションはC#で開発する人も多いかもしれませんが、依然としてVisual C++で開発する方もたくさんいます。  私も最近、Visual C++の入門をしましたので、今日はその時に使用した本をご紹介したいと思います。何故、C#ではなくVisual C++でアプリケーションを作るのか単刀直入に言うと「C#よりもC++の方が自由が効くから」というのが答えでしょう。特に熟練したプログラマほど、そう答えると思います。C#はメモリの管理などもガベージコレクションでコンパイラが適切に管理してくれる反面、自由が効か...

 

今まではWindows API(Win32API)を用いてWindowsのアプリケーションを作ってきたのですが、最近、限界を感じ始めました。

少し前に勉強のためにWindows API (Win32API)を利用して住所録(電話帳?)っぽいソフトウェアを作っているという話をしました。 とりあえず、一通り完成したのでソースコードをアップしたいと思います!GUIなどGUI(グラフィカルユーザインタフェース)は、以下のような感じです。@スクリーンショット1@スクリーンショット2@スクリーンショット3@スクリーンショット4ソースコード詳細はGitHubに公開中このソフトウェアに関するソースコードは、すべて私のGitHubに公開しています。GitHub → https://github.com/meideru/...

 

なので、これからはVisual C++で開発しようと思ったのですが、いざ入門すると問題点がいくつか出てきました。

今日は、その件について記事を書こうと思います♪( ´θ`)

Visual C++を入門しようと思ったきっかけ

冒頭に書いた通り、これまではWindows API(Win32API)を用いてアプリケーションを作っていました。

ついこの前、バイトでMFCを触ることになったという話をしました。【関連記事】・IT系のバイトでプログラミングやらせてもらえることになりました! あとで調べて分かったんですが、MFCとはWindowsプログラミングで用いるフレームワークのことでした。記事中で、もう少し詳しく説明します。今までずっとコンソールアプリケーションでオセロやコンピュータ将棋のプログラムを作ったり、UnityやSpriteKitでゲーム開発しかしたことがありませんでしたので、Windowsプログラミングについてもよく知りません(^_^;)なので、今日はWindowsプロ...

 

しかし、ちょっとしたアプリケーションでも何十行も書かなければならないなど、たくさんの問題がありました。

なので、Visual C++に移行しようと思ったのです。

入門に使用した本

入門には「アプリを作ろう! Visual C++入門 Visual C++2015対応」という本を使用しました。

この本はとてもわかりやすく書かれていました。

とても薄くて必要最低限のことしか書いてありませんが、身につければ足りない部分はグーグル先生に聞いて補うことができます。

Visual C++を学ぼうと思う方には自信を持ってオススメできます。

Visual C++の問題点

純粋なC++では開発できないから

「Visual C++」と名前にも付いているので、C++で開発できるかと思いきや、実際には違いました。

C++ではなく、C++を拡張して作られて「C++/CLI」という言語で開発しなければなりません。というか、この言語はVisual C++のために作られた言語です。

Visual C++にも使われている.NETは、純粋なC++では技術的な限界で扱えず、マイクロソフトが.NETのためにC++を拡張したC++/CLIという言語を開発しました。

このC++/CLIという言語は厄介で、純粋なC++とは違う点がいくつかあります。

例えば、メモリや配列の扱い方などが違いました。これは純粋なC++とは大きく違います。

私はC++は扱えるので、すぐにでもVisual C++を扱えるようになれると思いきや、そうはいかないようです。

C++/CLIの本が少なすぎる

2つ目の問題点はこれです。C++/CLIに関する本が圧倒的に少なすぎです。

私は勉強するときは本を使って勉強するタイプの人間です。グーグル先生は最終手段です。本で学んでそれでもわからなかったときは、止むを得ずネットで調べます。

Amazonで探しても微妙な本しか出てきません。また、池袋のジュンク堂でも探してきましたが、良い本は見つかりませんでしたorz

まとめ

今からのVisual C++の入門はオススメできない

C++/CLIという特殊な言語で開発しなければならない上に、この言語を扱っている本が少なすぎるという致命的な問題点が浮上しました。

正直言って、今からVisual C++を入門するのはオススメできません( ;∀;)

C++ができないプログラマが入門する理由もないですし、C++が扱えるプログラマも更にC++/CLIの勉強をしなければなりません。

Visual C#がオススメである選択だと思う

実はVisual C++と並行して、Visual C#の勉強もしています。

 

C++/CLIが厄介であると気づいたマイクロソフトは、新たに一(いち)からプログラミング言語を開発しました。

それが「C#」です。

C#はC++/CLIと違って、無理やり拡張された言語ではないので、スッキリとした設計になっていて解りやすい言語になっています。

 

やはり、今からWindowsプログラミングを始めようと思うならばVisual C#がベストな選択だと思います。

 

以上です!

ノシ

 

 - 技術系