Makale Özeti

Windows 8 henüz piyasa sürülmeden (aslında Beta sürümü bile çıkmadan) hayatımıza girmeye başladı. Bu makale serisi ile birlikte Windows 8 - Metro Style uygulama geliştirme konusunu inceliyor olacağız.

Makale

Windows 8 Hakkında

Windows 8 henüz piyasa sürülmeden (aslında Beta sürümü bile çıkmadan) hayatımıza girmeye başladı.

Windows 8 işletim sisteminin son kullanıcıya ulaşma tarihini 2012 yılının 3. çeyreği olarak tahmin ediyorum.

Bu yazıyı yazdığım gün Windows 8‘in Geliştiricilere Özel sürümleri ücretsiz olarak Microsoft‘un kendi sitesinden indirilebiliyor;

Windows Developer Preview with developer tools English, 64-bit (x64) (4.8 GB)

Windows Developer Preview English, 64-bit (x64) (3.6 GB)

Windows Developer Preview English, 32-bit (x86) (2.8 GB)

Sistem Gereksinimleri

Windows Developer Preview, Windows Vista ve Windows 7 çalıştırdığınız tüm bilgisayarlarda performans kaybı olmadan çalışacaktır;

  • 1 GHz veya daha hızlı 32-bit (x86) / 64-bit (x64) işlemci
  • 1 GB RAM (32-bit) veya 2 GB RAM (64-bit)
  • 16 GB hard disk alanı (32-bit) veya 20 GB hard disk alanı (64-bit)
  • DirectX 9 veya üstü destekli ekran kartı
  • MetroUI Style uygulamaları çalıştırabilmek için en az 1024 X 768 ekran çözünürlüğü

Metro Style Hakkında

Windows 8 işletim sistemi ile birlikte gelen yeni arayüz (PC, Tablet ve hatta Mobil cihazlarda çalışabilecek şekilde tasarlanmış ortak arabirim) modeline Metro Style diyoruz.

Build 2011 seminerlerinden anlaşıldığı kadarıyla Microsoft, Metro Style arabirim'in Windows 8 çalıştıran tüm cihazlarda (PC, Tablet ve hatta Mobil) varsayılan arabirim olmasına önem veriyor.

MSDN'de yeralan What are Metro style apps? makalesine göre Metro Style uygulamalar, tam ekran çalışan, kullanıcının ihtiyaçlarına göre, çalıştığı cihaza göre, dokunma etkileşimine göre ve Windows Kullanıcı Arabirimine göre uyarlanmış uygulamalardır (Metro Style apps are full screen apps tailored to your users' needs, tailored to the device they run on, tailored for touch interaction, and tailored to the Windows user interface)

Geleneksel metodlar ile geliştirilmiş uygulamaların, kullanıcıya bilgi vermek için açılmış olması gerekir (TweetDeck uygulamasını açmadan son gelen tweetleri göremeyiz)

Metro Style uygulamalar ise, uygulama listesinde iken kullanıcıya çeşitli bilgiler sunabiliyor (güncel hava durumu, son gelen emailler)

Ayrıca Metro Style uygulamalar arkaplan'a atıldıklarında Bekleme Mod'una (Suspended) geçerler, böylece CPU kullanımı ve Pil tüketimi gibi kritik noktalarda kullanıcı dostu olduklarını söyleyebiliriz

Bu yeniliklerin tamamına en kolaydan sahip olmak için bu makale ile birlikte Metro Style uygulama geliştirme konusunu incelemeye başlıyoruz.

Visual Studio 2011 (Visual Studio vNext) Kurulumu ve İlk Proje

Windows 8 üzerinde geliştirme yapabilmemiz için öncelikle bilgisayarımıza Windows 8 ve Visual Studio 2011 kurmuş olmamız lazım.

Eğer MSDN üyeliğiniz varsa, Visual Studio 2011 Ultimate Edition kurmanızı tavsiye ederim.

Kurulum penceresi sade hazırlanmış;

Kurulum tamamlandıktan sonra Visual Studio 2011‘imizi ilk defa çalıştırıyoruz.

Windows 8 Başlangıç Ekranımızda (Start Screen) Visual Studio 2011 üzerine tıklayarak, yeni bir Visual Studio 2011 başlatıyoruz.

