Makale Özeti

Makale, fiyatların ucuzlaması ile birlikte populerliği artan SmartPhone lar için uygulama geliştirme üzerine temel konular örnek bir program ile inceleniyor

Makale

SmartPhone’lar icin Compact Framework ile Cross-Platform Uygulama Gelistirme

 

Bu makale de fiyatlarının düşmesiyle birlikte popülerliğinin arttığını düşündüğüm SmartPhone’lar için uygulama geliştirmeye bir adım atmakla birlikte bir SmartPhone için Windows uygulaması ile sınıf kütüphanesi nasıl geliştirilir ve bunların entegrasyonunun nasıl yapılacağından bahsetmek istiyorum.

Bunu yaparken üniversiteye hazırlanan genç arkadaşlarımıza faydası dokunması ve anlatılan konunun daha iyi anlaşılması için öss puanı hesaplayan küçük bir uygulamaya yer vereceğim.

 

Uygulama için ihtiyacımız olan yazılımlar:

  • SmartPhone SDK 2003
  • VisualStudio 2003 veya sonrası (Uygulama Whidbey ile anlatılacak)
  • Compact Framework 1.0 veya sonrası ( 1.0 SP3 kullanıldı)

 

Uygulamaya geçmeden önce SmartPhone’lardan kısaca bahsedeyim:

 

Ülkemizde birkaç modeli bulunan SmartPhone’lar genellikle ARM tipi 120Mhz’lik işlemciye sahip üzerinde Windows Mobile 2002 for SmartPhone veya 2003 versiyonu hazır olarak kullanıcıya sunulan yeni nesil gsm telefonlarıdır. Bu akıllı telefonlar, bir masaüstü bilgisayarın işlevselliğine yakın hizmetler sunmakla beraber küçüklüğü, gsm ve gprs özellikleriyle kendilerine ayrı bir sektör açmış durumdalar.

Cep telefonunun getirmiş olduğu kolaylık ve halk arasında çabuk benimseneceği tahmin edilen bu cihazlar biz uygulama geliştiricilerin ilgi odağı olma yolunda hızla ilerliyorlar.

 

Yukarıda ihtiyacımız olan yazılımları bilgisayarınızda kurulu olduğunu varsayarak uygulamamıza başlıyorum:

 

1- Visual Studio’yu açıp yeni proje formundan Smart Device Application’ı seçip projemizi açıyoruz.

 

2- Uygulamamızın motorunu oluşturacak sınıf kütüphanesini oluşturmak için karşımıza çıkan formdan seçimlerimizi resimdeki gibi yapıyoruz.

 

3- Aşağıdaki kodları aynen Class1.cs dosyasına yazıp derletiyoruz.

 

using System;

using System.Data;

 

namespace YazGelistirUygulama

{

///

/// Summary description for Class1.

///

public class OSSClass

      {

            public OSSClass()

            {

//

// TODO: Add constructor logic here

//

            }

            public static int Net(int True, int False)

            {

                  int net = 0;

                  int min = 0;

 

                  min = False & 4;

                  net = True - min;

                  return net;

            }

            public static string Calculate(int Turk, int Mat, int Sos, int Fen)

            {

                  string strSoz, strSay, strEA, strPuan;

 

                  strSoz = Convert.ToString((122.235 + (Turk * 1.930) + (Sos * 1.338) + (Mat * 0.538) + (Fen * 0.200)));

                  strSay = Convert.ToString((124.321 + (Turk * 0.509) + (Sos * 0.185) + (Mat * 1.913) + (Fen * 1.357)));

                  strEA = Convert.ToString((121.697 + (Turk * 1.426) + (Sos * 0.582) + (Mat * 1.825) + (Fen * 0.203)));

                  strPuan = "Sozel : " + strSoz + "\n" + "Sayýsal : " + strSay + "\n" + "Esit Agýrlýk :" + strEA;

                  return strPuan;

            }

      }

}

 

4-Çıkan dialog kutusuna tamam deyip yeni bir proje oluşturmak için 1. adımı tekrarlayacağız ama tek fark projemizi bu sefer VisualBasic.NET projesi olarak başlatacağız.

 

 

 

 

 

5-Resimlerden görülen seçenekleri seçip Windows Uygulaması projemizi oluşturuyoruz.

 

 

6- Formumuzu aşağıdaki veya ona benzer bir şekilde dizayn ettikten sonra sıra C#’ta yazıp derlettiğimiz dll dosyasını VB.NET’e eklemeye geldi.

 

7- Solution Explorer’dan References klasörüne sağ tuşla tıklayıp Add Reference diyoruz.

 

 

 

 

8- Karşımıza çıkan formdan

Browse butonuna tıklayıp daha önce derlettiğimiz proje dosyamızı bulup ‘bin’ klasöründe yer alan proje ismiyle aynı ismi taşıyan dll dosyasını ekliyoruz. Artık C#’ta yazdığımız sınıf kütüphanesini VB.NET’de kullanabiliriz.

Sıra geldi kod ile tasarlamış olduğumuz kullanacı arabirimini ve de eklediğimiz dll’i birleştirmeye: Whidbey’nin kendi oluşturduğu kodları çıkartıp bizim menuItem’a eklememiz gereken kodu aşağıya yazıyorum:

Private Sub MenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem1.Click

        Dim ossClss As YazGelistirUygulama.OSSClass

        Dim Turk, Mat, Sos, Fen As Int32

        Turk = ossClss.Net(CInt(TextBox8.Text), CInt(TextBox7.Text))

        Sos = ossClss.Net(CInt(TextBox6.Text), CInt(TextBox5.Text))

        Mat = ossClss.Net(CInt(TextBox4.Text), CInt(TextBox3.Text))

        Fen = ossClss.Net(CInt(TextBox2.Text), CInt(TextBox1.Text))

        MessageBox.Show(ossClss.Calculate(Turk, Mat, Sos, Fen))

End Sub

 

Bu işlemide yaptıktan sonra programımızı derletmek için F5’e bastığımızda ekrana aşağıdaki gibi bir dialog gelecek

Dialogda gösterilen emulatorü seçip Deploy butonuna bastığımızda gerçek bir SmartPhone gibi çalışacak olan emalatörümüz açılıp, yazdığımız uygulamayı önce yükleyecek. Bu işlemin ardından da çalıştıracak.

 

 

İşte bu kadar !!!

Gördüğünüz gibi Compact Framework ile SmartPhone programlamanın kodlama bakımından standart bir Windows uygulaması veya bir sınıf kütüphanesi oluşturulmasından neredeyse hiç farkı yok.

 

İlerleyen dönemlerde SmartPhone ile gerçek dünyada karşımıza çıkabilecek sorunlara çözüm getirebilecek uygulama yaklaşımlarıyla devam edeceğim.

 

 

Tüm Sevgi ve Saygılarımla,

 

Murat KANBER

Beta tester of Microsoft Corp.

FlyingLogic DG

flyinglogic@gmx.net