どっちの vs ショー...de:code 2019 dt06 どっちのvs ショー 伝統のvisual studio...

50
de:code 2019 DT06 どっちの VS ショー 伝統の Visual Studio 2019 、人気の Visual Studio Code 日本マイクロソフト株式会社 クラウドプラクティス技術本部 クラウドソリューションアーキテクト 大川 高志 平岡 一成

Upload: others

Post on 20-Jun-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

de:code 2019 DT06

どっちの VS ショー伝統の Visual Studio 2019、人気の Visual Studio Code

日本マイクロソフト株式会社

クラウドプラクティス技術本部 クラウドソリューションアーキテクト

大川高志 平岡一成

Intro: 本セッションのゴール

デモを中心とした構成にてお伝えします

Visual Studio 2019 Visual Studio Code

言語は .NET

サーバーサイド実装

元 Visual Studio サポート

大川高志 平岡一成

言語は JavaScript

フロントエンド実装

生粋の OSS 界隈

VS

Visual Studio 2019 Visual Studio Code

Visual Studio 2019 Visual Studio Code

Visual Studio 2019 Visual Studio Code

始まる前に…座席のデフラグにご協力ください!

普段、どちらをお使いですか?

2003 2006 2008 2010 2012 20131998

.NET Framework

2015 2017

15.7 15.8 15.9 16.1

May ‘18 Nov ‘18

16.0

General Perf & Reliability Improvements

Public Preview of Live Share

Step-back debugging

Full C++ 17 conformance

ClangFormat support

Python debugger engine

Better XAML editing for Xamarin

iOS provisioning in single-click

Reorganized mobile project templates

Streamlined Update experience

Install to mixed locations (SSD optimization)

New C# refactorings

TypeScript 2.8

TypeScript refactorings

Source Link Authentication

Linux deployment for Azure App Service

Key Vault Connected Service

Aug ‘18

Visual Studio Releases

General Perf & Reliability Improvements

Multi-caret editing

Faster git branch switching

Faster unit test execution

TypeScript 3.0

F# 4.5 with Span<‘T>

Download then install

Pause performance profiling

Productivity: Code cleanup, keyboard profiles

Launch snapshot debugger from publish page

C++ Just My Code

Support for Xcode 9.4

Google’s Android emulator SxS with Hyper-V

Split view in Xamarin.Android designer

Xamarin.Forms Previewer

Cross-language debugging for Python 3.7

Native support for Language Server Protocol

Secrets for ASP.NET .NET Fx

General Perf & Reliability Improvements

Step back for C++

.NET Core Tooling

Installation Config Import & Export

Tools for UWP update

Sharepoint 2019

Better support for NuGet Debugging

C++ IntelliSense for Linux

UWP Desktop Bridge for ARM64 C++

Updated Vue.js templates

Support for Jest unit testing framework

Xamarin support for Xcode 10

Xamarin.Android Build Performance

Authenticated package feeds

Lock in repeatable builds for NuGet

New embeddable licenses for NuGet

NuGet client policies for trusted packages

Apr ‘19General Perf & Reliability Improvements

Real-time collaboration with Live Share

C# 8.0, F# 4.6, TypeScript 3.0

Improved performance for branch switching

New start window

Git-first flows

Updated and streamlined look and feel

Improved Search

Document health

One-click code cleanup

Updates downloaded in background

Create new projects with search and tags

New refactorings and code fixes

Extensions status

Control installation mode for updates

Search in debug windows

Out of process C++ debugging

Git Stash

TodayGeneral Perf & Reliability Improvements

Per Monitor Awareness

New codefixes for C#

Nuget.org as symbol server

In-editor documentation for CMake

CMake for CLang / LLVM

C++ 20 conformance

Improved NuGet package debugging

Source Link Improvements

Solution view selector

App Installer templates

祝!! Visual Studio 2019 ローンチ!!

・迅速に開発するIntelliCodeリファクタリング機能

・コラボレーションするLive ShareGitHub 統合

・コードのクオリティを高めるTime Travel DebuggingやLive Unit Testing

Visual Studio Code

Photo: Thanks to @_Dr_ASA

今日のアジェンダは・・・

https://dev.azure.com

Visual Studio IDE のイイトコロ

Optimized• メモリ使用量

• パフォーマンス

• UI/UX

VS 2019 イイトコ

14

メモリ使用量削減

メモリ使用量が Visual Studio 2017 の 1/4 以下に

15

VS 2017 vs VS 2019

C++ ビルドのリンク時間(Unreal Engine – Based AAA Game)

72s

31s2倍

1

2

フォルダーを開く

210s

30s7倍

1

2

デバッグ時メモリ使用量(C++ Solution, 4000+ projects、Gears of War)

2 GB

0.4 GB5倍

1

2

ブランチ切り替え

46s

16s2倍

1

2

起動時間

7s

4.9s1.5倍

1

2

31s

72s

UI / UX 強化

16

スタートウインドウ

メニューバー

検索

Productivity• IntelliCode

• リファクタリング支援

• CodeLens

VS 2019 イイトコ

IntelliCode

https://github.com/kendrahavens/ProductivityFeatures

リファクタリング支援

CodeLens

Testing• Live Unit Testing

VS 2019 イイトコ

Live Unit Testing単体テストをコードエディット中に

自動的に実行

どの行のコードが単体テストにパスしているの

かフェイルしているのか、継続的なフィードバッ

