Silverlight をインストールするには、ここをクリックします*
Japan変更|すべてのMicrosoft のサイト
MSDN
|MSDN ライブラリ|デベロッパー センター|ダウンロード情報|開発ツール製品|コミュニティ|ご意見・ご要望|サイトマップ
MSDN Home  
MSDN Home > .NET Framework ホーム > 共通言語ランタイム > はじめに

基本クラス ライブラリ コミュニティ

基本クラス ライブラリ (BCL) は、ASP.NET アプリケーション、Windows フォーム アプリケーション、あるいは Web サービス (英語) など、開発するすべてのアプリケーションの基盤となる部分を提供します。BCL は、一般的に、ランタイムとのやり取りを行うメイン ポイントとして機能します。BCL には、次のようなクラスがあります。
名前空間説明
Systemこの名前空間には、プログラミングに必要な重要サポートがすべて含まれます。たとえば、基本型 (String、Int32、 DateTime、 Boolean など)、重要な環境サポート、および算術関数などがあります。
System.CodeDomその場でコードを作成し、それを実行することを可能にするために必要なすべてのサポートが含まれます。
System.CollectionsSystem.Collections 名前空間には、リスト、キュー、ビット配列、ハッシュテーブル、およびディクショナリなど、さまざまなコンテナを定義するインターフェイスおよびクラスが含まれます。
System.Diagnosticsアプリケーションの診断に必要なすべてのクラスが含まれます。たとえば、イベント ログ、パフォーマンス カウンタ、トレース、およびプロセス管理 API などです。
System.Globalizationこの名前空間には、グローバリゼーションの基本的なサポートが含まれます。フレームワークの他の部分の全体から使用されます。
System.IOどこからも使用でき、基本となる Stream サポートが含まれます。特に、FileSystem (File および Directory の操作クラスを使用する) SerialPort、および Decompression を対象とします。
System.Resourcesアプリケーションが複数の言語に対応し、現在のユーザーが選択している言語に基づいて適切なテキストを表示できるようにするために使用されます。
System.Textこの名前空間には、エンコードおよび Stringbuilder のサポートが含まれます。
System.Text.RegularExpressionsこの名前空間には、文字列データの堅牢な解析およびマッチングを実現するための正規表現サポートが含まれます。
  


特集記事

CLR Exception and Memory Management (英語)
このダウンロード可能プレゼンテーションには、例外の使用に関するベスト プラクティスおよび問題の概要が含まれています。また、IDisposable パターン、ファイナライザ、メモリ圧迫、HandleCollector、さらに、なぜ using ステートメント (VB では Using) がよく使用されるのかなど、メモリ管理に関するさまざまな問題についても説明されています。基本的な例外およびメモリ管理についての概要としてすばらしい内容となっています。  

基本クラス ライブラリ (BCL) よく寄せられる質問 (FAQ)
基本クラス ライブラリに関して、よく寄せられる質問とその答えが掲載されています。  

Base Class Library Code Samples Base Class Library Code Samples (英語)
.NET Framework 基本クラス ライブラリを学習するためのサンプルがダウンロードできます。  

基本クラス ライブラリ チームの紹介
質問に答えるのは誰でしょうか。そしてその人は、マイクロソフトで、質問に答える以外にどのようなことをしている人なのでしょうか。 このページでは、BCL チームのメンバを紹介します。   

Base Class Library PDC Presentation
これは、BCL について PDC 2003 で公開されたプレゼンテーションです。このバージョンには、メモやコメントが含まれており、追加の情報がありますので、PDC に参加された方もぜひダウンロードしてください。プレゼンテーションでのデモは、すべてサンプル ページから入手可能です。  

変更点

Breaking Changes in a Managed World
マネージ コードに加えられた非互換変更には大きな関心が寄せられています。この中では、下位非互換、バイナリ非互換、およびソース非互換などの非互換変更について、考えられるさまざまな定義が説明されています。リストには、互換性のないさまざまな変更点と共に、互換性のある変更点も、そのように明記されて含まれています。広範囲にわたって、非互換変更の例が説明されています。これらの定義および例は、フレームワークを新しいバージョンにアップグレードするときに、一般的にどのようなことを避けるべきかを理解するために役立ちます。   

