Volkan Atasever

mühendislik, edebiyat, retro computer, yazılım, şiir, nümismatik, bilişim, podcast ve daha bir çok yazılarım...

PCWorld Ocak 2010 Sayısı - Mobil Programlama - İkinci Yazım

clock Aralık 30, 2009 04:30 by author Volkan Atasever

PCWorld, Ocak 2010 sayısında mobil programlama yazı dizisinin ikinci serisi yayınlandı. İkinci yazımda .Net Compact Framework ve getirileri ile ilgili anlatımların yanı sıra bir projenin baştan sona çalışması hakkında bilgi edinebilirsiniz. Dünyanın en çok satan bilgisayar dergisinde yazmak oldukça keyifli bir deneyim.

Konu Başlığım: Mobil Programlama: Visual Studio 2008 içinde mobil geliştirme araçları 



High Capacity Color Barcode (Microsoft Tag) - 2

clock Aralık 27, 2009 06:49 by author Volkan Atasever

 

Teknik ve Uygulaması

Bu api Microsoft tarafından Microsoft Tag Beta Public API ismi altında yayımlanmakta ve herkese açık bir web servis olarak sunulmaktadır. Beta versiyonuna başvurduğunuz size Public API’yi kullanmanız için bir anahtar verilmektedir.

Bu anahtarla; https://ws.tag.microsoft.com/MIBPService.wsdl adresinden bu api’yi kullanabilmektesiniz. Hesabınıza 500 tane kategori açma ve 5000’e kadar tag oluşturma ve silme izni verilmektedir.

Bu tag’in web servisini nasıl projeme tanıtabilirim?a-) Visual Studio projesi yaratın

b-) Project explorer menüsünden service reference’a sağ tıklayıp add service reference seçeneğini seçin.

c-) Adres olarak: https://ws.tag.microsoft.com/MIBPService.wsdlgirin

d-) İsim uzaylarınızı kontrol edin ve aynı isim uzayında birleştirin.

Nasıl Tag Yaratabilirim ?

Bunun için KEY’inizi almış olmanız gerekmektedir.    

private void CreateTag()   

{       

    try        {     

       MIBPContractClient OMIBPClient = new MIBPContractClient();  

       UserCredential oCredential = new UserCredential();

       oCredential.AccessToken = "Erişim anahtarınızı giriniz";

      URITag uriTag = new URITag();

      uriTag.MedFiUrl = http://www.birurlgir.com;

      uriTag.UTCStartDate = new DateTime(yyyy, mm, dd);

      uriTag.UTCEndDate = new DateTime(yyyy, mm, dd);

      OMIBPClient.CreateTag(oCredential, "Kategori", uriTag);

     }

     catch

     {

            throw;

     }   

}

 Nasıl Tag Editleyebilirim ?

  private void UpdateTag()
    {
        try
        {
            MIBPContractClient OMIBPClient = new MIBPContractClient();
            UserCredential oCredential = new UserCredential();
 
            oCredential.AccessToken = "Erişim anahtarınızı giriniz";         
            vTag.Title = "Yeni tag ismi";
 
            OMIBPClient.UpdateTag(oCredential, "Kategori ismi", "oluşturulan tagın ismi", vTag);
        }
        catch
        {
            throw;
        }
    }

 Tagi nasıl aktif hale getirebilir veya durdurabilirim ?

private void ActivateTag()
    {
        try
        {
            MIBPContractClient OMIBPClient = new MIBPContractClient();
            UserCredential oCredential = new UserCredential();
 
            oCredential.AccessToken = "Erişim anahtarınızı giriniz";         
            OMIBPClient.ActivateTag(oCredential, "Kategori ismi", "Tag ismi");
        }
        catch
        {
            throw;
        }
    }
    
    private void PauseTag()
    {
        try
        {
            MIBPContractClient OMIBPClient = new MIBPContractClient();
            UserCredential oCredential = new UserCredential();
 
            oCredential.AccessToken = "Erişim anahtarınızı giriniz";         
            OMIBPClient.PauseTag(oCredential, "Kategori ismi", "Tag ismi");
        }
        catch
        {
            throw;
        }
    }

