プログラミング論 第5回 担当:山口崇志 C#における他ライブラリとの連携 http://www.edu.tuis.ac.jp/~tyamagu/pl/ 東京情報大学 ESCLab. Dynamic Link Library 動的リンクによって利用されるライブラリ 利用頻度の高い機能を共有・再利用可能 動的リンク(Dynamic Link) モジュール化されたプログラムを実行時に結合(Link)する モジュール化 アプリケーション全体を機能毎に分割すること http://www.edu.tuis.ac.jp/~tyamagu/pl/ 東京情報大学 ESCLab. プログラムのモジュール化とリンク http://www.edu.tuis.ac.jp/~tyamagu/pl/ 東京情報大学 ESCLab. プログラムのモジュール化とリンク http://www.edu.tuis.ac.jp/~tyamagu/pl/ 東京情報大学 ESCLab. C#におけるdll利用 C#におけるdll作成 C#におけるdll利用 C#におけるCLI準拠のdll利用 C#における非CLI準拠のdll利用 共通言語基盤(CLI: Common Intermediate Language) .NET Frameworkの基幹を成すプログラミング言語の相 互運用する為の規格 共通言語システム (CLS: Common Language System) 共通型システム (CTS: Common Type System) 一般的に変数型は言語毎に定義されているのに対し、共 通の型を定義することでプログラム間のデータのやり取 りを円滑にする。 http://www.edu.tuis.ac.jp/~tyamagu/pl/ 東京情報大学 ESCLab. .NET Frameworkと開発実行フロー http://www.edu.tuis.ac.jp/~tyamagu/pl/ 東京情報大学 ESCLab. C#のデータ型 予約語 sbyte byte short ushort int uint long ulong char float double bool decimal string 実態 System.SByte System.Byte System.Int16 System.UInt16 System.Int32 System.UInt32 System.Int64 System.UInt64 System.Char System.Single System.Double System.Boolean System.Decimal System.String http://www.edu.tuis.ac.jp/~tyamagu/pl/ 説明 符号付き8ビット整数 符号なし8ビット整数 符号付き16ビット整数 符号なし16ビット整数 符号付き32ビット整数 符号なし32ビット整数 符号付き64ビット整数 符号なし64ビット整数 文字型 単精度実数 倍精度実数 論理型(falseとtrueのみ) 10進型 文字列型 Javaの場合 byte short int long char float double boolean String 東京情報大学 ESCLab. Hello Worldのモジュール化 MVCモデルで記述した Hello Worldをベース にモジュール化 View以外をdll化 http://www.edu.tuis.ac.jp/~tyamagu/pl/ 東京情報大学 ESCLab. 演習:C#におけるCLI準拠のdll利用 作成済みdllをダウンロードしこれを利用したGUI を作成する。 1. 授業用ページからdllをダウンロード 2. 新規プロジェクトの作成 Windows フォームアプリケーション 3. 参照設定 参照の追加でダウンロードしたdllを選択 4. GUIの作成とソースコードの編集 http://www.edu.tuis.ac.jp/~tyamagu/pl/ 東京情報大学 ESCLab. 演習:C#における非CLI準拠のdll利用 DllImportにより非CLI準拠dllのメソッドと内部 のメソッドの対応を記述する http://www.edu.tuis.ac.jp/~tyamagu/pl/ 東京情報大学 ESCLab. 課題 通常課題 MVCモデルで記述したHello Worldをベースにモジュー ル化を行い、HelloControllerとHelloModelクラスを含 むdllを作成せよ。 ヒント 新規プロジェクトからクラスライブラリを選択する ソリューションには複数のプロジェクトを追加できる DLL用プロジェクト デバッグViewer用プロジェクト デバッグ用のViewer側では参照にプロジェクトを追加 http://www.edu.tuis.ac.jp/~tyamagu/pl/ 東京情報大学 ESCLab. 最近のC#やWindows開発について Windowsアプリケーションの開発 Windows 8+Windows Phoneへ MSDNライブラリ http://msdn.microsoft.com C#の動向 クロスプラットフォーム用言語に Mono Develop http://monodevelop.com Unity http://japan.unity3d.com Play Station Mobile Dev Portal https://psm.playstation.net XNA Game Studio http://www.edu.tuis.ac.jp/~tyamagu/pl/ 東京情報大学 ESCLab.
© Copyright 2024 ExpyDoc