Upgrade to Pro — share decks privately, control downloads, hide ads and more …

de:code 2018 振り返り

tfukumori
July 21, 2018

de:code 2018 振り返り

de:code 2018 で聞いてきたイベントの振り返り

tfukumori

July 21, 2018
Tweet

Other Decks in Business

Transcript

  1. 各Frameworkについて .NET Framework Windows上で動作する。 .NET Core Windows、Mac、Linux上で動作する。ただし、.NET Core 3.0で実 装予定のUWPは、Windows上でしか動かない。

    Xamarin Windows、iOS、Android、Mac上で動作する。 .NET Standard .NET Standardは、各フレームワーク間の共通ライブラリの実装に使 ⽤する。
  2. .NET Core 3.0 2018年後半にはPreview版が出てくる。 Desktop Packs Desktop Packsが実装される。 Desktop Packsを追加することで、Windows

    OSの.NET Core上で WPFのアプリケーションが動くことになる。 Microsoft ブログ https://blogs.msdn.microsoft.com/dotnet/2018/05/07/net-core-3- and-support-for-windows-desktop-applications/
  3. デスクトップアプリケーションで、なぜ.NET Core が必要となるのか Side by Sideで実⾏されるため、環境依存が少ない。 .NET Framework ライブラリのグローバル参照 or

    ローカル参照を選 択することができる。これはコンパイル時に選択することになる。 最新のAPIは、.NET Coreに先に実装されるため、.NET Coreを使⽤ することで、最新機能を利⽤しやすくなる
  4. Xamarin Xamarin.FomrsがアップデートでCSSに対応 Android Emulator for Hyper-V 対応(⾼速化) Xamarin.Forms on the

    Web Web Assemblyとしてコンパイルすることで、ブラウザ上で動作さ せることができる ソース︓http://github.com/praeclarum/Ooui デモ︓http://ooui.mecha.parts/ 解説︓https://www.telerik.com/blogs/xamarin-forms-on-the-web
  5. Blazor Browser + Razor = Blazor ブラウザ上に.NET実⾏環境ができたということ(UIフレームワーク は提供していない) すべてのブラウザーで動作させることができ、Reactiveなどを知ら なくても、.NETでクライアント側のWeb

    UIをビルドすることができ る。 Web Assemblyとして実装するため、ブラウザにプラグインなどは不 要。 クライアントとC#でのコードの共有、C#の強く型付けされた開 発、.NETの安定性と⼀貫性を受けた開発が実現できる。
  6. この1年の.NET Core .NET Coreも⽣みの苦しみを抜けた状況となっている。 どう⾒てもWindows⽤、Coreにいれるの︖な感じの互換パック Windows Compatibility Pack パフォーマンス、.NET Core

    2.0、2.1にするだけで数割⾼速に C# 7.X活⽤する、細かい最適化多々 ランタイムに⼿を⼊れないと実現無理な新機能の作業開始 C# のコンパイル上のトリックではなくて、.NETのコアに⼿を⼊れ なければいけない機能についても、実装して来ている。
  7. 新機能の実装 新機能については、まずは、.NET Coreに実装している状況となって いる。 .NET Frameworkへの実装は、.NET Coreから.NET Frameworkへの移 植という形となるため、以下のような問題がある。 .NET

    Frameworkに移植されるまでに時間がかかる パフォーマンスについては、問題が出てくる。.NET Coreのほうが 早いという状況がありえる .NET FrameworkはSide by Sideではないので、環境依存となる
  8. .NET Coreのほうがメインストリームに 今後は、.NET Coreの⽅がメインストリームとなる。 .NET Core 3.0 Desktops Packsで実装予定のGUIを使⽤したアプリケ ーションでも、.NET

    Coreの恩恵(パフォーマンス向上、side by side インストール)などがある。 1つ注意点としては、クロスプラットフォームだからといって、 Windows以外でWPFが使えるようになるわけではない。その⽬的 ならば、Xamarinとなる。
  9. .NET Frameworkから.NET Coreへの移⾏ .NET Frameworkから、.NET Coreについては、ターゲットフレーム ワークを変えるだけでビルドできる、という状態にしたい。 .NET Core 3.0では、Desktop

    PacksでWinfows Forms、WPF、UWP が動作する予定 https://blogs.msdn.microsoft.com/dotnet/2018/05/07/net-core-3- and-support-for-windows-desktop-applications/ 実際、WPFのGUIを.NET Coreに持ってきてテストする、ということ はしているが、⼤体動く。 動くからといっても、スレッドの挙動の違いとかではまる可能性あ り。たとえば、パフォーマンスを上げるとロックのタイミングが変 わって破壊的変更につながる、ということはあり得る。
  10. リソース The .NET Language Strategy https://blogs.msdn.microsoft.com/dotnet/2017/02/01/the-net- language-strategy/ Digging Deeper into

    the Visual Basic Language Strategy https://blogs.msdn.microsoft.com/vbteam/2017/02/01/digging- deeper-into-the-visual-basic-language-strategy/ ⽇本語記事 https://www.infoq.com/jp/news/2017/03/vb-strategy https://www.infoq.com/jp/news/2017/02/strategic-net