Hemen hemen her Visual Studio sürümü ilk çalıştırıldığında bu ekrana benzer bir ekran ile karşılaşırız. Ben Visual C# Development Settings tercihini yaptım, Local Help Documentation seçeneğinden de None seçtim.

Kısa bir yapılandırmanın ardından Visual Studio 2011 Splash Screen ekrana geldi.

Başlangıç ekranımız Visual Studio 2010‘dan farklı değil, Visual Studio 2008‘den beri çok az değişiklik gösterdi.

Help / About Microsoft Visual Studio menüsünden Hakkında penceresini açtığımızda, bilgisayarımıza Visual Studio bileşenlerinin 11. versiyonlarının ve .Net 4.5 versiyonunun kurulu olduğunu görüyoruz.

File / New Project menüsünden yeni bir proje oluşturmak için New Project dialog kutusunu açtığımızda Metro Style proje şablonlarının geldiğini görüyoruz.

Bu ekranda Grid Application ve Split Application seçeneklerinden birini seçebiliriz.

Application proje şablonunu seçiyoruz ve MetroStyleIlkUygulama ismini vererek projemizi oluşturuyoruz.

Proje oluşturulduğunda Visual Studio 2011 varsayılan olarak MainPage.xaml dosyasını açıyor. Uygulamamızın başlangıç ekranı varsayılan olarak MainPage.xaml dosyasıdır.

Grid elementi içerisine bir button, bir de label eklemek için aşağıdaki satırları yazıyoruz;

<Button Content="Mesaj Göster" FontSize="28" Width="250" Height="80" HorizontalAlignment="Center" />
<TextBlock x:Name="MessageText" FontSize="48" Foreground="White" />

WPF ve Silverlight‘ta Label nesnesi oluşturmak için TextBlock nesnesi kullanmamız gerekiyor. Bu elementler ile ekranımıza Mesaj Göster metinli bir button ve metin içermediği için ekranda gözükmeyen bir textblock nesnesi koymuş olduk.

Fakat bu kontrolleri ekranda ortalayabilmek için bir StackPanel içerisine koymamız gerekiyor;

<StackPanel HorizontalAlignment="Center" VerticalAlignment="Center">
	<Button Content="Mesaj Göster" FontSize="28" Width="250" Height="80" HorizontalAlignment="Center" />
	<TextBlock x:Name="MessageText" FontSize="48" Foreground="White" />
</StackPanel>

StackPanel ve Button elemanlarına verdiğimiz Alignment özellikleri sayesinde elemanları ekranda ortalıyoruz.

Son olarak Button element’imize

Click="Button_Click"

özelliğini ekleyelim. Böylece butona tıklanma event‘i ile tetiklenen bir method‘umuz oluyor.

MainPage.xaml.cs dosyasına;

private void Button_Click(object sender, RoutedEventArgs e)
{
	MessageText.Text = "Windows 8 üzerinde çalışan\r\nilk uygulamamız!!";
}

method’unu ekliyoruz.

Son olarak F5 tuşuna basarak projeyi test amaçlı çalıştırıyoruz. Uygulama açılışında ilk önce bekleme ekranı ekrana geliyor.

Fakat çok kısa süre içerisinde ilk ekranımız açılıyor.

Butona tıkladığımızda TextBlock metin ile doluyor.

Kodların tamamı;

<UserControl x:Class="MetroStyleIlkUygulama.MainPage"
	xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
	xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
	xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
	xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
	mc:Ignorable="d"
	d:DesignHeight="768" d:DesignWidth="1366">

<Grid x:Name="LayoutRoot" Background="#FF0C0C0C">
	<StackPanel HorizontalAlignment="Center" VerticalAlignment="Center">
		<Button Content="Mesaj Göster" FontSize="28" Width="250" Height="80" HorizontalAlignment="Center" Click="Button_Click" />
		<TextBlock x:Name="MessageText" FontSize="48" Foreground="White" />
	</StackPanel>
</Grid>

</UserControl>

Windows 8 Programlama başlığını takip ederek özellikle Metro Style uygulama geliştirme konusunda daha ayrıntılı bilgiye sahip olabilirsiniz.

Bir Programcının Dünyası

Bir Programcının Dünyası - Windows 8 Programlama