Nasıl Kategori tanımalayabilirim ?

    private void CreateCategory()
    {
        try
        {
            Category oCat = new Category();
            MIBPContractClient OMIBPClient = new MIBPContractClient();
            UserCredential oCredential = new UserCredential();
 
            oCredential.AccessToken = "Erişim anahtarınızı giriniz";
            oCat.Name = "Kategori ismi";
            oCat.UTCEndDate = new DateTime(yyyy, mm, dd);
            oCat.UTCStartDate = new DateTime(yyyy, mm, dd);
 
            OMIBPClient.CreateCategory(oCredential, oCat);
        }
        catch
        {
            throw;
        }
    }
      

 Kategoriyi nasıl düzenleyebilirim ?

    private void UpdateCategory()
    {
        try
        {
            Category oCat = new Category();
            MIBPContractClient OMIBPClient = new MIBPContractClient();
            UserCredential oCredential = new UserCredential();
 
            oCredential.AccessToken = "Erişim anahtarınızı giriniz";
            oCat.Name = "Yeni kategor ismi";
            oCat.UTCEndDate = new DateTime(yyyy, mm, dd);
            oCat.UTCStartDate = new DateTime(yyyy, mm, dd);
 
            OMIBPClient.UpdateCategory(oCredential, "kategori ismi", oCat);
        }
        catch
        {
            throw;
        }
    }

Kategoriyi nasıl aktif hale getirir veya durdurabilirim ?

    private void ActivateCategory()
    {
        try
        {
            Category oCat = new Category();
            MIBPContractClient OMIBPClient = new MIBPContractClient();
            UserCredential oCredential = new UserCredential();
 
            oCredential.AccessToken = "Erişim anahtarınızı giriniz";
            OMIBPClient.ActivateCategory(oCredential, "kategori ismi");
        }
        catch
        {
            throw;
        }
    }
  
   
    private void PauseCategory()
    {
        try
        {
            Category oCat = new Category();
            MIBPContractClient OMIBPClient = new MIBPContractClient();
            UserCredential oCredential = new UserCredential();
 
            oCredential.AccessToken = "Erişim anahtarınızı giriniz";
            OMIBPClient.PauseCategory(oCredential, "kategori ismi");
        }
        catch
        {
            throw;
        }
    }
      

Nasıl Barkod yaratabilirim ?

private void CreateBarcode()
    {
        try
        {
            MIBPContractClient OMIBPClient = new MIBPContractClient();
            UserCredential oCredential = new UserCredential();
 
            oCredential.AccessToken = "erişim anahtarınızı giriniz";
            byte[] oBarcode = OMIBPClient.GetBarcode(oCredential, "kategori ismi", "Tag ismi", 
                                                     ImageTypes.tiff, Size, 
                                                     DecorationType.HCCBRP_DECORATION_NONE, 
                                                     Is Black or White);
       }
        catch
        {
            throw;
        }
    }  

Microsoft Tag’in beta sürümünde şu anda bu özellikler kullanılabilmektedir.

Sonuç

Bu makalede özellikle yüksek kapasiteli renkli barkod uygulamasının Microsoft firmasının Microsoft Tag ticari ismi ile piyasaya sunduğu bir teknolojiyi inceledik. Uygulamanın hali hazırda piyasada kullanım alanlarını incelerken kullanılabilecek olası sahalarada örnek verdik.  Görmüş olduğunuz gibi kullanım alanlarının sınırının oldukça geniş olan bu teknoloji avantajlar getirdiği gibi dezavanatajları da yapısı ile birlikte getirmektedir. Biz yazılım mühendisleri veya yazılım uzmanları açısından en can sıkıcı nokta bu uygulamanın beta aşamasında dahi belli bir Tag ve kategori oluşturma sınırı ile sunulması oldu. Teknolojinin web servis kullanılarak dağıtılması HardCore yazılımcılar açısından bir dezavantaj. Uygulumalarında yüksek seviye kontrol edilebilirlik arayanlar 3. Parti yazılımları genellik bir library veya DLL alarak kullanmaya alışmıştı. En azından bir müddet sıkıntı yaratsada Bulut Teknolojilerinin biz yazılım geliştiricilere yansıması da bu olsa gerek.

Yazan: Volkan Atasever 

Kaynaklar: Microsoft Research                    

