15
Nivo 300 Razvoj aplikacij Metro za Windows 8 Damir Arh, Adacta d.o.o. Arhitekt programske opreme MVP – Data Platform Development [email protected] http:// twitter.com /@ DamirArh / http://www.damirscorner.com/

Razvoj aplikacij Metro za Windows 8

Embed Size (px)

DESCRIPTION

A presentation on how to get started with development of Metro applications for Windows 8 in C#

Citation preview

Page 1: Razvoj aplikacij Metro za Windows 8

Nivo 300

Razvoj aplikacij Metro za Windows 8Damir Arh, Adacta d.o.o.Arhitekt programske opremeMVP – Data Platform Development

[email protected]://twitter.com/@DamirArh/ http://www.damirscorner.com/

Page 2: Razvoj aplikacij Metro za Windows 8

Nivo 300

Podprta razvojna okolja

JavaScript + HTML

C#/VB+ XAML

C+++ XAML

Page 3: Razvoj aplikacij Metro za Windows 8

Nivo 300

Kaj sploh potrebujem?• Windows 8 (Consumer Preview)• Visual Studio 11 (Beta)• Express for Windows 8

• Razvijalsko licenco• Veljavnost: 30 dni• Vezana na Live ID

Page 4: Razvoj aplikacij Metro za Windows 8

Nivo 300

Pa začnimo…

Page 5: Razvoj aplikacij Metro za Windows 8

Nivo 300

Mapa Common• LayoutAwarePage• RichTextColumns• BooleanNegationConverter• BooleanToVisibilityConverter• BindableBase• StandardStyles.xaml

Page 6: Razvoj aplikacij Metro za Windows 8

Nivo 300

Struktura predloge strani• Osnovna postavitev: FullScreenLandscape• VisualStateManager• FullScreenPortrait• Filled• Snapped

Page 7: Razvoj aplikacij Metro za Windows 8

Nivo 300

Delo z datotekami• Razred Windows.Storage.ApplicationData• Nastavitve

• LocalSettings• RemoteSettings

• Datoteke• LocalFolder• RemoteFolder• TemporaryFolder

• C:\Users\Username\AppData\Local\Packages

Page 8: Razvoj aplikacij Metro za Windows 8

Nivo 300

WinRT tokovi v ogrodju .NET

StorageFolder dir = ApplicationData.Current.LocalFolder;StorageFile file = await folder.GetFileAsync(filename);IInputStream inStr = await file.OpenSequentialReadAsync();Stream stream = inStr.AsStreamForRead();

StorageFolder dir = ApplicationData.Current.LocalFolder;StorageFile file = await folder.GetFileAsync(filename);IRandomAccessStream rndStream = await file.OpenAsync(FileAccessMode.ReadWrite);IOutputStream outStream = rndStream.GetOutputStreamAt(0)Stream stream = outStream.AsStreamForWrite();

Page 9: Razvoj aplikacij Metro za Windows 8

Nivo 300

Asinhronost

IAsyncOperation<StorageFile> GetFileAsync(string token)Task<WebResponse> GetResponseAsync()

public async Task<string> GetAsync(){ return await FileIO.ReadTextAsync(myFile);}

• Kadar je trajanje daljše od 50 ms• Async/await• Dispatcher.Invoke() ni potreben

Page 10: Razvoj aplikacij Metro za Windows 8

Nivo 300

Aplikacije Metro != .NET 4.5• Prenos obstoječih aplikacij ni enostaven• WinRT (imenski prostor Windows)• Manjkajoči razredi glede na ogrodje .NET

• Kaj pa novi projekti?• Knjižnica s skupno poslovno logiko• Ločeni uporabniški vmesniki

Page 11: Razvoj aplikacij Metro za Windows 8

Nivo 300

Dodatne knjižnice• Trenutno skromna izbira• MVVM Light for Windows 8 Consumer Preview

• http://bit.ly/MVVMLightWin8

• Autofac Portable• http://bit.ly/AutofacPortable

• Reactive Extensions v2.0• http://bit.ly/Rx2beta

• SQLite3 WinRT• http://bit.ly/SQLite3WinRT

Page 12: Razvoj aplikacij Metro za Windows 8

Nivo 300

Testiranje• Izboljšave v Visual Studiu 11• Možnost uporabe drugih testnih ogrodij

• http://bit.ly/VS11UnitTestPlugins

• Podprto testiranje asinhronih metod

public async Task TestMethod()

!=

public async void TestMethod()

Page 13: Razvoj aplikacij Metro za Windows 8

Nivo 300

Nameščanje• Privzeto le aplikacije iz trgovine• Izjemi:• Razvijalska licenca• “Sideloading”

• http://bit.ly/Win8Sideloading

• Remote Tools for Visual Studio 11• http://bit.ly/VS11BetaRemoteTools

Page 14: Razvoj aplikacij Metro za Windows 8

Nivo 300

Viri• Windows 8 Consumer Preview• http://bit.ly/Win8CP

• Visual Studio 11 Beta• http://bit.ly/VS11beta

• Dev Center – Metro Style Apps• http://bit.ly/DevCenterMetro

• Metro Style App Samples• http://bit.ly/MetroAppSamples

• MSDN Forums• http://bit.ly/MSDNForumsMetro

Page 15: Razvoj aplikacij Metro za Windows 8

Nivo 300

VPRAŠANJA?

Po zaključku predavanja, prosimo, izpolnite vprašalnik.

Vprašalniki bodo poslani na vaš e-naslov, dostopni pa bodo tudi preko profila na spletnem portalu konference www.ntk.si.

Najlepša hvala!