Bileşenler

Efsanevi 'Vista Uygulaması'

Ricky Martin - Livin' La Vida Loca (Official Music Video)

Ricky Martin - Livin' La Vida Loca (Official Music Video)
Anonim

Analistleri çok seviyorum. Dünün endüstri pacesetter için yarının bir sonraki büyük şey tahmin ya da ölüm knell sondaj olsun, analistler asla yanlış anlamaya yeni yollar tükendi.

Durumda noktada: Windows Vista ve "uygulama boşluğu." göre Evans Data Corporation (EDC) , geliştiricilerin yüzde 10'undan daha azı Microsoft'un şu anki durumu için yazıyor. Çoğunluğu (yüzde 49) hala XP için yazarken, küçük ama büyüyen, kontenjan (yüzde 13) Linux'a odaklanıyor. Bu arada, sayısız medya kuruluşu yeni Vista uygulamalarının eksikliğini azaltmaya devam ediyor. “Kimsenin istemediği işletim sistemi” diyorlar ve geliştiriciler “buna göre tepki gösteriyorlar.”

Tabii ki yanılıyorlar. Yine.

[Daha fazla okuma: En iyi Windows 10 püf noktaları, ipuçları ve tweaks]

Gördüğünüz gibi, Vista uygulaması diye bir şey yok. Bir XP uygulaması gibi bir şey yokmuş gibi. Ya da bir Windows 2000 uygulaması. Windows için yazacak geliştiriciler nadiren belirli bir sürümü hedefler. Daha ziyade, belirli bir API çerçevesini seçerler - örneğin, MFC / ATL veya.Net - ve oradan devam edin. Sonuçta ortaya çıkan uygulamanın belirli bir Windows sürümünde çalışıp çalışmadığı, geliştiricinin projeye dahil ettiği sürüm özel API uzantılarının ne olduğuna bağlı olarak değişir.

Uygulama türlerinin çoğunda bu bir nonissue olur: Jenerik kullanırlar. Bu çerçeveyi destekleyen herhangi bir Windows sürümünde çalışmasına izin veren API işlevleri. Microsoft, eski işletim sistemi platformlarına yeni çerçeveler getirme konusunda iyi bir iş çıkardığından, geliştiriciler, zengin API işlevselliği veya geniş bir kurulum tabanı arasında nadiren karşılaşıyorlar (DirectX 10'dan yararlanan video oyun geliştiricileri olmakla birlikte dikkate değer bir istisnadır. Vista'ya bağlı.

Yani tüm Vista "uygulama boşluğu" argümanı bir saman adamın biraz. Asıl soru şudur: Neden.Net çerçevesinin çeşitli yinelemelerini geliştiren geliştiriciler değil? Microsoft'un geliştirme yol haritasını izleyen herkesin belirttiği gibi, şirketin en gelişmiş API evrimi çoğu. Net. Aslında, "uzmanlar" Vista'daki yeni programlı kaynaklar hakkında konuştuğunda - Windows Presentation Foundation (WPF), Windows Communication Foundation (WCF) vb. Gerçekten.Net framework 3.0 hakkında konuşuyorlar. Ve.Net 3.0, alt düzey platformlarda (Windows XP gibi) mevcut olduğundan, argüman, geliştiriciler arasında.Net kabulü sorusuna dönüyor ve niçin (şimdiye kadar) bunu reddettiler.

Yanıt iki yönlüdür: Birincisi, geliştiriciler, yüklü temelde yaygın olarak bulunmayan API'leri hedeflemekten hoşlanmaz. Microsoft'un alt düzey sürümlere yönelik agresif desteğine rağmen, "kullanılabilir" ve "20MB artı karmaşık kitaplıklarını indirdikten sonra ve sisteminizin çeşitli bölümlerine yüklendikten sonra kullanılabilir" arasında hala büyük bir fark var. Sorun şu ki. Net, Windows XP'nin bir parçası olarak gelmiyor ve bu, geliştiricilerin, kullanıcıları bir parça yazılım yüklemeden önce.Net çerçevesinin gerekli sürümünü yüklemesi için kullanıcıları ikna etmeleri gerektiği anlamına geliyor. Her zaman kolay bir satış, özellikle kurumsal BT'nin kilitli dünyasında.

.Net framework'ü varsayılan olarak yüklenen ilk işletim sistemi olan Vista'nın.Net 3.0 uygulamalarının geliştirilmesini desteklemesi bekleniyordu. Ancak, aynı zamanda eski Win32, COM, ATL, MFC ve aşağı düzey.NET Framework uygulamalarını desteklediğinden, Vista programlarının gerçek bir sıkıntısı yoktur. Aslında, bu en yeni ve en iyi WPF / WCF çerçeve işlevselliğine sahip değilseniz, geliştiriciyi.Net 3.0 veya 2.0'a atlamak için sizi motive edecek çok az şey var. Kullanıcı Hesabı Denetimi (UAC) mekanizmasına çarpmadığınızı varsayarak, "eski" Windows uygulamanız muhtemelen Vista'nın altında olduğu gibi çalışır ve çalışır. Biliyorum, çünkü kendi kodumda durum böyleydi: UAC'ı (çoğunlukla geçici dosyaları yeni korunan dizin yapılarından uzağa kaydırmak) ve uygulama ve hizmetlerim Vista altında şampiyonlar gibi koşuyordu. Windows XP, Server 2003 ve Windows 2000. Neden kırılmadığı zaman düzeltin?

Geliştiricilerin ikinci sebebi şaşkın. Net, yavaş. Çoğu ortak işlevler basittir. Net, geliştiricilerin API karmaşıklığı ve işlenmemiş performans arasında seçim yapmaya zorluyor. Şaşırtıcı olmayan bir şekilde, çoğu geliştirici ikincisini seçmişti çünkü bir keresinde Performans Verileri Yardımcısının (PDH).Net eşdeğerinin Windows performans sayacı verilerinin gerçek zamanlı örneklemesi için kullanılamaz olduğunu keşfettiğimde yapmak zorunda kaldım. Sonuç olarak, Microsoft'un nihayetinde akıcı bir alternatif olduğu bir noktaya kadar ağ yapmasını beklerken, (1997 dolaylarında) bir Visual Studio 6 kod tabanı yaşatmaya zorlandım. Bu eski bir hikaye ve Windows geliştiriciler arasında çok yaygın.

Alt Hat: Analistler (ve onların medya ortakları) "Vista uygulamaları" eksikliğini azalttıkları zaman sadece kendi cehaletlerini trompet ediyorlar.

Sanırım bu bir Mac olayı: Birçok çağdaşım çarpık gerçeklik alanında, API işlevselliği ve işletim sistemi sürümü arasındaki bağlantı fikri, geleneksel bilgeliğin kabul edilmiş bir parçası haline geldi. Dürüst bir hata, Apple'ın eski versiyon bağımlılıklarını Microsoft'un kusurlu, ama çok daha esnek, API yayılımına eşit kılıyor.

Çok fazla meyve bunu sana yapacaktır.