クを得ることによって、いち早く自分が書いて

いるコードのクォリティを理解する。

あなたがコードを書くとき、エディターはバックグ

ラウンドで逐次単体テストを実行する。

テストにフェイルしたコードとパスしたコードは、

エディタ上で赤と緑のマークで示される。

この機能により、コードの変更が単体テストに

パスするかどうかを、即座に把握することが可

能となる。

Debugging• IntelliTrace

• Time Travel Debugging

• Snapshot Debugger

VS 2019 イイトコ

IntelliTrace「再現無し」とは二度と言わせない

Visual Studio に含まれる、診断ツールと

IntelliTrace は、コード実行中のイベント発生

時点(例外や HTTP 呼び出しなど)を記

録し、その時点のコンテキストに遡ることで、エ

ラーが発生する前に起きていた予兆を、手動

のブレークポイントなど無しに調査可能とする。

別マシンで取得した IntelliTrace を保存し、

それを使ってデバッグ作業を進めることも可能。

Time Travel Debugging

25

• Visual Studio Enterprise Edition が必要

• Azure VM 上の Web アプリケーションの動作を記録、Visual Studio 上で再現

実行中の Web アプリから スナップショットを自動収集• .NET Framework 4.5 以降 / Windows 上の .NET core 2.0 アプリ対象

• Azure App Service OS ファミリ 4 以降 Cloud Services

Windows Server 2012 R2 以降 Azure Service Fabric / VM

Application Insights Snapshot Debugger

26

カスタマイズ• theme テーマ

• setting.json

VS Code Demo

VS Code: Extension Pack - Azure Tools

VS Code: Extension – Settings Sync

VS Code: Extension - Browser Debugger

VS Code: Extension - Browser Debugger

Remote Development

VS Code Demo

VS Code: Remote Development

https://code.visualstudio.com/docs/remote/remote-overview

仕組み

https://code.visualstudio.com/docs/remote/remote-overview

VS Code: Remote Development

SSH • 実行環境はリモートマシン上

• GOOD: 高いマシンスペックを必要とする場合

Container • 実行環境はローカルマシン上の Docker 環境

• GOOD: チーム開発で、実行環境を統一したい場合

WSL • 実行環境はローカルマシン上の WSL 環境

• GOOD: 手軽に Linux 環境で開発したい場合

• GOOD: もうすぐ WSL 2 が登場!!参考リンク

VS Code: Remote Development

接続方法は三種類

Debugging• リモートデバッガー

VS 2019 イイトコ

リモートデバッガー

Team Development• Live Share

VS 2019 & VS Code

Visual Studio Live Share

39

コード編集やデバッグセッションのリアルタイム共有

• liveshare.vsengsaas.visualstudio.com 上で共有

• Visual Studio Code もサポート

• 対応言語・プラットフォームhttps://docs.microsoft.com/en-us/visualstudio/liveshare/reference/platform-support

Team Explorer• Pull Requests for Visual Studio

• Inline Diff Viewing

VS 2019 イイトコ

https://marketplace.visualstudio.com/items?itemName=VSIDEVersion

ControlMSFT.pr4vs

Pull Requests for Visual Studio

Inline Diff Viewing

Visual Studio 2019 Visual Studio Code

http://bit.ly/decode2019-dt06

Dot ch?

Visual Studio 2019 Visual Studio Code

• コードの生産性を高めるための数々の機能

• IntelliCode

• リファクタリング支援機能

• チーム開発に適した機能

• CodeLens によるソース管理との統合

• Live Share による共同作業

• Pull Request まで IDE から

• 効率的なデバッグのための数々の機能

• リモートデバッガー

• IntelliTrace

• Time Travel Debugging

• 軽量エディタ かつ 多くの言語に対応

• IntelliSense

• 統合ターミナル

• Electron ベースのマルチプラットフォーム

• どの OS でも同じ体験を

• 今後、Visual Studio Online も予定

• 無料でオープンソース

• 開発者からの人気でさらに進化

• 豊富な拡張機能

• Remote Development!!

• SSH, Container, WSL (& WSL2!)

まとめ

みんなちがって、みんないい

Microsoft AzureThe Visual Studio

family全ての開発者様に、最高のツールを…

Visual Studio

App Center

Visual Studio

Code

Visual Studio

Visual Studio

for Mac

Azure

DevOps

Microsoft Developers

このあとのみどころ時間 ID Room みどころ

Day1

16:30-

DT05 L Application Insights について色々!

Day1

17:50-

DT03 G Visual Studio のデバッグ機能をゴリゴリと!

Day1

17:50-

DT53 J GitHub x Azure DevOps のチョークトーク!

Day2

9:30-

DT07,DT08 A チャックさんの .NET の面白い話!

Day2

13:40

DT04 F AKS 導入なま苦労話!

Day2

17:30-

DT09 K OSS 開発者様向けの色々なアップデート!

© 2018 Microsoft Corporation. All rights reserved.

本情報の内容(添付文書、リンク先などを含む)は、作成日時点でのものであり、予告なく変更される場合があります。

© 2019 Microsoft Corporation. All rights reserved.

本情報の内容 (添付文書、リンク先などを含む) は、de:code 2019 開催日 (2019年5月29~30日) 時点のものであり、予告なく変更される場合があります。

本コンテンツの著作権、および本コンテンツ中に出てくる商標権、団体名、ロゴ、製品、サービスなどはそれぞれ、各権利保有者に帰属します。