LoginSignup
6
6

More than 5 years have passed since last update.

2015世代のC# 参加メモ

Last updated at Posted at 2015-06-26

Visual Studio + Xamarinで始めるモバイルアプリ開発

speaker 池原 大然( @neri78 )
Microsoft MVP for Windows Platform Development

スライドはこちら

Visual Studio 2015はクロスプラットフォームに力を入れている。
インストール時に選択できる。

Xamarin

Xamarinを利用することにより C# + VisualStudio or XamarinStudioでAndroid,iOS,Windows向けの開発をすることができる。

iOS開発用にXamarin.iOS,Android開発用にXamarin.Androidがある。

Visual Studio Emulator for Androidという機能が2015から追加されており、VisualStudio上でデバッグできる。

Xamarin Android Player(Xamarinのライセンスが必要)

WindowsPhoneは元々VisualStudioが対応しているので、Xamarinは特に関係なし。
ただしPortable Class Library(PCL)を利用することでXamarin.iOSやXamarin.Androidとコードを共有できる。

まとめ

Xamarinを使用することで開発環境と開発言語が統一化できる。
PCLを利用することでビジネスロジックを共有できる。
UIはそれぞれ別に作る必要がある。

Xamarin.Forms

XAML

XAMLについてはこちら
ナレッジを流用できている。
データバインディングとテンプレートエンジンを利用することでコントロールとしての機能と外観を分離できる。

Xamarin.Forms(共有UI:C# or XAML)でUI部分を共有できる。
WPF/SLアプリを構築している感じで実装できる。
提供されているコントロールは基本的なものが多い。
→ 業務系アプリに向いている。

InfragisticsではよりリッチなUIを構築する為の製品を取り扱っている。
Infragistics Ultimate

新しい Visual Studio & .NET と新時代のアーキテクチャ

speaker 古賀 慎一( @surviveplus )
Microsoft MVP for Visual Studio ALM

スライドはこちら

新しいVisualStudio

VisualStudio2015 Windows用統合開発環境

VisualStudioCode
Windows,mac,Linuxで使用可能
軽量な高機能エディタ
Mac OS XやLinuxでASP.NET5の開発ができる
クロスプラットフォームOSSツールを使えばビルドも可能
ASP.NET5はWindows/Mac OS X/Linuxで動く

VisualStudioOnline ALM&DevOps用

実はVisualStudio2015もASP.NET5の開発はcodeと同様
内部的にはクロスプラットフォームOSSツールを呼び出している。

VisualStudio2015とVisualStudioCodeの違い
VisualStudio
 統合開発環境の完成形
 OSSの機能も自動で扱ってくれる
VisualStudioCode
 未完成でOSSとともに成長中
 OSSを理解している人向けの高機能テキストエディタ

ASP.NETはコンテナ型のアプリ

マイクロサービスとデコード

マイクロサービス
動いているサービスを止めずにアップデートは大変
全体で巨大1システムだと変更・リリースが難しい
 細かいサービスに分かれていれば部分的にリリースして差し替えしていくことができる
細かいサービスは仮想化ではなくDockerコンテナを使っていくとよいのでは。

データレイク
 これまで
  業務システムが目的のデータを収集、それを整形加工、分析へ
 これから
  IoTで大量に収集される生のデータ(ビッグデータ)
  リアルタイムでストリーム処理する流れ
  未整形データを一旦溜めて、整形加工して使用する流れ
 →Microsoftでサービスを提供している
  AzureML,AzureDataFactory,AzureDataLake...

VisualStudioとAzureの機能追加
 VisualStudioで開発するアプリ配置先
 VisualStudioで接続するアプリ先

VisualStudio2015 + VSO + Azure新機能

オープン化

クロスプラットフォーム

DevOps

コードレンズの強化

ソースコードをいつ?誰が?どう?変更したかをコードの近くに表示
(ここから担当者に連絡もできる(IM,メール,電話))
単体テスト結果確認、テスト実行もコードからできる

2015ではグラフィカルに「見える化」
開発者が情報収集するからツールが情報収集へ → 開発者が開発に集中できる

Light Bulb

コードをリアルタイムに分析、提案を表示
リファクタリング・コード分析がLight Bulbに統合
NuGetからコード分析ルールを取得できる
→ Azureのルールを取り込んだり、自分の独自ルールを追加できる

IntelliTest

Create Unit Test
 単体テストの自動作成(メソッドから作成機能が復活)
Run IntelliTest
 コードカバレッジ100%テストパターンを作成

接続済みサービス&Azuer AD認証の構成

VisualStudioからギャラリーを検索

Azure Active Directory認証の構成

標準でAzure ADの構成機能

タイムラインツール・診断ツールとIntelliTrace

IntelliTrace
 問題が起こるまでを録画して再生するサービス 変数の変化やイベントを確認できる

Visual Studio Onlineの新しいBuild

自動ビルド・自動テスト・自動リリースができるようになるかも。

Application Insights

モバイルアプリ&Webアプリの問題の検出やクラッシュの解析

Compiler Platform: コード解析とC#の未来

speaker 岩永 信之( @ufcpp )
Microsoft MVP for .NET

スライドはこちら

C# 6.0

過去のスライド参照
正直なところ華はない

nameof演算子

IDE前提の機能
識別子を文字列として取得できる機能
IDEの中で真価を発揮する
もともとC#はIDE前提で効率を高めている言語
→ nameof演算子はまさにこの傾向を強めている

.NET Compiler Platform

C#コンパイラーの作りなおし
単なるコンパイラではなくプラットフォーム化
→ 中間データをホワイトボックス化し、拡張性の提供

標準で搭載されているコード解析に加え、コード解析の追加を誰でも作れるようになった
アナライザー(analyzer),コード修正(code fix)を作れる

自作と配布

自作にはVisual Studio SDK,.NET Compiler Platform SDKが必要

配布にはVSIX(Visual Studio Extension)形式かNuGet形式の2種類がある

拡張である意味

特定分野での使用やプロジェクトでカスタマイズが必要な場合、経験則的なチェックが必要な場合、ライブラリ固有事情を汲む場合(Code-awareライブラリ)には有用

いくつか紹介

将来の話 〜C#7.0

IDE連携≠VisualStudio連携
解析用の新構文が欲しい
null非許容参照型やメソッドコントラクトもアナライザーベースになるかも

6
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
6