【勉強会】dotnetConf 2016 Japanに行ってきた
dotnetConf 2016 Japanに行ってきましたので、メモ書き。
基本的にはリリースされたばかりの.NET Coreが中心。
.NET Core公式
.NET - Powerful Open Source Cross Platform Development
他、今猛烈に押されている感じのXamarinなどなど
dotnetConf 2016 Japan 開催にあたって ~ .NET の今と未来
井上さん(&もしかしたら Drew Robbins)
.NET CoreのWeb appのデモをしてくれました。
WindowsのVisual Stuidoで編集して、Azure App Serviceにデプロイ
Githubを展開元に指定して、継続的なデプロイ環境を構築。
そのあと、MacでGithubからソリューションを持ってきたあと、VS Codeで編集
Mac + VS Codeでここまでスピーディに編集できるのなぁ……。
しかも、ちゃんとデバッグできてる……!
セッティング情報、Config情報がJsonになってるのね。
Bower(JavaScript系ライブラリの管理)もデフォルトで組み込まれている
yosuke-furukawa.hatenablog.com
Azure app serviceの展開元でGitHubを指定することで、
GitHub のWeb Hookを受け取って、自動的にAzure Web Appsにデプロイされるというのは知らなかった。
Mac側ではVisaul Studio Codeで編集
Mac上で変更、デバッグしてGitにPush。相当.NETの世界が広がるなぁ。
デモで紹介していたHTML・CSSのコーディング支援アドオン Emmet
Emmet — the essential toolkit for web-developers
visualstudiogallery.msdn.microsoft.com
セッション2.NET Standard
岩永信之さん
マイクロソフトによるXamarin買収や.NET CoreのRTMで、.NETがますます広い範囲で安心して使えるようになりました。一方で、内部実装が異なる.NET実行環境がいくつかある状態になっています。これら複数の実行環境で同一のライブラリを使えるように.NET Standardという新しい仕組みができました。今回はこの.NET Standardがどういうものか、どういう仕組みで動いているか、これまでとどう変わるかについて説明します。
クロスプラットフォームを意識したライブラリの作り方。.NET standardとは?
.NET CoreではWindows 前提なものを除外されているとのこと。
やっぱり今までの.NET FrameworksのBase LibraryではもともとのWindowsの依存がそれなりにある
アプリのコードには再利用性は求めないが、Jsonや数値計算などのライブラリは、そりゃあ共通で使いたいよね。
なので、どのプラットフォームからでも使うライブラリをどう作るべきか? というところで、.NET standardのお話しとなりました。
.NET standardで、Mono(Xamarin)でも、Coreでも、Frameworkでも動かせるライブラリを作れる
というよりも、この.NET standard に準拠することで、クロスプラットフォームなライブラリが構成できる、ってことかな
Nugetパッケージで提供される
まあ、確かにアプリ開発者側として、意識するものはあまりないよね。
ちゃんとNugetにアップされているものが、このスタンダードに準拠していれば、Xamarinでアプリを作る際などにも、意識することなくライブラリが使えますよと。
いつだったか、JsonのライブラリがWindows10アプリで使えないことがあって、困ったな。
Xamarinの新しい話とMonoの深い話
榎本さん+ちょまどさん
本家dotnetConf 2016、2日目のキーノートは、Monoチームを率いてきたXamarinのMiguel de Icazaによって行われました。Monoがその長い歴史のうちに独自に発展させてきた技術をもとに、Xamarinはどのような新しいことを行おうとしているのか、彼のキーノートを振り返りながら解説します。
基本的には概要の通り、本家dotnetConfのMiguelさんのキーノート解説。
技術的にかなり濃ゆいお話し。というかほとんどついていけず。ただ、ちょまどさんに合わせていろいろと榎本さんが細かく解説してくれて大変助かった!
今回はcycle7リリースの紹介。SkiaというGoogleが作っているグラフィックライブラリへの対応や
プロファイラー、Inspector周りのお話し。ios10 and Android Nへの対応など。
特に面白かったのは、Microsoftに買収された最大の恩恵とも思われるアップデート周り
Roslyn、MS Build、Debug Engine、Language Serviceへの対応に関するお話し。
今までXamarinが頑張って自前で作っていたものが、MSの資産をベースに組み込まれ始めた!
ただ、個人的にはMSテクニカルのバックグラウンドが知れて、Xamarin関係なく、大変面白かった。
RoslynやDebug Engineがどのように動いているのか、榎本さんとちょまどさんの掛け合いで、すごくわかりやすかった。
MVVM Done Right with Xamarin.Forms and Prism
Brian Lagunas
「It’s no secret that developing MVVM friendly Xamarin.Forms applications can be challenging to say the least. It’s messaging center is static, it’s dependency service is static, its system for showing alerts requires a page instance, no built-in logging, and the most important issue of them all is that its entire navigation system depends on page instances. Where does this leave us? It leaves you with a not-so MVVM friendly application with static references and Page objects scattered throughout your ViewModels. This makes things much more difficult to test, maintain, scale, and not to mention violates just about every MVVM principle out there. Join Brian Lagunas in this session to learn how we can remove the static classes, remove the page references, and remove the code-behind by leveraging the features of Prism for Xamarin.Forms to create pure MVVM Xamarin.Forms applications with logging, commanding, event aggregation, IoC, MVVM, dialog services, and truly decoupled navigation in your Xamarin.Forms applications.
このセッションでは Brian Lagunas が静的クラス、ページ参照やコードビハインドを Prism for Xamarin.Forms の機能を利用して取り除き、MVVM実装の様々な利点を備えた純粋な MVVM Xamarin.Forms アプリケーションを構築する方法を解説していきます。
ごめんなさい。おなかが減って、聞かなかった。
.NET Core on RHEL
@tanaka_733
.NET CoreはWindowsだけではなくOS X やLinux上でも動作します。Linuxは複数ディストリビューションが動作対象になっていますが、中でもRHELはRed Hatによる.NET Coreのサポートが受けられます。Visual StudioがないLinuxでどのように開発し、どのように動くのか。今回はRHEL上でのデモを交えながら説明します。
ごめんなさい。RHELに興味が無くて聞かなかった。
ASP.NET Core
しばやんさん
TechEd NA 2014 で ASP.NET vNext として発表されてから丸二年、ようやく ASP.NET Core 1.0 の RTM がリリースされます。これまでの ASP.NET とは大きく異なる仕組みで動作する ASP.NET Core の基本と、みんな大好きな Core MVC 1.0 について解説します。
ASP.NET Coreの濃ゆい機能紹介!
■ASP.NET Core
HTTPのレイヤーから新規開発?
既存のアプリケーション(もともとのASP.NET)との互換性は無い!
System.Webは使えない!
圧倒的にViewが書きやすくなった?
RazorじゃなくてTag Helpers!
Introduction to Tag Helpers — ASP.NET documentation
マークアップの構造を崩さないので、検証が動作が可能と
Nugetパッケージの対応がちょっと難点か
ActionResult => IActionResultへ変更 MVCとWeb APIのresultで一貫性ができたのね
View Components View側で非同期処理の記述が可能。これはちょっと面白い。
■Entity Framework Core
まともになった!? まあ、でも基本はあまり変わっていない漢字。
.NET Core/VS/VSCode他ツール類
18:35 - 19:20
ぼんぷろ
.NET Core 1.0 RTMと同時に、新しいSDKやTooling Preview 2などもリリースされました。このセッションでは、.NET Coreを用いたアプリケーション開発を支える環境やツール群をおさらいします。