MSDN TV: Identifying and Mitigating Managed Breaking Changes (英語)
このエピソードは、マネージ コードの非互換変更に関する問題を中心に説明しています。ここでは、非互換変更の背後にある意図および注意する必要のある主な問題が取り上げられています。また、一見、影響のないように思える変更点により、クライアント コードが動作しなくなる様子を示すデモンストレーションも多数含まれています。   

CodeDom

CodeDom Test Suite
このスイートは、.NET Framework チーム内で CodeDom をテストするために使用されています。CodeDom テスト スイートには、カスタム コード プロバイダの作成者が、そのプロバイダから適切にコードが生成され、コンパイルされるかを検証できるテストが集められています。各テストは、コマンド ラインで、事前に作成された CodeDom ツリーを受け取り、それに提供されているプロバイダを使用してツリーから生成およびコンパイルします。その後、テストは、コード プロバイダから生成されたアセンブリを、リフレクションによって検証します。また、各 CodeDom ツリーの横には、ソース コード コメントとして、そのツリーから生成された C# コードも提供されます。これは、どの CodeDom 構成体が、どの C# 構成体と対応するかを確認するために役に立ちます。

このテスト スイートは、Whidbey CodeDom 機能のテスト、テスト ケースの拡張性、インターフェイスの改良、およびソース コード コメントの点について更新されてきました。フィードバックは、The Base Classes Team (英語) までお寄せください。   


MSIL Code Provider (英語)
Microsoft Intermediate Language (MSIL) コード プロバイダは、CodeDom ツリーを受け取り、MSIL 構文を生成します。MSIL コード プロバイダは、1.1 適合仕様に含まれる CodeDom 要素のすべてを生成します。MSIL コード プロバイダは、V1.1 で出荷されたほとんどの CodeDom 型についてコードを生成します。   

Subset Code Provider (英語)
この CodeDom プロバイダは、C# コード プロバイダと同じように CodeDom ツリーを使用します。ただし、サブセットに含まれないノードが検出された場合には、生成されるコードに #error を出力します。これは、コードのサブセット適合を満たしていない部分を CodeDom ツリー ビルダに警告します。  

デリゲートおよびイベント

イベントの発生とイベントへの応答
この記事では、Visual Basic .NET でのイベントの発生と応答、および Visual Basic .NET が備える、イベントとイベント ハンドラの関連付けにおける柔軟性の活用方法について説明します。イベントとイベント ハンドラの実行時の動的関連付けについても説明されています。   

Delegates in .NET: A Primer on Creating Type-Safe References to Methods in Visual Basic .NET (英語)
Visual Basic .NET に新しく加えられたデリゲートは、メソッドへの、タイプ セーフであり、オブジェクト指向である参照です。この記事では、デリゲートの概要、それらの利点、および使用方法を説明します。   

列挙

Extolling the Virtues of Enumerated Types (英語)
Jeffrey Richter が、共通言語ランタイム (CLR)、列挙される型について説明します。  

ジェネリック

Introducing Generics in the CLR (英語)
Jason Clark が、ジェネリックを紹介し、その将来像およびジェネリックがコードにもたらす利益を説明しています。ジェネリックは、間もなく、共通言語ランタイム (CLR) に含まれるようになります。  

More on Generics in the CLR (英語)
Jason Clark が、ジェネリックに関する CLR の内部的な動作を詳細に説明します。Jason は、同時に、型の制約、ジェネリック クラス、メソッド、構造体、および予定されるジェネリック クラス ライブラリについても説明しています。  

The Design and Implementation of Generics (英語)
この記事は、ジェネリックの動作の概要を説明します。また、機能の内部に関する具体的な詳細についても記述しています。  

グローバリゼーション

Coding Best Practices Using DateTime in the .NET Framework (英語)
時間に関する開発およびテストの重要なシナリオを確認しながら、.NET ベースのアプリケーションおよびアセンブリでは DateTime 型を使用してプログラムを作成することを推奨しています。  

Let Your Apps Span the Globe with Windows Forms and Visual Studio .NET (英語)
Microsoft .NET Framework によって国際的なアプリケーションの構築が可能になるだけでなく、Visual Studio .NET などの多くのツールによって、それがとても簡単になります。この記事では、Windows フォーム アプリケーションの全体を国際化に対応させるために使用できる、.NET 内の国際化対応機能および実際のツールを紹介します。  

ライブラリ分析