Microsoft Tag Developer Portal                 



High Capacity Color Barcode (Microsoft Tag) - 1

clock Aralık 27, 2009 06:46 by author Volkan Atasever

Bu makalemde Yüksek Kapasiteli Renkli Barkod (High Capacity Barcode Teknolojisi) bahsederken aynı zamanda kullanım alanına gerçek yaşamdan örnek verip günlük hayatımızda veya  toplumun belli bir kesmi tarafından ne kadar yoğun olarak kullanılabileceğini inceleyeceğiz. Önce geçmiş Barkod teknolojisi ve yeni bir teknoloji olan Hisgh Capacity Color Barcode teknolojisini inceleyeceğiz.

1940'ların sonunda bir lisansüstü öğrencisi olan ABD'li Bernard Silver, öğrenim gördüğü Drexel Teknoloji Enstitüsü'ne gelen bir market zinciri sahibinin kasada tüm ürün bilgilerini otomatik kaydedecek bir sistem geliştirilmesini istediğini, ama enstitünün konuyla ilgilenmediğini gördü. Bu fikir Silver'in ilgisini çekti ve doktora öğrencisi olan arkadaşı ABD'li Norman Woodland'a bundan söz etti. Konu üzerinde birlikte çalışmaya başladılar. İlk barkod uygulamasını yaza Bernard ve arkadaşı bu sayede bu teknolojilerle tanışmamızı sağladı. Fakat 1940’larda keşfedilen bu teknoloji zamanla geliştirildi fakat günümüz dünyasında her alanda kullanılabilecek ve daha fazla veri saklayabilecek 2 boyutlu analog medyalara ihtiyaç duyuldu.  Yeni teknolojinin ismi ise High Capacity Color Barcode olarak duymaya başladık.

 

High Capacity Color Barcode(Yüksek Kapasiteli Renkli Barkod) Teknolojisi

High Capacity Color Barcode teknolojisi, Microsoft Research tarafından geliştirilmiş olup dijital verileri analog medyalar üstünde saklamamıza olanak sağlamaktadır. Bu teknolojisi sayesinde görüntü alabilen herhangi bir cihaz sayesinde bu görüntüyü dijital ortama aktarıp veriyi çekebilmemize olanak sağlamaktadır.Microsoft’a göre klasik barkod uygulamalarının yerini almaktansa daha büyük verileri saklamak amaıcyla kullanılacak bir teknoloji. Bu uygulamayı kullanmak için ise günümüzde en uygun cihaz PDA diye tabir ettiğimiz Windows Mobile kullanan smartphone veya profosyonel avuçiçi bilgisayarlardır. Her hücre birden fazla renk ile ifade edildiği için daha fazla sayıda bilgi saklamaya elverişli hale gelmiştir. Daha fazla bilgi saklarken yapısı gereği çok küçük bir alanı kaplayabilmektedir.

 

Solda; 8 renk barkod 84 RAW byte saklayabilmektedir. Sağda; 4 renk barkod 58 RAW byte saklayabilmektedir.

En solda siyah beyaz matris 1byte yani 8 bit saklayabilmektedir ve 8 sembol kullanıyor. 4 renk barkod 1 byte saklayabiliyor ve 4 sembol kullanıyor. En sağdaki ise 8 renkli barkod 1byte saklıyor ve 2.66 sembol kullanmakta.

 

Oluşturulan Tag’ler herhangi bir mürekkep püskürtmeli veya lazer yazıcıyla basılabilmekte olup 600dpi çözünürlüklü herhangi kartvizit tarayıcısıyla okunabilmektedir. Bu teknolojinin temeli ise renkli üçgenlerden oluşuyor diyebilmekteyiz.

Yukarıdaki görüntü herhangi bir 320x240 çözünürlüklü bir webcam ile okunabilmektedir. HCCB ile kimlik numarası, e-mail adresi ve internet site adresini saklayabilmektedir.

 

Microsoft Tag’ları herhangi bir platform veya işletim isteminde çalışmaktadır. Buradaki asıl amaç Mobil cihazlardaki kullanım alanın arttırılması ve mobilize yaşama geçişte önemli bir adım olarak görülmektedir.Yukarıda resimde 70 piksellik bir görüntüde dahi barkod okunabilmektedir.

 

 UYGULAMA ALANLARI

