「プログラミング/共通知識」の版間の差分

編集の要約なし
M編集の要約なし
編集の要約なし
「Visual C++ 2017入門」などC++向けの本は、現状のところ、初心者は買わないほうが安全です。
 
なぜなら、Visual C++ には、昔は、マウスのドラッグ&ドロップなどで直感的にGUI部品をウィンドウ上に配置して(アプリ起動後のグラフィックの)レイアウト編集のできる「フォームデザイナ」という機能があったのですが、2017年バージョンから標準設定からは廃止されました。
 
いちおう、インストーラーを再度立ち上げなおして『C++によるデスクトップ開発』にあるチェックボックス一覧(画面右側にある)の『C++/CLI』にチェックを入れれば、過去にフォームデザイナと互換性のあった文法を使える仕様ですが、しかし標準設定ではこれにチェックボックスが入ってないことから、マイクロソフト社は本音ではあまりC++にフォームデザイナをサポートしたくないようです。
 
そもそも『C++/CLI』が保証しているのは、あくまでもC++/CLI自身の文法の保証だけであり、一言も「フォームデザイナの動作を保証する」とはマイクロソフト社もVisual Studio も言及していません。
さらに、廃止された機能であるにもかかわらず、2017年の発表初期には部分的に機能が残っていたようであり、そのため、入門書にはC++によるフォームデザイナ使用法が書いてあります。(つまり、市販の入門書に、間違った内容が記述されている。)
 
さらに、市販の書籍のとおりに操作しても、現在では、C++フォームデザイナが正常に動かない事がよくありせん。それらの Visual C++ 入門書 には、フォームデザイナ追加作業時におけるエラー時の回避策が書かれているのですが、その回避策のとおりに行動しても、それでもエラーが直らなかったり、そもそも、回避策に必要な各種のメニューコマンド自体が、Visual C++では、いくつか廃止されており、その回避策じたいを実行できないという有様です。つまり現状では、市販のVisual C++入門本に書いてある内容が、マチガイです。(たぶん、近々、IT書の出版業界が大変な事態になる。2018年に本文章を記述。)
 
れらの結果、どうやら、Visual C++ でグラフィックを作るには、コードで直接、命令文を入力しないとイケナイようになってます。困ったことに、市販の Visual C++ の本を読んでも、どのテンプレートを選んでコードのどこに命令文をどう入力したら、どういうグラフィックが作れるのか、まったく書いていません。
市販の書籍のとおりに操作しても、現在では、C++が正常に動きません。それらの Visual C++ 入門書 には、フォームデザイナ追加作業時におけるエラー時の回避策が書かれているのですが、その回避策のとおりに行動しても、それでもエラーが直らなかったり、そもそも、回避策に必要な各種のメニューコマンド自体が、Visual C++では、いくつか廃止されており、その回避策じたいを実行できないという有様です。つまり現状では、市販のVisual C++入門本に書いてある内容が、マチガイです。(たぶん、近々、IT書の出版業界が大変な事態になる。2018年に本文章を記述。)
 
さらに問題点として、せっかく上手くC++/CLIをインストールおよびプログラミングできたとしても、動作に.Net Frameworkなどが追加で必要なので(標準のVisual C++では不要だった)、標準のC++のコードとは互換性が無くなり運用性の手軽さが低下します。(プログラマだけでなく、そのアプリを使う人にもまた、専用の.Net Frameworkランタイムが必要になる。)
 
その結果、どうやら、Visual C++ でグラフィックを作るには、コードで直接、命令文を入力しないとイケナイようになってます。困ったことに、市販の Visual C++ の本を読んでも、どのテンプレートを選んでコードのどこに命令文をどう入力したら、どういうグラフィックが作れるのか、まったく書いていません。
 
 
ですが、Windowsでアプリを作る際に、知識としてDirect X について、いろいろと知っておく必要があります。
 
なぜなら、現在の Windows では、実はウィンドウは3D-CGとして処理しています。(アナタが今見ているwebブラウザのウィンドウも、マイクロソフト社の公式の仕様上ではDirect X が起動しており、ウィンドウを 3D-CG として処理して、ディスプレイにウィンドウ表示しているハズです。)
 
ユーザーにはDirect X の名前が表示されてないだけで、実はWindowsの画像処理のいろいろな箇所で、 Direct X は動作しています。
 
 
なお、よく、Windows向けのゲームで「Direct Xランタイムが必要です」などと説明書などで記載されているので、てっきりDirect X をゲーム専用に追加インストールする必要のある追加機能だと誤解しがちだが、実はのwindows7以降(win7自身も含む)ではゲームとは無関係に既にWindowsのインストール時点で Direct X は Windowsに標準インストールされています。
 
Windows95くらいの過去のバージョンではDirect X は購入時点ではWindows製品には付属しておらず追加インストールしないと使えなかった時代もありました。しかし、現時点のwindows7以降(7も含む)のバージョンでは、Direct X はWindowsの購入時点で付属しており、Windowsのインストールと一緒にDirect X もインストールされています。
 
 
 
23,070

回編集