LibCheck (英語)
LibCheck は、アセンブリの 2 つのバージョンを比較し、その差異を判別できます。差異は、'除去された' API および '追加された' API を組み合わせて報告されます。このツールは、API の調査のみに限定されます (たとえば、動作の変更はチェックできません)。また、パブリックである差異、あるいは '非互換' と考えられる変更のみを比較します。このツールは、アセンブリのバージョン間の差異をすばやく判別するために使用できます。また、アセンブリのクライアントにとって非互換となる変更を加えていないことを確認するためにも役立ちます。このツールの説明および用途は、zip ファイル内の 'libcheck tool specification' ドキュメントに記述されています。   

メモリ管理

MSDN TV: Resource Management Using the IDisposable Pattern (英語)
マネージ メモリの管理においては、CLR のガベージ コレクタが大きな役割を果たしますが、開発者はアンマネージ リソースを扱うこともよくあります。この MSDN TV エピソードでは、アンマネージ リソースを扱うための信頼性の高い手段である IDisposable のパターンを紹介します。  

Regex

Character Class Subtraction Specification (英語)
BCL チームは、.NET Framework の次のリリースに、文字クラスの減算サポートを組み込む予定です。この仕様は、この機能の設計および影響範囲について詳細に定義しています。   

文字列

Improving String Handling Performance in .NET Framework Applications (英語)
.NET アプリケーションの文字列処理を System.Text.StringBuilder クラスを使用して最適化する方法を説明します。サンプル コードを確認すれば、その方法が簡単であることがわかります。また、アプリケーションを実行したときにどれくらい速くなるのかを示すテスト結果も提供されています。   

Writing Culture-Safe Managed Code (英語)
この記事では、複数のロケールで実行するアプリケーションを作成する開発者が、言語が変わってもコードが正常に機能するようにするために考慮する必要のある重要な問題を説明しています。  

スレッド化およびタイマ

The CLR's Thread Pool (英語)
アプリケーションのパフォーマンスを向上させるために、共通言語ランタイム (CLR) スレッド プールを使用する方法を説明します。   

Implementing Coroutines for .NET by Wrapping the Unmanaged Fiber API (英語)
コルーチンは、プロシージャの途中で実行を停止し、値を戻し、停止した場所から再開することができるので、プロセッサのオーバーヘッドを抑え、冗長性を削減できます。この記事では、Fiber API および C++ のマネージ拡張を使用して、コルーチンを .NET Framework に実装する方法、および他の .NET 対応言語でそれらを簡単に使用する方法を説明しています。また、単一の OS スレッド上で複数のマネージ スレッドを実行するためのランタイム ホストの高度な使用についても説明されています。   

Comparing the Timer Classes in the .NET Framework Class Library (英語)
有効なタイマ駆動マネージ コードを作成するためには、.NET スレッド化モデルのプログラムの流れおよびその細部を明確に理解しておくことが必要です。.NET Framework クラス ライブラリには、System.Windows.Forms.Timer、System.Timers.Timer、および System.Threading.Timer の 3 種類のタイマ クラスがあります。これらのクラスは、それぞれ異なる状況での使用を想定して設計され、最適化されています。この記事では、3 つのタイマ クラスを検証し、どの状況で、どのクラスをどのように使用すればよいかがわかるように説明されています。  

トレース

トレース ヘルパ ツール (予定)
V2.0 のトレースには、多くの新機能が追加されています。CLR チームのテスタ グループは、このトレース機能を使用するツール (TraceHelper.exe) を一丸となって開発しました。以下は、このツールの詳細と、ダウンロード可能な zip ファイルです。これは、.Net Framework V2.0 の Beta2 で作成されています。

TraceHelper は、.NET トレースを使用するアプリケーションで使用できる便利なツールです。このツールには、Whidbey のトレースの新機能を活用する次のような機能があります。

このツールは、アプリケーション構成ファイルのトレース セクションを作成あるいは変更します。また、トレース出力ファイルを読み込み、フィルタ処理をして必要な部分のみにすることにより、アプリケーション内の問題点をすばやく特定します。 このツールは、XmlWriterTraceListener、DelimitedListTraceListener、および DefaultTraceListener からのトレース出力をサポートします。

  • アプリケーションの実行中のトレースの表示
  • トレース レコードのフィルタのカスタマイズ
  • 大量のトレース レコードを読み込む機能
  • トレース レコードをグラフ コントロールで表示する機能
  • トレースのソース情報のアプリケーションからの読み取り
  

Top of Page Top of Page


Microsoft