コードの品質向上Improve Code Quality

コードの品質とは何でしょう。What is code quality? 優れたコードの作成には、正確性、保守性、さらに簡潔さのすべてが関係しています。Correctness, maintainability, and even elegance are all involved in creating great code. コードの品質をどのように定義したとしても、Visual Studio のテスト ツールを使用することで、あなたとあなたのチームは高水準の優れたコードを開発して維持することができます。However you define it, Visual Studio test tools can help you and your team to develop and sustain high standards of code excellence.

RequirementsRequirements

  • このセクションで説明するツールおよび機能の一部は、すべての Visual Studio ではなく、特定のエディションの Visual Studio でのみ使用できます。Some of the tools and features that are described in this section are available only in specific editions of Visual Studio—they aren't universally available in Visual Studio. 特定のエディション要件は、それらのツールおよび機能のドキュメントに示しています。We list the specific edition requirements in the documentation for these tools and features.

このセクションの内容In this section

次の表に、一般的なタスクの説明と、それらのタスクを正常に完了する方法を詳しく載せたリンクを示します。In the following table, you can find descriptions of common tasks and links to more information about how you can successfully complete those tasks.

コードの単体テストUnit Test Your Code テスト エクスプローラーを使用すると、開発の手法において単体テストを容易に統合できるようになります。Test Explorer makes it easy to integrate unit tests in your development practice. Microsoft 単体テスト フレームワークまたは複数のサードパーティ フレームワークやオープン ソース フレームワークの 1 つを使用できます。You can use the Microsoft unit test framework or one of several third-party and open source frameworks.
Visual Studio での Live Unit TestingLive Unit Testing with Visual Studio Live Unit Testing は、バックグラウンドで自動的に単体テストを実行し、Visual Studio のコード エディターにコード カバレッジとテスト結果をグラフィカルに表示します。Live Unit Testing automatically runs unit tests in the background and graphically displays code coverage and test results in the Visual Studio code editor.
アプリケーション品質の分析Analyzing Application Quality スタティック コード分析ツールは、C++ とマネージ コードにおける設計、使用方法、およびスタイルの問題を検出します。Static code analysis tools find design, usage, maintainablity, and style issues in C++ and managed code. これらの問題の多くは、標準のテスト環境では再現するのが困難なバグにつながる可能性があります。Many of these issues can lead to bugs that are hard to reproduce in standard testing environment.
マネージ コードの複雑さと保守性の測定Measuring Complexity and Maintainability of Managed Code コード メトリックスとは、開発者が開発中のコードをより理解できるようにする、ソフトウェアの一連の基準です。Code metrics is a set of software measures that provide developers better insight into the code they are developing. このメトリックスには、関数とクラスの保守容易性指数、関数のサイクロマティック複雑度、クラスの継承の深さ、およびクラス間の結合の度合いが含まれます。The metrics include a maintainability index for functions and classes, cyclomatic complexity of functions, the inheritance depth of classes, and the amount of coupling among classes.

Team Services と TFS の DevOps の概要DevOps overview for Team Services and TFS
Visual Studio Team Foundation と Visual Studio Team Services の使用経験がない場合は、チームの開発環境で使用して、アプリケーションの開発に関連する生産性を向上し、リスクを軽減する方法を学ぶことができます。If you are unfamiliar with Visual Studio Team Foundation and Visual Studio Team Services, you can learn more about how you can use it in a team development environment to improve productivity and reduce risks that are associated with application development.

アーキテクチャの分析およびモデリングAnalyzing and Modeling Architecture
Microsoft Visual Studio PremiumMicrosoft Visual Studio Premium を使用すると、ソフトウェアの設計における課題と複雑さを管理できます。You can use Microsoft Visual Studio PremiumMicrosoft Visual Studio Premium to manage the challenges and complexity of designing software. Visual Studio PremiumVisual Studio Premium を使用して、現在のアプリケーションの状態および将来のアプリケーションの状態を視覚的にモデル化できます。 lets you visually model your application, both as it exists now and as you want it to exist in the future. アプリケーションの論理的なモデルを視覚化できるダイアグラムを作成および管理すると同時に、それらを物理的なモデルに対応付けることができます。これにより、"設計中" のソフトウェアを変更、検証、および分析できます。You can create and maintain diagrams to help you visualize the logical models of your application at the same time that they map to the physical models; this enables you to change, validate, and analyze the software that is "under design."

アプリケーションのテストTesting the application
Visual Studio PremiumVisual Studio Premium および Visual Studio UltimateVisual Studio Ultimate を使用すると、テストのライフ サイクル全体の生産性を向上させることができます。You can use Visual Studio PremiumVisual Studio Premium and Visual Studio UltimateVisual Studio Ultimate to be more productive throughout the testing life cycle. Visual Studio PremiumVisual Studio Premium または Visual Studio UltimateVisual Studio Ultimate では、テスト作業の計画を作成できます。 or Visual Studio UltimateVisual Studio Ultimate let you plan your testing effort. 手動テストと自動テストの両方を作成、管理、編集、および実行できます。You can create, manage, edit, and run both manual and automated tests. また、計画に基づいてテストの進行状況もレビューできます。You can also review your testing progress based on your plan.

PreEmptive 保護によるアプリケーションの保護 - DotfuscatorProtecting the application with PreEmptive Protection - Dotfuscator
Dotfuscator コミュニティ エディションを利用し、企業秘密やその他の知的財産 (IP) を守り、違法コピーや偽造を減らし、改ざんと権限のないデバッグを防止できます。You can use the free Dotfuscator Community Edition to help secure trade secrets and other intellectual property (IP), reduce piracy and counterfeiting, and protect against tampering and unauthorized debugging. Dotfuscator はコンパイル済みのアセンブリを保護および強化します。追加のプログラミングやソース コードへのアクセスは不要です。Dotfuscator protects and hardens compiled assemblies without the need for additional programming or even access to source code.

アプリケーションのビルドBuilding the application
Team Foundation ビルドTeam Foundation Buildを使用すると、コードの自動的なビルドを作成および管理できます。You can use Team Foundation ビルドTeam Foundation Build to create and manage automated builds for your code. Team Foundation ビルドTeam Foundation Buildでは、ドロップ サーバーを作成してビルドを配置できます。 lets you create drop servers to deploy builds. さらに、ビルドの傾向を分析できます。In addition, you can analyze build trends.

Visual Studio Online または Team Foundation Server を使用した作業の追跡Tracking work using Visual Studio Online or Team Foundation Server
Visual Studio Team Foundation ServerVisual Studio Team Foundation Server を使用すると、プロジェクトの計画を作成し、これらのプロセスでアジャイル プロセス、フォーマル プロセス、またはそのバリエーションを使用しているかどうかを追跡できます。You can use Visual Studio Team Foundation ServerVisual Studio Team Foundation Server to plan and track your projects whether you use the agile process, the formal process, or a variation on those processes. プロジェクト計画の作成、その計画に対する進行状況の追跡、および必要な調整を行うことにより、リスクを軽減し、意図しない問題の発生を防ぎ、プロジェクトの費用を管理できます。By planning your projects, tracking your progress against the plan, and making necessary adjustments, you can reduce risks, avoid unpleasant surprises, and manage the cost of your projects.