31
5 июня 2015 года Разбор некоторых технических моментов нового .NET Юлия Фаст Разработчик .NET

Разбор некоторых технических моментов нового .NET

  • Upload
    custis

  • View
    221

  • Download
    6

Embed Size (px)

Citation preview

Page 1: Разбор некоторых технических моментов нового .NET

5 июня 2015 года

Разбор некоторых технических

моментов нового .NET

Юлия Фаст

Разработчик .NET

Page 2: Разбор некоторых технических моментов нового .NET

Agenda

Visual Studio 2015

Diagnostic Tools

XAML

Garbage Collector

.NET 4.6

Entity Framework 7 и 6.1.3

2/31

Page 3: Разбор некоторых технических моментов нового .NET

Visual Studio 2015

3/31

Page 4: Разбор некоторых технических моментов нового .NET

Visual Studio Code

4/31

Page 5: Разбор некоторых технических моментов нового .NET

Visual Studio Code

5/31

Page 6: Разбор некоторых технических моментов нового .NET

Visual Studio Diagnostic Tools

6/31

Page 7: Разбор некоторых технических моментов нового .NET

Diagnostic Tools

PerfTips

CPU Graph

Memory Tool

Demo

7/31

Page 8: Разбор некоторых технических моментов нового .NET

PerfTips

Замеряет время между остановками

Исключает из замеров накладные расходы

отладчика

Время ожидания в режиме дебага

Загрузка кода и т. д.

Идеально подходит для объемных измерений

Наибольшая точность для CLR 4.6 и Windows 10

8/31

Page 9: Разбор некоторых технических моментов нового .NET

CPU Graph

Показывает загрузку всех доступных

ядер процессора

Пики могут быть интересны, даже если

они не достигают 100%

Доступен после остановки отладчика

9/31

Page 10: Разбор некоторых технических моментов нового .NET

Memory Tool

Показывает дельту между снапшотами

Показывает список объектов

Фильтрует по различным критериям

Работает как для C++, так и для .NET

10/31

Page 11: Разбор некоторых технических моментов нового .NET

Breakpoint Configuration

Остановка по условию

Подсчет количества попаданий

Фильтр по процессу

Вывод сообщений в output

11/31

Page 12: Разбор некоторых технических моментов нового .NET

Breakpoint Configuration

12/31

Page 13: Разбор некоторых технических моментов нового .NET

Diagnostic Tools without debugging

Timeline Tool

CPU Tool

DemoDemo

13/31

Page 14: Разбор некоторых технических моментов нового .NET

Timeline Tool

Помогает обнаружить проблемы, вызванные:

Parsing & Layout

Ошибками в коде или другой нагрузкой

на процессор

Отслеживает производительность видеокарты

14/31

Page 15: Разбор некоторых технических моментов нового .NET

CPU Tool

Максимальная нагрузка на процессор

Данные процессора каждую миллисекунду

Единый отчет

Информацию по общему стеку (.NET и C++)

15/31

Page 16: Разбор некоторых технических моментов нового .NET

Diagnostic Tools

Доступны для любого типа проекта, кроме следующих:

Приложения Windows Store на JavaScript

Приложения Windows Store, запущенные нa WP

Отладка со включенным Managed or Native

Compatibility Mode (Tools → Options → Debugging)

16/31

Page 17: Разбор некоторых технических моментов нового .NET

XAML

x:DeferLoadStrategy

x:Bind

Live Visual Tree

Demo

17/31

Page 18: Разбор некоторых технических моментов нового .NET

x:DeferLoadStrategy

Применяется при необходимости не отображать

часть UI

Позволяет отложить создание части дерева

Применяется для MVVM

Demo

<StackPanel x:Name="StackPanelName"

x:DeferLoadStrategy="Lazy" >

…………………….

</StackPanel>

var deferredPanel = FindName(“StackPanelName”);

18/31

Page 19: Разбор некоторых технических моментов нового .NET

x:Bind

Перемещает binding на уровень

скомпилированного кода

Оптимизирует запуск и память

Строго типизирован

Поддается отладке!

Demo<DataTemplate x:DataType="local:Item">

.....

<TextBlock Text="{x:Bind Title}" />

</DataTemplate>

19/31

Page 20: Разбор некоторых технических моментов нового .NET

Live Visual Tree

DemoDemoDemo

20/31

Page 21: Разбор некоторых технических моментов нового .NET

Live Visual Tree

Demo

21/31

Page 22: Разбор некоторых технических моментов нового .NET

.NET 4.6

Garbage Сollector

AppContext

Demo

22/31

Page 23: Разбор некоторых технических моментов нового .NET

Demo

TryStartNoGCRegion

23/31

Page 24: Разбор некоторых технических моментов нового .NET

Compatibility Switches

24/31

Page 25: Разбор некоторых технических моментов нового .NET

Entity Framework

Entity Framework 7

Entity Framework 6.1.3

25/31

Page 26: Разбор некоторых технических моментов нового .NET

Entity Framework 7

Кроссплатформенный

Группировка запросов пачками

Уникальные ключи (кроме первичных)

Более очевидное преобразование в sql

Поддерживает нереляционные БД

Легкие и быстрые компоненты

Доступен на GitHub:

https://github.com/aspnet/EntityFramework

26/31

Page 27: Разбор некоторых технических моментов нового .NET

MetadataWorkspace. В какую таблицу отображается класс Blog?

EF7

EF6

27/31

Page 28: Разбор некоторых технических моментов нового .NET

Исключены некоторые возможности

Multiple Entity Sets per Type (MEST)

Very complex type to table mappings

EDMX в пользу Code-base

ObjectContext API

28/31

Page 29: Разбор некоторых технических моментов нового .NET

Entity Framework 6.1.3

Все еще разрабатывается

Может устанавливаться через NuGet

Включен в Visual Studio 2015

Встроен в шаблоны ASP.NET 5

Содержит улучшения и баг-фиксы

29/31

Page 30: Разбор некоторых технических моментов нового .NET

Summary

Visual Studio 2015 + Code

Инструменты диагностики

Новый .NET 4.6

Облегченный Entity Framework 7

30/31

Page 31: Разбор некоторых технических моментов нового .NET

Спасибо!

Вопросы?

Юлия Фаст

[email protected]

31/31