マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。

目次

概要

  • 以前は、PCLのレベルのクロスプラットフォーム対応しか無かったが、
    .NET Coreの登場により、状況は大きく変わった。
  • マイクロソフトは、あらゆる環境に対応する開発ツール群を提供しようとしている。
    • Any Developer (どんな開発者にも)
    • Any App (どんなアプリケーションにも)
    • Any Platform (どんなプラットフォームにも)

この中の、Any Platform に対応するのが、.NET Core

俯瞰図

とりあえず雰囲気を掴むための最新の図。

.NETのクロスプラットフォーム対応

参考

  • 【特別企画】Windowsにこだわらない、サティア・ナデラのMicrosoft - クラウド Watch
    https://cloud.watch.impress.co.jp/docs/special/678748.html
    • .NETはマルチプラットフォーム化される

      こういった変化に対応し、さらにMicrosoft独自のテクノロジーを生かしていくためには、
      .NET Frameworkをスタンダードにして、マルチプラットフォームで動作できるようにしていく必要があるのだと思われる。

  • 「好みのデバイスで好みの開発言語を」--新しいVisual Studioの世界 - ZDNet Japan
    https://japan.zdnet.com/article/35092575/

    .NETスタンダードライブラリを構築して、.NETエコシステムの拡大を目指す。

用語

色々用語が出てくるので纏める。

CLI

  • 共通言語基盤(CLI : Common Language Infrastructure)
  • .NET Frameworkの基幹を構成する仕様(ECMA-335 および ISO/IEC 23271)
  • CLIは、言語やプラットフォームに依存しない環境を定義しており、
    様々な言語で書いたソースコードを他のプラットフォームでも使える。

概念

  • 共通型システム
    • CTS : Common Type System
    • プログラミング言語間で共通して用いられる型の集合
  • メタデータ
    • プログラムの構造に関する情報。
    • プログラミング言語上やツールなどから参照できる。
  • 共通言語仕様
    • CLS: Common Language Specification
    • 相互運用性のためのプログラミング言語に対する規定
  • 仮想実行システム
    • VES: Virtual Execution Evnironment
    • CLIに適合したプログラムの読込と実行。
    • メタデータを活用して動的に機械語を生成する。

参考

.NET Framework

皆さんご存知の.NET Framework。

BCL

  • BCL : Base Class Library(基本クラスライブラリ)
  • 全てのCLI言語から利用可能な共通言語基盤 (CLI) 標準ライブラリ

FCL

  • FCL : Framework Class Library
  • .NET FrameworkのBCLの意味で使用される、BCLのスーパーセット
  • Common Language Infrastructureで定義されている標準ライブラリの.NET Framework実装

PCL

  • PCL : Portable Class Library
  • PCLの後継は.NET Standard
  • Microsoft プラットフォーム間でコードを共有できる
    クロスプラットフォーム アプリ・ライブラリを開発可能。

.NET Core

  • Consoleアプリケーション : .NET Core
  • デスクトップ・アプリケーション : UWP
  • Webアプリケーション : ASP.NET Core

Mono

スマホネイティブ・アプリケーション : Xamarin

.NET Standard

.NET 実装の動作の統一性を確立、
クロスプラットフォーム対応を推進する。

移行

.NET Standardへの移行

.NET Coreへの移行

ASP.NET Coreへの移行

事例

移行性の評価

移行元

https://github.com/OpenTouryoProject/OpenTouryo/tree/02-20

ライブラリ

https://github.com/OpenTouryoProject/OpenTouryo/tree/02-20/root/programs/C%23/Frameworks/Infrastructure

サンプル

https://github.com/OpenTouryoProject/OpenTouryo/tree/02-20/root/programs/C%23/Samples

移行先

https://github.com/OpenTouryoProject/OpenTouryo/tree/SupportNetStandard2%26NetCore2

ライブラリ

https://github.com/OpenTouryoProject/OpenTouryo/tree/SupportNetStandard2%26NetCore2/root/programs/CS/Frameworks/Infrastructure

サンプル

https://github.com/OpenTouryoProject/OpenTouryo/tree/SupportNetStandard2%26NetCore2/root/programs/CS/Samples4NetCore

参考

.NET API Browser

https://docs.microsoft.com/en-us/dotnet/api/index

.NET Standard

https://docs.microsoft.com/en-us/dotnet/api/index?view=netstandard-2.0

.NET Framework

https://docs.microsoft.com/en-us/dotnet/api/index?view=netframework-4.7.1

.NET Core

https://docs.microsoft.com/en-us/dotnet/api/index?view=netcore-2.0

Mono (Xamarin)

Azure SDK for .NET

https://docs.microsoft.com/en-us/dotnet/api/index?view=azure-dotnet


Tags: :.NET開発, :.NET Core, :.NET Standard


添付ファイル: fileXNET.xlsx 38件 [詳細] fileXNET.png 97件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2018-05-09 (水) 22:07:52 (161d)