SlideShare a Scribd company logo
BLEND FOR VISUAL STUDIO 2015
Jiří Danihelka
MsFest 2015
Agenda
• K čemu nástroj Blend slouží
• Vývoj verzí Blendu
• Návrh GUI v Blendu
• Integrace s Visual Studiem
• Debugování GUI
K ČEMU NÁSTROJ
BLEND SLOUŽÍ
K čemu Blend slouží
• Visuální vývojové prostředí pro XAML
• XAML je jazyk pro popis vzhledu
uživatelského rozhraní (GUI)
• Blend umožňoje částečně rozdělit práci na
vývoji aplikace mezi:
– návrháře – Blend a XAML
– programátora – Visual Studio a C#
Analogie s HTML
• Webový návrhář napšíe
– HTML kód stránky (XAML Controls)
– CSS soubory se syly (XAML Styles and Templates)
• Programátor napíše
– JavaScriptový kód (C# code behind)
– serverový kód (C# model layer)
• Rozdělení nefunguje na 100%
Podporované druhy aplikací
• Univerzální Windows 10 aplikace (UWP)
– Windows 10
– Windows 10 Mobile
• Windows 8.1 aplikace
• Windows Phone 8.1 aplikace
• webový Silverlight
• Windows Presentation Foundation (WPF)
• Není podporováno
– Windows Phone 8.1 Silverlight
Podporované jazyky
• XAML + C#
• XAML + Visual Basic
• XAML + C++ (C++/CX)
– pouze UWP, Windows 8.1 a Windows Phone 8.1
– nepodporuje Silverlight a WPF
• Není podporováno ve verzi 2015
– HTML + JavaScript (WinJS/WWA)
JavaScript a Blend
• Podpora JavaScriptu byla ve verzích
– Blend for Visual Studio 2012
– Blend for Visual Studio 2013
• Blend se v té době nerozvíjel o nové funkce
– část funkcí přešla do Visual Studia
– část funkcí byla zrušena
• Ve verzi 2015 se zrušené funkce vrací zpět
JavaScript aplikace ve Windows
• Jedna z možností vývoje pro Windows 8
– moderní aplikace (dříve Metro)
• Původní myšlenka:
– jazyk HTML umí velké množství programátorů
– vývoj HTML je levnější než XAML
• Realita:
– WinJS/WWA není to samé co webové stránky
– mnoho rozšíření převzatých z jazyka XAML
– horší výkon aplikací
– špatně dostupné výukové materiály
• Nyní odklon od silné podpory JavaScriptu
VÝVOJ VERZÍ BLENDU
Vývoj verzí Blendu
• Nejprve součást balíku Expression Studio
Vývoj verzí Blendu
• Následně součást Windows Phone 7 SDK
Vývoj verzí Blendu
• Součástí Visual Studia 2012
• Blend for Visual Studio
Blend 2015 používá Visual Studio Shell
NÁVRH GUI BLENDU
První otevření v Blendu
• Spuštení přes kontextové menu na souboru
– Open in Blend...
První otevření v Blendu
• Můžete se setkat s tímto:
Chyba při otevření
• Konstruktory nesmí házet výjimky
– designer volá konstruktor, ale program nespouští
– globální proměnné mouhou být neinicializované
• Rovněž není dobré dělat
– výpočetně náročné věci v konstruktoru
– vytěžování jiných prostředků
• Co s tím?
– kontrola inicializace při použití objektů
– přesunout kód z konstruktoru do metody Init
– testovat na podmínku běhu v designeru
Design Mode
if (Windows.ApplicationModel.DesignMode.DesignModeEnabled)
{
// falešná inicializace pro designer
this.ConnectedToDatabase = true;
}
else
{
// skutečná inicializace za běhu aplikace
this.ConnectedToDatabase = MyDatabase.IsConnected;
//hází neošetřenou výjimku, pokud je MyDatabase null
};
Data pro visuální design
• Často se data načítají až za běhu aplikace
• Typicky je se využívá rozdělení aplíkace na vrstvy
podle modelu MVVM
– model načítá data (z databáze, souboru, ...)
– view zobrazuje data pomocí XAMLu
– viewmodel propojuje model a view
• Databinding – promojení V a VM
Vzor MVVM
Blend 2015 Sample Data
Podpora pro vytváření animací
• Lze posouvat v čase pomocí Timeline
Podpora pro management stavů
• Kombinace vizuální stavů komponent
INTEGRACE
S VISUAL STUDIEM
Integrace s Visual Studiem
• konzistentní vzhled
• podobné sady příkazů
– Visual Studio 2015
– Blend 2015
– Blend 2013
IntelliSense
• editor jako Visual Studio
• IntelliSense pro XAML i C#
Editor Blendu 2015
• Výrazné zlepšení
– dříve spíše takový Notepad
• Již se nedá přepínat do Visual Studia pro
každou editaci
• Není podpora doplňků – např. ReSharper
• Lepší synchronizace kódu
– automatické načítání změněných souborů
Peek Definition
• Alt + F12
DEBUGOVÁNÍ GUI
(ŽIVÁ UKÁZKA)
SHRUNUTÍ
Shrnutí přednášky
• Blend je vizuální vývojové prostředí pro XAML
– Univerzální aplikace, Windows Phone, WPF
• S každou verzí je postupně sbližován s VS
– původně samostatný SW produkt
– nyní součást Visual Studia
– přesun funkcí oběma směry
• Některé designovací funkce má navíc
– Vyváření animací, vytváření stavů
Další zdroje informací
• MVA: Windows 8.1 Design Jump Start
https://mva.microsoft.com/en-us/training-courses/windows-81-
ux-design-jump-start-8235
• MVA: Designing Your XAML UI with Blend
https://mva.microsoft.com/en-us/training-courses/designing-
your-xaml-ui-with-blend-jump-start-8260
• Channel 9: New XAML Tools in Visual Studio 2015
https://channel9.msdn.com/Shows/Visual-Studio-Toolbox/New-
XAML-Tools-in-Visual-Studio-2015-and-Blend
DOTAZY?

More Related Content

Similar to Blend for Visual Studio 2015

Vyvoj Windows Store aplikaci pomoci HTML, CSS a Javascriptu
Vyvoj Windows Store aplikaci pomoci HTML, CSS a JavascriptuVyvoj Windows Store aplikaci pomoci HTML, CSS a Javascriptu
Vyvoj Windows Store aplikaci pomoci HTML, CSS a Javascriptu
Jindra Parus
 

Similar to Blend for Visual Studio 2015 (20)

TNPW2-2012-05
TNPW2-2012-05TNPW2-2012-05
TNPW2-2012-05
 
TNPW2-2012-02
TNPW2-2012-02TNPW2-2012-02
TNPW2-2012-02
 
Content Management Framework Drupal aneb 80% webu za pár hodin. Hodí se i pro...
Content Management Framework Drupal aneb 80% webu za pár hodin. Hodí se i pro...Content Management Framework Drupal aneb 80% webu za pár hodin. Hodí se i pro...
Content Management Framework Drupal aneb 80% webu za pár hodin. Hodí se i pro...
 
TNPW2-2013-05
TNPW2-2013-05TNPW2-2013-05
TNPW2-2013-05
 
TNPW2-2011-06
TNPW2-2011-06TNPW2-2011-06
TNPW2-2011-06
 
Smalltalk prakticky [CZ]
Smalltalk prakticky [CZ]Smalltalk prakticky [CZ]
Smalltalk prakticky [CZ]
 
Zaverecny ukol
Zaverecny ukolZaverecny ukol
Zaverecny ukol
 
Vyvoj Windows Store aplikaci pomoci HTML, CSS a Javascriptu
Vyvoj Windows Store aplikaci pomoci HTML, CSS a JavascriptuVyvoj Windows Store aplikaci pomoci HTML, CSS a Javascriptu
Vyvoj Windows Store aplikaci pomoci HTML, CSS a Javascriptu
 
TNPW2-2011-08
TNPW2-2011-08TNPW2-2011-08
TNPW2-2011-08
 
Pavel Cvetler: Jeden kód, co vládne všem? Žádný problém pro Android i iOS
Pavel Cvetler: Jeden kód, co vládne všem? Žádný problém pro Android i iOSPavel Cvetler: Jeden kód, co vládne všem? Žádný problém pro Android i iOS
Pavel Cvetler: Jeden kód, co vládne všem? Žádný problém pro Android i iOS
 
TNPW2-2016-02
TNPW2-2016-02TNPW2-2016-02
TNPW2-2016-02
 
TNPW2-2013-07
TNPW2-2013-07TNPW2-2013-07
TNPW2-2013-07
 
TNPW2-2014-05
TNPW2-2014-05TNPW2-2014-05
TNPW2-2014-05
 
TNPW2-2014-02
TNPW2-2014-02TNPW2-2014-02
TNPW2-2014-02
 
TNPW2-2013-02
TNPW2-2013-02TNPW2-2013-02
TNPW2-2013-02
 
TNPW2-2014-03
TNPW2-2014-03TNPW2-2014-03
TNPW2-2014-03
 
TNPW2-2011-04
TNPW2-2011-04TNPW2-2011-04
TNPW2-2011-04
 
Generátory statických webů
Generátory statických webůGenerátory statických webů
Generátory statických webů
 
TNPW2-2012-03
TNPW2-2012-03TNPW2-2012-03
TNPW2-2012-03
 
Dotykova zarizeni ve vyuce informatiky
Dotykova zarizeni ve vyuce informatikyDotykova zarizeni ve vyuce informatiky
Dotykova zarizeni ve vyuce informatiky
 

More from Jiri Danihelka

More from Jiri Danihelka (20)

Distributed Mobile Graphics
Distributed Mobile GraphicsDistributed Mobile Graphics
Distributed Mobile Graphics
 
Mixed reality for Windows 10
Mixed reality for Windows 10Mixed reality for Windows 10
Mixed reality for Windows 10
 
New Xaml components for Windows developers
New Xaml components for Windows developersNew Xaml components for Windows developers
New Xaml components for Windows developers
 
MVVM Windows UWP apps with Template 10
MVVM Windows UWP apps with Template 10MVVM Windows UWP apps with Template 10
MVVM Windows UWP apps with Template 10
 
An introduction to development of universal applications
An introduction to development of universal applicationsAn introduction to development of universal applications
An introduction to development of universal applications
 
Windows game development with Unity 5
Windows game development with Unity 5Windows game development with Unity 5
Windows game development with Unity 5
 
Creating great Unity games for Windows 10 - Part 2
Creating great Unity games for Windows 10 - Part 2Creating great Unity games for Windows 10 - Part 2
Creating great Unity games for Windows 10 - Part 2
 
Creating great Unity games for Windows 10 - Part 1
Creating great Unity games for Windows 10 - Part 1Creating great Unity games for Windows 10 - Part 1
Creating great Unity games for Windows 10 - Part 1
 
Prism library and MVVM
Prism library and MVVMPrism library and MVVM
Prism library and MVVM
 
UWP apps development - Part 3
UWP apps development - Part 3UWP apps development - Part 3
UWP apps development - Part 3
 
UWP apps development - Part 2
UWP apps development - Part 2UWP apps development - Part 2
UWP apps development - Part 2
 
UWP apps development - Part 1
UWP apps development - Part 1UWP apps development - Part 1
UWP apps development - Part 1
 
Designing Windows apps with Xaml
Designing Windows apps with XamlDesigning Windows apps with Xaml
Designing Windows apps with Xaml
 
Advanced MVVM Windows UWP apps with Template 10
Advanced MVVM Windows UWP apps with Template 10Advanced MVVM Windows UWP apps with Template 10
Advanced MVVM Windows UWP apps with Template 10
 
Windows UX
Windows UXWindows UX
Windows UX
 
Security misconfiguration
Security misconfigurationSecurity misconfiguration
Security misconfiguration
 
Windows 10 Mobile and Distributed Graphics
Windows 10 Mobile and Distributed GraphicsWindows 10 Mobile and Distributed Graphics
Windows 10 Mobile and Distributed Graphics
 
Security hardening and drown attack prevention for mobile backend developers
Security hardening and drown attack prevention for mobile backend developersSecurity hardening and drown attack prevention for mobile backend developers
Security hardening and drown attack prevention for mobile backend developers
 
Top 10 security risks for mobile backend developers
Top 10 security risks for mobile backend developersTop 10 security risks for mobile backend developers
Top 10 security risks for mobile backend developers
 
Programování Windows 8
Programování Windows 8Programování Windows 8
Programování Windows 8
 

Blend for Visual Studio 2015

  • 1. BLEND FOR VISUAL STUDIO 2015 Jiří Danihelka MsFest 2015
  • 2. Agenda • K čemu nástroj Blend slouží • Vývoj verzí Blendu • Návrh GUI v Blendu • Integrace s Visual Studiem • Debugování GUI
  • 4. K čemu Blend slouží • Visuální vývojové prostředí pro XAML • XAML je jazyk pro popis vzhledu uživatelského rozhraní (GUI) • Blend umožňoje částečně rozdělit práci na vývoji aplikace mezi: – návrháře – Blend a XAML – programátora – Visual Studio a C#
  • 5. Analogie s HTML • Webový návrhář napšíe – HTML kód stránky (XAML Controls) – CSS soubory se syly (XAML Styles and Templates) • Programátor napíše – JavaScriptový kód (C# code behind) – serverový kód (C# model layer) • Rozdělení nefunguje na 100%
  • 6. Podporované druhy aplikací • Univerzální Windows 10 aplikace (UWP) – Windows 10 – Windows 10 Mobile • Windows 8.1 aplikace • Windows Phone 8.1 aplikace • webový Silverlight • Windows Presentation Foundation (WPF) • Není podporováno – Windows Phone 8.1 Silverlight
  • 7. Podporované jazyky • XAML + C# • XAML + Visual Basic • XAML + C++ (C++/CX) – pouze UWP, Windows 8.1 a Windows Phone 8.1 – nepodporuje Silverlight a WPF • Není podporováno ve verzi 2015 – HTML + JavaScript (WinJS/WWA)
  • 8. JavaScript a Blend • Podpora JavaScriptu byla ve verzích – Blend for Visual Studio 2012 – Blend for Visual Studio 2013 • Blend se v té době nerozvíjel o nové funkce – část funkcí přešla do Visual Studia – část funkcí byla zrušena • Ve verzi 2015 se zrušené funkce vrací zpět
  • 9. JavaScript aplikace ve Windows • Jedna z možností vývoje pro Windows 8 – moderní aplikace (dříve Metro) • Původní myšlenka: – jazyk HTML umí velké množství programátorů – vývoj HTML je levnější než XAML • Realita: – WinJS/WWA není to samé co webové stránky – mnoho rozšíření převzatých z jazyka XAML – horší výkon aplikací – špatně dostupné výukové materiály • Nyní odklon od silné podpory JavaScriptu
  • 11. Vývoj verzí Blendu • Nejprve součást balíku Expression Studio
  • 12. Vývoj verzí Blendu • Následně součást Windows Phone 7 SDK
  • 13. Vývoj verzí Blendu • Součástí Visual Studia 2012 • Blend for Visual Studio
  • 14. Blend 2015 používá Visual Studio Shell
  • 16. První otevření v Blendu • Spuštení přes kontextové menu na souboru – Open in Blend...
  • 17. První otevření v Blendu • Můžete se setkat s tímto:
  • 18. Chyba při otevření • Konstruktory nesmí házet výjimky – designer volá konstruktor, ale program nespouští – globální proměnné mouhou být neinicializované • Rovněž není dobré dělat – výpočetně náročné věci v konstruktoru – vytěžování jiných prostředků • Co s tím? – kontrola inicializace při použití objektů – přesunout kód z konstruktoru do metody Init – testovat na podmínku běhu v designeru
  • 19. Design Mode if (Windows.ApplicationModel.DesignMode.DesignModeEnabled) { // falešná inicializace pro designer this.ConnectedToDatabase = true; } else { // skutečná inicializace za běhu aplikace this.ConnectedToDatabase = MyDatabase.IsConnected; //hází neošetřenou výjimku, pokud je MyDatabase null };
  • 20. Data pro visuální design • Často se data načítají až za běhu aplikace • Typicky je se využívá rozdělení aplíkace na vrstvy podle modelu MVVM – model načítá data (z databáze, souboru, ...) – view zobrazuje data pomocí XAMLu – viewmodel propojuje model a view • Databinding – promojení V a VM
  • 23. Podpora pro vytváření animací • Lze posouvat v čase pomocí Timeline
  • 24. Podpora pro management stavů • Kombinace vizuální stavů komponent
  • 26. Integrace s Visual Studiem • konzistentní vzhled • podobné sady příkazů – Visual Studio 2015 – Blend 2015 – Blend 2013
  • 27. IntelliSense • editor jako Visual Studio • IntelliSense pro XAML i C#
  • 28. Editor Blendu 2015 • Výrazné zlepšení – dříve spíše takový Notepad • Již se nedá přepínat do Visual Studia pro každou editaci • Není podpora doplňků – např. ReSharper • Lepší synchronizace kódu – automatické načítání změněných souborů
  • 32. Shrnutí přednášky • Blend je vizuální vývojové prostředí pro XAML – Univerzální aplikace, Windows Phone, WPF • S každou verzí je postupně sbližován s VS – původně samostatný SW produkt – nyní součást Visual Studia – přesun funkcí oběma směry • Některé designovací funkce má navíc – Vyváření animací, vytváření stavů
  • 33. Další zdroje informací • MVA: Windows 8.1 Design Jump Start https://mva.microsoft.com/en-us/training-courses/windows-81- ux-design-jump-start-8235 • MVA: Designing Your XAML UI with Blend https://mva.microsoft.com/en-us/training-courses/designing- your-xaml-ui-with-blend-jump-start-8260 • Channel 9: New XAML Tools in Visual Studio 2015 https://channel9.msdn.com/Shows/Visual-Studio-Toolbox/New- XAML-Tools-in-Visual-Studio-2015-and-Blend

Editor's Notes

  1. This template can be used as a starter file for presenting training materials in a group setting. Sections Right-click on a slide to add sections. Sections can help to organize your slides or facilitate collaboration between multiple authors. Notes Use the Notes section for delivery notes or to provide additional details for the audience. View these notes in Presentation View during your presentation. Keep in mind the font size (important for accessibility, visibility, videotaping, and online production) Coordinated colors Pay particular attention to the graphs, charts, and text boxes. Consider that attendees will print in black and white or grayscale. Run a test print to make sure your colors work when printed in pure black and white and grayscale. Graphics, tables, and graphs Keep it simple: If possible, use consistent, non-distracting styles and colors. Label all graphs and tables.
  2. Summarize presentation content by restating the important points from the lessons. What do you want the audience to remember when they leave your presentation? Save your presentation to a video for easy distribution (To create a video, click the File tab, and then click Share.  Under File Types, click Create a Video.)
  3. Microsoft Confidential
  4. Microsoft Confidential