Makale Özeti

Smart client lokalde kullanılan, XML Web Servis kullanan, bir merkezi serverdan güncellenebilen ve yayınlanabilen uygulamalardır.

Makale

Smart client (n) Definition: Smart clients are easily deployed and managed client applications that provide an adaptive, respo

Smart client lokalde kullanılan, XML Web Servis kullanan, bir merkezi serverdan güncellenebilen ve yayınlanabilen uygulamalardır. .NET Framework ve .NET Compact Framework kolaylıkla Smart Client geliştirebilmeyi sağlarken, diğer teknolojiler aynı mimariyi kullanarak smart client uygulamalarını sağlayabiliyorlar. Smart client bir smart aygıtlar içerisinde uygulama çözümünün mimarisinin genel kavramıdır, iletişim için web servislerini kullanan esnek ve uygun bir platformdur.

 

Smart clienta neden ihtiyaç duyulduğunu anlamadan önce varolan Thin Client (Web) ve Thick Client(Desktop) mimarilerini incelememiz gerekmektedir.

 

Thin Client veya Web uygulamaları, tek konumda güncelleme ile kolay güncelleme, tek konumda güncelleme ile yayınlamada kolaylık ve kolay yönetim özelliklerini sağlar. Bunun yanı sıra, genellikle Network tabanında networke tabidir,  kullanıcı araçları zengin değildir,  geliştirilmesi komplekstir.

 

Thick Client veya masaüstü uygulamaları veya Client/Server uygulamaları, zengin kullanıcı araçları, networke bağlı kalmadan offline kullanım,  duyarlı, esnek ve yüksek verimlilik sağlar. Bunun yanında, her konumun ihtiyaç duyduğu düzenlemeler için güncellenmesi zordur, birden fazla geliştirme için yayınlanması zordur ve DLL zorluğu vardır.

 

Bu iki mimarinin en iyi avantajları, Smart Client mimarisinde birleşti.

 

Smart Client Özellikleri

 

  • Yerel Kaynak Kullanımı : Bir smart client uygulaması, kullanılan yerel kaynağı sağlayan client üzerinde yapılan koda sahiptir. Yerel kaynak kullanımı, donanımdan yazılıma her şey anlamına gelmektedir. Bir smart client yerel CPU, yerel hafıza veya disk, clienta bağlanan her bir aygıttan çıkar sağlar. Ayrıca Microsoft Ofis veya her hangi bir yüklenen iş tabanlı uygulama gibi yerel yazılımlardan da yararlanabilir.
  • Bağlantı : Smart client uygulamaları asla bağımsız değildir ve daima dağıtılmış çözümün bir parçasıdır. Bu durum, veriye veya uygulamaya erişim sağlayan web servisinin biri ile etkileşimli anlamına gelir. Çok sık, uygulama uygulamayı korumaya yardımcı olan belirli bir servise erişir, servisi güncellemeyi ve yayınlamayı sağlar.
  • Offline Yetenek : Uygulama yerel makine üzerinde çalışır, bağlantı olmasa bile çalışma gerçekleştirilebilir. Uygulama ara sıra servise bağlanarak ta çalışmaya devam edilebilir.
  • Akıllı Yükleme ve Güncelleme : Smart client yayınlamaları ve güncellemeleri, zengin client uygulamalarını kullanarak yönetir. .NET framework HTTP üzerinde yükleme ve basit dosya kopyalaması gibi, çeşitli teknikler kullanarak uygulamayı yayınlamaya imkan tanır. Uygulama çalışıyorken URL yi tıklayarak güncelleme işlemi kolay bir şekilde yapılabilir. Bu işlemler için  .NET Framework güçlü güvenlik mekanizmaları sağlar.
  • Client Aygıt Esnekliği : .NET Framework .NET Compact Framework ile birlikte smart client inşa edebileceğin genel bir platform sağlar. Sık sık smart client uygulamanın bir çok versiyonu olacaktır, her bir hedef belirli bir aygıt tipi ve kullanacağın ilişkili fonksiyonları sağlamak ve aygıta ait özel özelliklerden fayda sağlamak olacaktır.

Smart Client Tipleri

 

  • Windows Smart Client Uygulamaları: Hedeflenmiş  Windows smart client uygulamaları, zengin client uygulamalarının gelişimini temsil eder. Bu uygulamanın çeşitleri tipik olarak bilinen Windows stilinde kullanıcı arayüzü sağlayan windows formları kullanır. Bu uygulamalar masaüstü, laptop veya tablet PC ler üzerinde çalışacak uygulamalar için uygundur.
  • Office Smart Client Uygulamaları: Microsoft Office System 2003, smart client uygulamaları inşası üzerinde yardımcı bir platform sağlar. Office smart client çözümleri ile birlikte, veri kaynağını birleştirebilirsiniz, Web servislerine erişebilirsiniz, Word 2003, Excel 2003, InfoPath 2003 ve diğer Office uygulamalarının özellikleri ile smart client çözümleri geliştirebilirsiniz.
  • Mobile Smart Client Uygulamaları : Mobile smart client Pocket PC, Smartphones gibi smart aygıtlar üzerinde çalışan uygulamalardır. Bu uygulamalar .NET Framework ‘ün alt kümesi olan .NET Compact Framework kullanılarak geliştirilir. Visual Studio .NET Smart Device Projects kullanarak, .NET Compact Framework üzerinde çalışacak smart client uygulamaları geliştirilebilir.