- オブジェクト指向システムの設計 172 [無断転載禁止]©2ch.net
70 :デフォルトの名無しさん[sage]:2016/07/13(水) 00:20:45.58 ID:7t1kL6eB - >>68
Eiffelみたいな契約プログラミングによる保証か、 https://ja.wikipedia.org/wiki/契約プログラミング もしくは、 C++11のnoexceptのような仕組みかな http://cpprefjp.github.io/lang/cpp11/noexcept.html
|
- オブジェクト指向システムの設計 172 [無断転載禁止]©2ch.net
84 :デフォルトの名無しさん[sage]:2016/07/13(水) 06:22:04.43 ID:7t1kL6eB - >>80
>契約プログラミング C++だとBoost.Contract .NetだとSystem.Diagnostics.Contracts があるね 使ったことないけど >例外保証 なんか、まじめに考え過ぎな気がする どのクラスがどの例外保証を持っているかなんて、気にして書いている人なんていないんじゃないか (と、言うとちゃんとやってる人に怒られそうだが) 例外安全、例外耐性を考慮して、きれいにやるなら把握しているに超したことはないけれど 基本的には「いちいち戻り値でエラー判定するのが面倒。戻り値だとエラー判定忘れることがある(アプリがエラー状態のまま動き続けてしまう)。例外をつかえばそれらを簡単に回避できる」くらいの感覚で使われてるんじゃないかな 例えばオブジェクト指向でクラス設計するときはSOLID原則を意識することはあれ、 そこまで厳密に遵守して書かないし、他人の書いたクラスがSOLID原則に則ってるかなんて気にしないでしょ? それに今時の言語なら標準ライブラリが例外を投げるから、それらを使うなら自分のコードでも例外を使うことで 「このコードでは、エラーは常に例外で通知する」という一貫性が生まれる プログラミングにおいて一貫性は重要だ 先日のGoogleのスタイルだと「例外を使わない」という点で一貫性がある もちろん、現実世界ではそんなにすべてうまくいかないから 必要があれば戻り値のエラー通知を部分的に使うのはかまわないと思うよ .Netにも例外を投げるInt32.Perseと投げないInt32.TryPersreの2種類があるし >Either "C++ Either"や"C# Either"でググれば「書いてみた」系のブログが引っかかる
|
- Visual Studio 2015 Part6©2ch.net
29 :デフォルトの名無しさん[sage]:2016/07/13(水) 22:27:12.36 ID:7t1kL6eB - >>27
Microsoft Visual Studio 2015 Installer Projects https://visualstudiogallery.msdn.microsoft.com/f1cc3f3e-c300-40a7-8797-c509fb8933b9?SRC=Featured
|
- Visual Studio 2015 Part6©2ch.net
32 :デフォルトの名無しさん[sage]:2016/07/13(水) 23:25:16.33 ID:7t1kL6eB - >>31
(1)セットアッププロジェクトのプロパティから[Prerequisites...]ボタンをクリック (2)[インストールする必須コンポーネントを選択する]で配布したい.NET Frameworkを選択 (3)[アプリケーションと同じ場所から必須コンポーネントをダウンロードする]、にチェックを入れる (4)そのままビルドすると、「ERROR: 必須コンポーネント ダイアログ ボックスで [次の場所から必須コンポーネントをダウンロードする] を有効にするには……」というエラーが出る おそらく、↓と同じ症状。 C#2005 ExpressEditionでの配布方法 https://social.msdn.microsoft.com/Forums/ja-JP/ff8dca87-8620-4820-aa28-a7790caf8556/c2005-expressedition (5)ビルドエラーに表示された.NETのオフラインインストーラと言語パックをダウンロードする 例えば.NET 4.5.1なら、 本体:NDP451-KB2858728-x86-x64-AllOS-ENU.exe 言語パック:NDP451-KB2858728-x86-x64-AllOS-JPN.exe (6)ダウンロードしてきたインストーラと言語パックをそれぞれ以下のフォルダに移動する。 C:\Program Files (x86)\Microsoft Visual Studio 14.0\SDK\Bootstrapper\Packages\DotNetFX451 C:\Program Files (x86)\Microsoft Visual Studio 14.0\SDK\Bootstrapper\Packages\DotNetFX451\ja ※ フォルダ名
|
- Visual Studio 2015 Part6©2ch.net
33 :デフォルトの名無しさん[sage]:2016/07/13(水) 23:27:13.34 ID:7t1kL6eB - >>32おっと、途中で切れた
続き (6)ダウンロードしてきたインストーラと言語パックをそれぞれ以下のフォルダに移動する。 C:\Program Files (x86)\Microsoft Visual Studio 14.0\SDK\Bootstrapper\Packages\DotNetFX451 C:\Program Files (x86)\Microsoft Visual Studio 14.0\SDK\Bootstrapper\Packages\DotNetFX451\ja ※ フォルダ名の「DotNetFX451」は、使用する.NETのバージョンによって読み替えて (7)インストーラプロジェクトをビルドする エラーが消えればOK
|