Strona używa cookies (ciasteczek). Dowiedz się więcej o celu ich używania i zmianach ustawień. Korzystając ze strony wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki.    X

Projektowanie aplikacji Metro UI w pigułce

Słowem wstępu

Dwa dni temu został wydany Windows Developer Preview, którego celem jest udostępnienie developerom platformy, na której już teraz, przed premierą Windows 8, będą mogli rozwijać własne aplikacje, które później trafią do Windows App Store.

Nowa platforma niesie z sobą wiele nowości. Jedną z najważniejszych jest nowe Menu Start. Pomijając kwestię jego wygody poza ekranami dotykowymi, co obecnie jest przedmiotem wielu gorących dyskusji, to jest on ciekawym środowiskiem, które oferuje możliwość tworzenia aplikacji z interfejsem Metro UI znanego między innymi z Windows Phone 7. Tak wygląda ono na moim notebooku do programowania na WDP:

( http://mcyw.w.interii.pl/win8/win_start.jpg )

W tym wpisie chciałbym w skrócie omówić ważne aspekty tworzenia aplikacji dla Metro UI.

Idąc dalej...

Jeżeli ktoś jest zanteresowany rozwojem aplikacji Metro UI, to powinien zaopatrzyć się w wersję Windows Developer Preview z narzędziami dla programistów z tej strony.

W pakiecie jest załączona rozwojowa wersji Visual Studio 11 w wersji pozwalającej na projektowanie aplikacji Metro UI oraz zestaw 28 przykładowych aplikacji, a także wersja rozwojowa Expression Blend 5, który pozwala projektować bogate graficznie aplikacje.

Po uruchomieniu Visual Studio 11 mamy dostępne różnorodne opcje aplikacji Metro UI. Nas zainteresuje podstawowa. Użyłem Visual C#, ponieważ używam tego języka na co dzień do pracy i jestem z nim najbardziej zapoznany. Użytkownik może oczywiście wybrać Visual Basic albo JavaScript.

( http://mcyw.w.interii.pl/win8/projekty.jpg )

...dochodzimy do projektu graficznego aplikacji...

Programiści, którzy są już dobrze obyci z projektowaniem graficznym aplikacji typu Silverlight oraz Windows Presentation Foundation będą mile zaskoczeni. Projektowanie aplikacji Metro UI w Visual Studio 11 wygląda bardzo podobnie do projektowania w SL i WPF. Wszystko to dzięki zastosowaniu starego i dobrze znanego XAML, który za pomocą języka znaczników definiuje elementy interfejsu, akcje, animacje i inne właściwości z nim związane.

Tak więc:
-Projektowanie odbywa się w graficznym designerze Drag & Drop na wzór SL i WPF
-Zamiast elementów graficznych dostępny jest kod XAML

...kodowanej w wybranym języku platformy .net Framework...

Jeżeli się mylę - poprawcie mnie.
Dla przykładu dodajmy button, label i spróbujmy stworzyć prostą aplikację Metro UI, a następnie ją przetestować.

1) Na grid wrzucam TextBlock oraz Button i generuje metodę zdarzenia kliknięcia:

2) Do metody zdarzeniowej dodaję odpowiedni kod, który nadaje nową wartość właściwości TextBlockowi.
3) Testuję, działa!

Przykład ten pokazuje, jak proste jest tworzenie aplikacji Metro UI. Programiści, którzy mają już swoje przyzwyczajenia z technologii WPF i Silverlight mogą teraz wykorzystać swoje istniejące umiejętności do tworzenia świetnych aplikacji dla mozaiki.

Co dalej?

Dalej już tylko ogranicza nas wyobraźnia. Wkrótce pojawią się pewnie detale dotyczące Microsoft App Store. Warto się zainteresować tym tematem, ponieważ jest to szansa na mały, ale stały zarobek. W końcu od przybytku głowa nie boli, prawda?

Wkrótce zaprojektuję przykładową, poważniejszą aplikację dla Metro i zaprezentuję szczegóły z nią związane na łamach bloga.

Dziękuję za uwagę!
 

Komentarze

0 nowych
Limak   6 #1 15.09.2011 15:38

"Użytkownik może oczywiście wybrać Visual Basic albo JavaScript. " - Może też wybrać C++.

mcywinski   3 #2 15.09.2011 16:58

@Limak - oczywista sprawa. C++ jednak nadaje się do poważniejszych rzeczy niż appki do Metro.

