C#
C#言語とは
C#は、「Microsoft .NET Framework」環境向けのソフトウェアを開発するためのオブジェクト指向プログラミング言語です。
つまり、「.NET Framework」という実行環境上で実行することを前提としたプログラミング言語であるといえます。
言語の特徴としては、C言語/C++言語をベースに拡張しつつ、Javaの影響を大きく受けている言語と言えます。
「.NET Framework」とは
「.NET Framework」とは、Microsoft社が2000年に発表した、アプリケーションの開発環境及び動作環境のことです。
「.NET」対応のアプリケーションは、「.NET Framework」がインストールされている環境であれば、OSなどに依存せず動作することができます。
「.NET Framework」における開発から実行までの流れは以下の通りとなります。
- ソースコード(C#やVBなどの.NET対応言語)を記述する。
-
ソースコードをコンパイルする。
コンパイラはソースコードを共通中間言語(CIL:Common Intermidiate Language)に変換します。
これは、言語や環境に影響されずに実行するための仕組みです。
※CILはMSIL(Microsoft Intermediate Language)とも呼ばれます。 -
中間言語を仮想実行環境(VES:Virtual Execution Environment)で実行します。
実行に際して、基本クラスライブラリ(BCL:Base Class Library)を利用して、ネイティブコード化します。
※VESはCLR(Common Language Runtime:共通言語ランタイム)とも呼ばれます。
C#文法
基礎文法
WPF (Windows Presentation Foundation)
MVVMについて
- WPF_ViewModelデータバインディング
- WPF_MVVM構造について
- WPF_INotifyPropertyChangedインターフェース
- WPF_ICommandインターフェース
- WPF_IDataErrorInfoインターフェース
XAML
WPF Prism
WPF/MVVMにおいて、.NET標準には最低限の仕組みしか組み込まれていないため、単調なコードを何度も書くことを強要されます。(WPFはそもそもMVVMを書く基盤がないのです・・・。)
なので、効率的な開発には、MVVMパターンアプリケーション開発を支援するPrismなどのMVVM基盤ライブラリが必要となります。
ただし、Prismはバージョンによって大きな変更があるため、最新情報については
prismlibrary
や
prismlibraryサンプル集
を追いかける必要があります。
- WPF_Prism_BindableBase
- WPF_Prism_DelegateCommand
- WPF_Prism_InteractionRequest
- WPF_Prism_CompositeCommand
- WPF_Prism_ErrorsContainer
- WPF_Prism_InvokeCommandAction
WPF レシピ
C#の参考リンク
MSDN Code Recipe - NET 開発に関するサンプル コード集