Ülkemizde bu uygulamanın öncülerinden biride Hürriyet Gazetesidir. Haberlerinin yanında vermiş olduğu yüksek kapasiteli tag’lerle insanlara aynı anda haberin video’sunuda izleme olanağı sunmaktadır. Kullanım alanları ise çok geniş olduğu için bunlara değinip incelemek istemekteyim. Yukarıdada bahsettiğim gibi Tag’leri kullanabilmek için herhangi bir kamerası olan ve yeterli güçte realtime görüntü yakalayabilen her cihaz bu tagleri hareketli ortamda dahi yakalayabilmektedir.

Bu makalenin ikinci serisinde teknik alan ve kullanımlar irdelenecektir.

Yazan: Volkan Atasever

Kaynaklar: Microsoft Research                    

Microsoft Tag Developer Portal                    

WikiPedia

 



Maltepe Üniversitesi MYO Database Development WORKSHOP

clock Aralık 21, 2009 15:58 by author Volkan Atasever

21.Aralık tarihinde saat 12:50-14:50 arasında Database Development WorkShop'u için Maltepe Üniversitesi MYO Dragos kampüsündeydim. Bilgisayar Programcılığı Bölüm başkanı ve Meslek Yüksek Okul Müdür Yardımcısı Sayın Abdülkadir Erdem'in davetiyle bilgisayar programcısı öğrenci arkadaşlarıma database programlama hakkında uygulama gösterisi yaptım. Workshop'umuzun konusu Database Development'dı. SQL Server 2008, Visual Studio 2008 ve 2010 beta üstünde SQL ile ilgili işlemleri yaparken Access tarafında da Access 2007 ile bağlantıları inceleyip uygulamalarımızı gerçekleştirdik. LINQ ve daha yeni teknolojilerden de bahsedilen workshop oldukça ilgi çekti. Microsoft Dreamspark programınıda kısaca duyurduktan sonra öğrenci arkadaşlarıma günün hatırası olarak bu programa girmelerini sağlayan dreamspark kartlarını dağıttım.



Beykent Üniversitesi; SQL Server 2008 ve Veri Yönetimi Seminerim

clock Aralık 20, 2009 22:12 by author Volkan Atasever

Beykent Üniversitesinde 15.Aralık.2009 tarhinde SQL Server 2008 ve Veri Yönetimi isimli bir seminer verdim. Seminer oldukça keyifliydi. İki bölümde geçen seminerde süpriz bir Mobile Development konulu anlatımda yaptım. İlk bölümde önemli veritabanı kavramları üstünde dururken ikinci bölümde SQL Server 2008 ile gelen yenilikleri canlı demo göstresi şeklinde genç üniversite öğrencisi arkadaşlarımla paylaştım. INETA'nın desteğiyle USB Stick, Microsoft kartvizitlikler gibi ufak hediyelerde günün hatırası olarak öğrenci arkadaşlarıma vermiş oldum.

 




Volkan Atasever Kimdir ?

E-Mail: volkan(et)volkanatasever.com

Kurucu&Genel Müdür/S4G
Bilgisayar Mühendisi
Eğitmen ve Danışman
Teknoloji Yazarı

mühendislik, edebiyat, retro computer, yazılım, şiir, nümismatik, bilişim, podcast ve bir çok kategoride yazılarım...

     

Yazılım Kitaplarım

   

Şiir Kitaplarım

Ulusal Yayınlar ve Programlar

 

Sosyal Ağlarım

 

 

 

 

Retro Bilgisayar Dergimiz

Türkçe Retro Bilgisayar dergimiz haziran 2016'da ilk sayısını çıkardı.  Sizde katkıda bulunmak isterseniz bana mail atmanız yeterli. Dergimiz PDF formatında ve tamamen ücretsizdir. Software4Galaxy imtiyaz sahibidir. S4G sitesinden veya facebook sayfasından dergilere ulaşabilirsiniz.

Yasal Bilgi

Sitedeki yazıları,kodlar ve diğer materyaller Volkan Atasever'e aittir. Yazarı ve siteyi kaynak göstererek yazıları paylaşabilirsiniz.  Copyright(c)2004-2019

Sign In

Yazılım