flaszer   10 #3 15.09.2011 17:35

Ciekawy jest fakt, że tworzyć można appsy również w HTML5 ;)

vaverix   1 #4 15.09.2011 20:39

Windows 8 robiony pod ekrany dotykowe - zero reakcji, wszystko ok.

Ubuntu z Unity na czele pod ekrany dotykowe - opinie typu "co za debile, ten system przecież jest na desktopy" i inne o wiele, wiele gorsze, niż nie wnoszące i wulgarne.

Czegoś tu nie rozumiem.

Ardziej   5 #5 15.09.2011 22:26

@fleszer, appsy tworzymy w JavaScript nie HTML5, w HTML5 to sobie możesz dodać stopkę lbu nagłówek :)

mcywinski   3 #6 15.09.2011 22:33

@vaverix - z mojego wpisu: "Pomijając kwestię jego wygody poza ekranami dotykowymi". Co oznacza, że opinie co uważam o zastosowaniu tego w systemie desktopowym pomijam. A w tej kwestii moje uczucia się co najmniej bardzo mieszane.

flaszer   10 #7 16.09.2011 12:02

@Ardziej
Oczywiście, JavaScript to język programowania, ale Canvas, którego ożywiasz to element HTML5 ;) Tak więc poprawniej - można tworzyć w HTML5/JS/CSS ;)

kadoel   1 #8 18.09.2011 23:42

A co z JAVĄ, da się w niej skorzystać z METRO ?

mcywinski   3 #9 19.09.2011 14:13

Jak na razie wiadomo mi - nie. I jak na moją wiedzę - to może być bardzo trudne do osiągnięcia.

kadoel   1 #10 19.09.2011 20:04

Wiadomo JAVA jest używana w większej mierze w aplikacjach internetowych.

mcywinski   3 #11 21.09.2011 17:12

@RaveStar - Java i swing mogą być używane do tworzenia aplikacji na desktop. Przykładem jest tutaj choćby popularny FreeRapid Downloader.

SunriSebi   4 #12 16.12.2011 12:39

Java nie jest kompatybilna z M UI

  #13 30.12.2011 06:38

Muszę przyznać, że niegdyś jako totalny ubuntonoob w ślad za innymi wyzywałem microsoft. Dziś kiedy bawię się programowaniem w c# i visual studio, jestem pod wielkim wrażeniem tego co robi w ostatnich latach microsoft, a wyzwiska pod kątem ich komercyjności okazują się totalną dziecinadą i brakiem kompetencji.
Microsoft swoim użytkownikom (głównie programistom) serwuje coraz więcej profesjonalnych narzędzi za darmochę i do użytku komercyjnego, jedynie system windows trochę drogi jak na nasze realia.
Jednak patrząc na coraz lepszą politykę microsoftu, to w najbliższych latach jeszcze więcej zmieni w dobrą stronę.

  #14 01.06.2012 19:19

Strasznie się zawiodłem. O ile osoba taka jak ja miała już trochę doczynienia z programowaniem okienkowym miała trudności żeby rozpocząć pracę z projektowaniem "kafelek" w Metro, o tyle dla osoby kompletnie zielonej Twój poradnik jest bezużyteczny.
Liczyłem na jakiś rzetelny wstęp do programowania stylu w metro a tu klapa. Szkoda.

kwpolska   6 #15 13.03.2013 16:19

@kadoel

Java? Dawno już appletu Javowego nie widziałem, a Java ? JavaScript. Dzisiaj już Javy praktycznie nikt nie używa w sieci.

  #16 17.02.2014 21:14

No microsoft fajne apki wydaje system tez, choc drogi. Ja tam narazie nie biore sie za ModernUI , bo dopiero winAPI ograniam po malu a konsolkowe umiem tak na 4+ :D. A windows 8.1 troche drogie a ja mam 7 i smiga wiec zmienie sobie systemik jak w 2015 wyjdzie 9, a 1 komp mam u dziadka z 8 to wiem ze fajna i polecam. Zgadzam sie z kodoel ze java bardziej do tworzenia skryptow. Moze jeszcze dla graczy minecrafta znam w javie, ale oprocz tego to wszystko w C++ :). Sam programuje w C++ może na starym kompilatorze (dev-cpp 4.9.0.0) ale wszystkie funkcje ma i super. Dla tych co nie sa programistami albo programuja w innym jezyku polecam C++.