Smartface Designer’da RSS Kullanımı
Posted by lyd_y in Geliştirme Araçları, Genel, Smartface Designer on July 15th, 2010
Haber servislerine, güncel bilgilere, öğrenmek istediğiniz bilgiye anında ulaşmanın en kolay yolu artık mobil dünya.Smartface Designer’ın RSS Feed hizmetiyle kendi zevkimize göre tasarımımızı yaparak istediğimiz bilgilerden anında haberdar olabiliriz.
Peki nedir bu RSS?
RSS çeşitli internet siteleri tarafından yayınlanan haber vb. içeriğin tek bir ortamdan topluca izlenebilmesine olanak sağlayan yeni bir içerik besleme yöntemidir. RSS Real Simple Syndication, RDF Site Summary veya Rich Site Summary (Zengin Site Özeti) kelimelerinin baş harflerinden oluşan kısaltmadır. XML biçiminde olan RSS dosyaları ilk olarak NetScape firması tarafından geliştirilmeye başlanmıştır. RSS dosyalarının kullanımı her geçen gün artarak yaygınlaşmaktadır.
RSS yöntemini destekleyen sistelerin hazırladıkları XML biçimli dosyalara bir çok programla erişmek mümkündür. XML okuyucusu olan bu programlar, web gezgini veya e-posta istemcisi olabileceği gibi sadece RSS içereriği izlemek için hazırlanan masaüstü programları da olabilir.
RSS ikonunu (
) gördüğünüz herhangi bir yerde, RSS verilerini RSS istemcinizi kullanarak alabilirsiniz.
İlgili RSS adresi bulmakla işe başlayalım.
-RSS adreslerin yüklenmesi
Bulduğunuz RSS adresi load etmek için tool üzerinden RSS Feed seçeneğini seçerek adres yükleyin.
Bize gelen parametreler Title, Description, Link vb bu işlemin sonrasında kullanılmak üzere oluşturuluyor.
-Tablo ve dataset oluşturma
RSS yüklemesinden sonra tabloların ve datasetin kendiliğinden oluştuğunu görebiliriz.Oluşan tablo RSS ten beslendiği için dinamik yapıdadır.
-Obje dizaynı ve datasetlere bağlanması
RSS yükledikten sonra title isminde bir parametre oluştuğunu görmüştük.Bu başlıkları liste şeklinde almak ve sonrasında bir seçim yaparak konunun detaylarını Description yoluyla görüntülemek istiyorum.Bunun için repeat box kullanalım.
Repeat box objemizi şekildeki gibi oluşturduk.Başlık kışmına bir label yerleştirdik.Burada tasarımı yaparken önemli nokta repeat box’ın inactive kısmının da datasete bağlanması gerektiğidir.Repeat box’ın label’ların ayrı ayrı window->palette->data source yolundan datasetlerine bağlayalım.Label’ları da title parametresine bağlayalım.
->Label’ın title parametresine bağlanması
Haber başlıkları repeat box içerisindeki active
ve inactive label’ların her ikisine de bağlandı,
repeatbox datasete bağlandı.Şimdi haberlerin
içeriklerini ayrı bir label’a bağlayalım:

Bunun için öncelikle yukarıdaki resimde görüldüğü gibi yeni bir diyalog oluşturalım.Tool’da new page’i tıklayarak create new dialog’u seçelim.Diyalog sayfa üzerine açılacak küçük bir pencere görünümündedir.Burada haber içeriklerini görüntüleyeceğiz.Oluşturduğumuz diyaloğa bir label koyalım.
Görüldüğü gibi bu label’ı yine data source kısmından description parametresine bağladık.Diyaloğun büyüklüğünü,
efektlerini, rengini vs palet kısmından ayarlayabilirsiniz.
-Read RSS
RSS hizmetinden yararlanmak için bir action ataması gerekiyor.Biz uygulama açıldığında bu hizmeti başlatacak şekilde ayarlayalım.Action for, object ve events seçimlerimizi şekildeki gibi yapalım:
Yaptığımız bu örnek istediğimiz zaman haberlerin en güncel haline ulaşmamızı sağlıyor.
Şimdi Device Simulator ile uygulamamızı test edelim:
İlayda YELTEKİN
ilaydayeltekin@gmail.com
Smatface Designer’da Manuel(static) Tablolar
Posted by celikfi in Geliştirme Araçları, Genel, Smartface Designer on July 15th, 2010
Smartface Designer’da tablo oluşturma araçlarının bulunması kullanıcıya kullanım kolaylığı sağlamaktadır. Bu tabloları oluşturmak için asp.net’teki gibi başka veri tabanı dillerini bilmeye gerek olmamasının yanı sıra veritabanı bağlantısı yapmaya da gerek yok. Bu özellikler yeni kullancılar için uygulama geliştirmeyi çile olmaktan çıkarır.
Smartface Designer’da tablo oluşturmak için başka bir platformla bağlantı kurmaya gerek yoktur, tabloyu oluşturmak için hazır yaratılan tablolara içeriklerin girilmesi yeterlidir. Şimdi ASP.NET için MYSQL bağlantısının nasıl yapıldığına bakalım.
< %@ Import Namespace="System.Data.OleDb" %> <script runat="server"> sub Page_Load dim dbconn dbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; data source=" & server.mappath("northwind.mdb")) dbconn.Open() end sub </script>
Yukarda görüldüğü gibi sadece veritabanına bağlamak için bu kodları yazmak gerekir. Bunun dışında veri tabanından verileri okumak ve üzerinde sorgu yapmak için de bundan daha uzun kod yazmak gerekiyor. Aşağıda göreceğimiz Smartface Designer’da tablo oluşturmada bunların hiç birine ihtiyaç duyulmadığı için kullanıcıya ciddi kolaylık sağlamaktadır.
Şimdi Smartface Designerda tablo nasıl oluşturulur ona bakalım.
I. Lokal Tablo Oluşturma:
Uygulamada verileri lokal olarak çekmek için bu tablolar kullanılmaktadır. Bu veriler kullanıcı tarafından elle girilmektedir. Tablolar Smartface Designer’ın içinde bir ikon olarak seçilebilir olarak yer almaktadır. Bu ikon seçilip tablo tablo içerikleri doldurulduğunda “Projects Browser’da” bulunan “Local Tables’ın” içinde verilen isimde bir tablo oluşur.Uygulamalarda bu tablolar lokal olarak yer aldıklarından projenin boyutunu artıran araçlardır. Eğer tablo kullanımı gerekliyse bunların verileri küçük boyutlarda seçilmelidir. Manuel olarak seçilen tabloların uygulamada kullanılabilir olması için Datasetler oluşturulmalıdır.
Statik tabloyu Smartface Designer’da oluşturmak için tablo ikonun üzerini tıklayınca tablo sayfası açılır.
Bu sayfaya bir tablo adı verilip veri tabanı oluşturulur. Oluşturulan tablonun max size’nı kullanıcı belirleyebilmektedir. Tabloya isim verdikten sonra kullanacağımız kolonları oluşturmamız gerekmektedir.
Her sütunun bir ismi, bir tipi(type) ve ilk değeri(default) bulunmaktadır. Burada sütun ismi yazıldıktan sonra bu sütunun tipi(type) aşağıdaki şekilde görüldüğü gibi seçilir. Eğer kullanıcı hiçbir şey yapmazsa default olarak string tipine sahip olur. Bu işlem tamamlandıktan sonra tabloları doldurabiliriz.
“Local tables’da” oluşan tabloya sağ tıklanarak “Edit Rows” seçilir ve tablo içerikleri doldurulur. Aşağıdaki şekilde gösterilmiştir.
Ekleyeceğimiz satır sayısı kadar insert butonunu tıklayarak satırlar oluştururuz. Bu oluşturulan satırlara kolonlarda(column) belirtilen tiplerde(type) veriler girilmesi gerekir. Resim(Picture) için bilgisayardan dosya seçme seçenekleri yer almaktadır. Tablo doldurma işlemi bittikten sonra tablo save edilir. Tablonun sağ üst köşesinde tablo verilerinin kapladığı hafızayı görülebilmektedir.
Tabloların nasıl oluştuğunu öğrendik şimdi Dataset nasıl oluşturulur ona bir bakalım.
II. Dataset Oluşturma:
Dateset manuel tablolarının nesnelerde(object) kullanılabilir hale getirmek için oluşturulur. Bu tabloların Smartface Designer’a uyarlanması için Dataset’lerini oluşturulması şarttır. Dataset ikonu tıklandığında çıkan Dataset sayfasında “Local Tables’da” bulunan tablo isimleri “ComboBox’da” sıralı olarak görülür. Bu tablolardan kullanacağımızı seçip Dataset’imizi oluştururuz. Örneğin ülkeler datasetini oluşturalım.
Dataset’ini oluşturacağımız tabloyu sıralamak istersek “Sort’tan” seçtiğimiz kolon’a(column) göre küçükten büyüğe ya da büyükten küçüğe sıralayabiliriz. Böylece tablo oluştururken verileri sıralı girmemize gerek kalmaz, Dataset bizim yerimize sıralamış olur. Ülkeler Dataset’ini ülke adına göre sıralayalım.
Dataset sayfasındaki bütün seçimlerimizi yaptıktan sonra “Ok” butonunu tıklayarak Datasetimizi oluştururuz. Dataset’imiz “Data Access” kısmında görünür olur. Şekilde de görüldüğü gibi…
Önemli: Bir tablonun birden fazla Dataset'i oluşturulabilir. Bu sayede bir dataset'te filtreleme yaparken başka bir Dataset'te ana tablomuz değişmeden tutulmuş olur.
Dataset’in nasıl oluştuğunu öğrendikten sonra nasıl filtrelendiğini ve nasıl kullanılacağı kısmını anlatmak kaldı. Şimdi Dataset nasıl filtrelenir ona bakalım.
III. Dataset Filtreleme:
Filtrenin amacı genel bir tablodan sadece kullanacağımız satırların kaldığı bir tablo oluşturma olarak açıklayabiliriz. Bu genel tabloya örnek olarak; İTU’deki bütün öğrencilerin okul numaralarının, isim-soyisimlerinin ve bölümlerinin bilgilerinin tutulduğu bir tablo olduğunu düşünelim. Biz bu tabloyu sadece bilgisayar mühendislerine göre filtrelersek elimize bilgisayar mühendislerinin listesini tutan bir tablo kalmış olur. Bunu bir nevi sorgulama olarak görebiliriz. Aşağıda Dataset filtrelemenin nasıl yapıldığını ülkeler Dataset’inde gösterelim.
Yukarda bulunan artı işareti tıklandığında Dataset’in “Filter” bölümünde filtreleme satırı çıkar. Burada “Colums” kısmına kullandığımız Dataset’te yer alan tablonun sütün isimleri çıkar. Bu sütunlardan biri seçilerek “Operator” seçilir. “Columns” ve “Operatör” belirtildikten sonra sıra geldi filtreleyeceğimiz veriyi almaya. Bu veriyi “Dataset Column’dan(Dataset Sütun)”, “Object Value’den(Nesne)” veya “Constant(sabit)” olarak alabiliriz.
Bu örnekte “Ulkeler” tablosunun ulkeadi sütununda turkiye olan satırların bulunduğu bir tablo oluşur.
Önemli:
Filtreleme yapılan Dataset'lerde bu işlemin yapıldığı yerde
"refresh" dataset" yapmak gerekir.
Dataset oluşturduktan sonra bunları bağlandığı nesneler konusunu bir örnekle açıklayıp konuyu burada bitirelim.
IV. Dateset Bağlantılı Nesnelerden Oluşan Örnek Uygulama:
Bu uygulamanın amacı Aksiyon’ların (Action Editors) Dataset özellikleri ve Dataset filtrelemenin nasıl yapıldığıdır.
Örnek olarak anlatacağımız uygulamada farklı farklı ülkeler ve bu ülkeler hakkında bilgilerin yer aldığı bir mobil uygulama olacaktır. Bu uygulamada “RepeatBox’larda” bulunan ülkelere tıklanınca “ÜlkeBilgi” sayfasına giderek ülke hakkında bilgileri bir Label’ın içinde görüntülenecek. “ÜlkeBilgisi”" sayfasında ileri ve geri butonlarıyla Dataset’in satırlarında ileri geri hareket etmektedir.Şimdi aşama aşama uygulamayı nasıl gerçeklediğimizi anlatalım.
Program Geliştirme Zamanı(Designer Time)
“RepeatBox’un” Palettes’de bulunan “Data Source” kısmına Dataset’lerden “Ulkeler” Dataset’ini bağladık. Aşağıda resimde gösterildiği gibi “RepeatBox’a” Dataset bağlanmaktadır.
“RepeatBox’a” Dataset bağladıktan sonra sıra Dataset’teki verilerin “RepeatBox’ta” gösterilmesine geldi. Öncelikler “”RepeatBox hakkında biraz bilgi verelim.
“RepeatBox’ın” aktif(active item) ve pasif(inactive item) durumları bulunur. “RepeatBox’ta” aktif ve pasif kullanılmasındaki amaç hangi seçeneğin aktif olduğunu göstermeye yarar. Bu fark da aktif’te ve pasif’te kullanılan araçların renklerinin, yazı boyutlarının farklı seçilmesiyle sağlanabilir.
“RepeatBox’ın” Plattes’inde bulunan aktif(active item) ve pasif (Inactive item) kısımlarına bir “Label” yerleştirip bu Label’ların “Data Source’larına” Dataset’te istenen kolon(column) seçilir. Bu seçilen kolonun içeriği “RepeatBox’ta” görüntülenir. Böylece Dataset’te bulunan ülke isimleri alfabetik olarak “RepeatBox’a” yazılmış olur.
Kullanıcı “RepeatBox’ta” sıralanan ülkelerden birini şeçtiğinde “ÜlkeBilgi” sayfasına gider. Bu bilgiler “UlkeBilgi” tablosunda bulunmaktadır. Biz bu tabloyu filtreleyerek sadece seçilen ülkenin bilgilerini çekmeliyiz.
“UlkeBilgi” tablosunun görünümü:
Bu oluşturduğumuz tablo bütün ülkelerin bilgilerini kapsadığından oluşturacağımız Dataset’e filtre koymamız gerekmektedir. Oluşturduğumuz Dataset “RepeatBox’ta” seçilen ülke adına göre filtrelenmelidir. Dataset filtrelemek için “Columns’da” bulunan tablonun kolonlarından “ulkeadi” ile “Ulkerler” Dataset’nin “ulkeadi’nın” değerine eşit olan satırlardan oluşan bir tablo oluşur.
Filtre koşunu koyduktan sonra “UI Components’lardan” RepeatBox’ın “onSelectItem’da” Dataset aksiyonlarından(Actions) yenile(Refresh Dataset=”DS_UlkeTanitimi”) seçilmelidir. Filtrelenmiş bir Dataset yenilenmezse geriye hiçbir değer döndürmez.
Dataset’i filtreledikten sonra “UlkeBilgi” sayfasını anlatabiliriz. Sayfanın en üstünde seçilen ülkenin adını (RepeatBox’ın aktif olduğu değer) gösteren label, onun altında “UlkeBilgi” Dataset’ine bağlı bulunan Label(Dataset’in satırları aynı sayfada sırayla gösterilecek ) kullanılmıştır.
Yukarda gösterilen butonlar Dataset göstericisini ileri geri hareket ettirmektedir.İleri butonun tıklanma(OnPress) durumuna aksiyon(Actions) olarak Move Next Record Dataset =”DS_UlkeTanitimi” konulur. Geri butonunda da tam tersi Move Previous Record Dataset=”DS_UlkeTanitimi” konur. İleri butonu tıklandığında Dataset göstergesi bir alttaki satırı gösterir. Geri butonunda ise bir üstündeki satırı gösterir. Şimdi ileri butonunda seçilen Dataset aksiyonu(Actions) gösterelim.
Geri butonunda ise “Next” yerine “Previous” Aksiyonu kullanılır. Bu işlemlerle program geliştirme süreci sona erdi. Şimdi geliştirdiğimiz uygulamanın ekran çıktıları ve “UlkeBilgi” tablosunu göstericisiyle gösterelim.
Simülasyon Zamanı(Run Time)
Ülkeler Sayfası:
“UlkeBilgi” tablosuna Dataset’in gösterdiği satır okla belirtildi. Burada tabloda gösterilen satır içeriğinin “Label’da” görünür.
“ÜlkeBilgi” sayfasında Dataset’in gösterdiği ilk değeri “Label’da” gösterilmiştir. İleri butonuna tıklamayla sayfanın nasıl değiştiği bunun yanında tablo göstericisini yer değiştirmesi gözlemlenecektir.
İleri butonunun içinde bulunan Dataset’te ileri git aksiyonu “UlkeBilgi” tablosunda Portekiz’le ilgili bir alt satıra geçmesini sağlar.
Görüldüğü gibi ileri butonu tıklandıkça Dataset göstericisi tabloda bir aşağı inmekte ve label bu bilgiyi göstermektedir.
Aynı şekilde ileri butonu tıklandığında gösterge tabloda aşağı doğru iner.
Ekranda tabloda göstergesinin “bilgi” kısmını Labelda gösterir.
Tablo son değeri gösterdiği için bundan sonra ileri tuşuna ne kadar basılırsa basılsın aynı yeri gösterecektir. Bu durumda ileri tuşunun aksiyonuna bir koşul konulabilir. Eğer son sayfaya gelindiyse tablonun başına git(Move First Record Dataset) aksiyonu seçilerek Dataset’in göstergesi tablonun ilk değerini gösterecek şekilde ayarlanır. Bunu yapmadan geri butonuyla önceki sayfalara geçilebilir.
Sayfalarıyla uygulama bölümünde sonuna geldik. Bu makalede Tablo oluşturmayı, Dataset oluşturmayı, Dataset Filtrelemeyi ve nesnelerle uygulama geliştirmeyi gösterdik.
Herkese iyi çalışmalar….
Fırat Çelik
firat901@hotmail.com Read the rest of this entry »
Smartface Designer’da Data Yapıları
Posted by celikfi in Geliştirme Araçları, Genel, Smartface Designer on July 15th, 2010
Smartface Designer’da data mimarisinin yerleşik olması kullanıcıya kullanım kolaylığı sağlamaktadır.Smartface Designer’da bulunan tablolar uygulamalarda üç şekilde kullanılabilmektedir.Bunlar Manuel(static), Telefondan(Device Table) ve Dinamik(dynamic) datalar olarak kullanılır. Dataları kullanmak için sadece tabloların Dataset’ini oluşturulması yeterlidir.
Bu yazımda Smartface Desinger’da kullanılan data yapıları hakkında genel bir değerlendirmede bulunacağım. Tabloların nereden nasıl oluşturulduğu, platforma bağlatılarının nasıl yapılacağı ve verilerin uygulama sayfasında aksiyonlarla (Actions) nasıl çağırılacağı hakında detaylandırılmadan anlatılacaktır. Böylece tablo ve Dataset kullanımına geçmeden önce kullanıcıya genel bir izlenim kazandırılacağını düşünüyorum.
Data yapılarını değerlendirmeden önce bu yapıyı bir şema ile gösterelim.
Smartface Designer’da data yapıları üç kademede gerçekleşmekdir. İlk olarak tabloları oluşturmamız gerekmektedir. Bu tablolar yukarıdaki şemada da gözüktüğü gibi kullanıcı tarafından elle girilerek, telefonda bulunan verileri alarak ve internet ortamından RSS veya WSDL bağlantısı kurularak oluşturulan tablolardır. Smartface Designer’da kullanıcılar kendi isteklerini karşılayabilecekleri manuel tabloları lokalde tutup, uygulamalarında kullanabilirler. Kullanıcılar bu tablolar üzerinde güncelleme yapabildikleri gibi her an tabloya ekleme yapabilirler. İkinci data yapısı şekilde de görülen telefonun içindeki veriler kullanılarak oluşturulan tablolardır. Bu tablolar telefonda bulunan rehberden, fotoğraflardan, videolardan, ses öğelerinden ve telefonun bilgilerinden oluşturulabilir. Bunun dışında dinamik olarak oluşturulan tablolar bulunmaktadır. Bu tablolar sadece uygulama çalışırken(run time) veri çektiği için uygulamanın kurulum boyutunu küçülterek şişmenin önüne geçilir. Smartface Designer’a tabloların çekilmesi için RSS veya WSDL linkleri bulunması gerekir. Bu özelliğe sahip linklerle tabloların görüntüleri uygulamaya çekilir. Bunların içerikleri Project Browser’da bulunan Local Tables’da görülmemektedir. Yukarda bütün tablo yapılarından bahsettikten sonra şimdi bu tabloların nasıl bağlandığından bahsedelim. Uygulamada oluşturduğumuz ve zaten var olan telefondan gelen tabloları kullanmak istersek bu tabloların Dataset’ini oluşturmamız gerekmektedir. Bunu yapmamızdaki amaç veri tabanımızı kullanılabilir hale getirmektir. Bir tablodan farklı adlarda birden fazla Dataset oluşturulabilir. Elimizde bir tablonun birden fazla sanal hali bulunduğundan birinde filtreleme yaparken diğerlerinde farklı bir işlem yapılabilecektir. Elimizde bulunan Dataset’leri uygulama sayfasında kullandığımız araçlarla bağlayarak tablolardaki verileri sayfamızdaki labellarda görüntülüyebilir, bunları koşulların parametreleri yapabilir ve Datasetini oluşturduğumuz tabloyu filtreleyebiliriz. Araçların içinde kullandığımız aksiyonlar(Actions) yardımıyla tabloların içindeki veriler uygulama sayfasında görüntülenir.
Burada Smartface Designer’da Data Yapılarının mantığını anlatmaya çalıştım. Bundan sonraki iki makalemde Manuel data yapısı ve Telefon data yapısını detaylarıyla anlatacağım.
Herkese iyi çalışmalar…
Fırat Çelik
firat901@hotmail.com


































Güncel Yorumlar