Microsoft Stack'in Hala Geçerli Bir Seçim Olmasının Sekiz Nedeni

Yayınlanan: 2022-03-11

Hayat 10 yıl önce Microsoft geliştiricileri için harikaydı. Şirketler, geliştirme projeleri için yüzde 100 Microsoft'a geçmekten memnundu. Ön uçta ASP.NET, arka uçta .NET orta katman ve SQL Server ile işler çoğunlukla çok iyi çalıştı. Yapmadıklarında, geliştiriciler bunu bölgeyle gelen bir şey olarak kabul ettiler. Microsoft, şovu yürütmekten başka bir şey değildi. Ardından, son on yılın sonunda Microsoft'un 800 kiloluk goril statüsü çözülmeye başladı. Belki iPhone ve Microsoft'un piyasaya çıkmasıyla mobil ortama geçişi kaçırdığı için, ya da belki de açık kaynak projelerinin yaygınlaşmasından dolayıydı, ancak işler değişti ve bugün aynı şirketlerin Microsoft Stack'e geçmenin bir sorun olduğuna ikna edilmesi gerekiyor. iyi bir fikir. Bu makale, Microsoft yazılım yığınına bağlı kalmanız için sekiz neden sunmaktadır.

Neden 1: .NET Hala En İyilerden Biri

10 yıldan daha uzun bir süre önce tanıtılan .NET Framework, zengin özelliklere sahiptir ve kapsamlı bir şekilde savaş testinden geçmiştir. .NET'in ilk günlerinde yerel geliştirmeyi yönetilen kodla birleştirmek olağan bir durumken, bugün geliştirme görevlerinin büyük çoğunluğu kutudan çıktığı gibi desteklenmektedir. Oracle gibi şirketler bile, ürünleriyle arayüz oluşturmak için yüzde 100 .NET tarafından yönetilen kod (yani ODP.NET tarafından yönetilen sürücü) olan bileşenleri piyasaya sürdü. .NET API tutarlıdır, iyi belgelenmiştir ve milyonlarca kişi tarafından kullanılmaktadır.

MSDN, StackOverflow ve binlerce forum ve blog aracılığıyla sağlanan bilgi tabanı çok büyük. .NET'te geliştirme yıllarımda, bir çerçeve hatasına uzun süre takılıp kalacağım bir örneği hatırlayamıyorum; Her seferinde, birileri zaten deneyimlemiş, araştırmış ve bir cevap göndermişti, her zaman umduğum cevap değil, yine de beni ileriye taşıyan bir şey. Yaklaşan 2015 sürümüyle birlikte, .NET Core açık kaynak olacak ve Windows olmayan sistemlerde kullanılabilecektir.

Sebep #2: ASP.NET Evrimleşti

microsoft yığını

10 yıl önceki geleneksel web-to-veritabanı Microsoft yığınına baktığımızda, hangi parçaların zaman testinden sağ çıktığını ve hangi parçaların kaybolduğunu görmek ilginç. Microsoft yığınının arka ucu hemen hemen değişmeden kalırken (hala Dependency Injection, Tasks, Linq, EF veya ADO gibi aynı kalıp ve bileşenleri kullanıyoruz) ön uç, ASP.NET parçası gördü “Microsoft yöntemiyle yapın”dan (yani Web Formları) “bunu kendi yönteminizle yapın ve ASP.NET'i bir platform olarak kullanın”a temel bir geçiş. Bugün ASP.NET, Bootstrap ve AngularJS gibi Microsoft'a ait olmayan birçok teknolojiyle bütünleşen, kimlik doğrulama, paketleme ve yönlendirme için sağlam altyapıya sahip MVC tabanlı bir çerçevedir. ASP.NET siteleri, telefonlardan masaüstü bilgisayarlara kadar çok çeşitli form faktörlerinde güzel görünür ve Web API yetenekleri, web servislerini bir esinti haline getirir. Çerçeve birkaç yıldır açık kaynaklıdır, bu nedenle bir soruna takılırsanız, kaynak GitHub'da mevcuttur. ASP.NET değişti ve daha iyisi için değişti.

Neden #3: Web API'sinin Basitliği ve WCF'nin Gücü

web ve microsoft yığını

Tüm zamanların en sevdiğim alıntısı, “Basit şeyler basit olmalı; karmaşık şeyler mümkün olmalıdır”. Windows Communication Foundation (WCF) 2006'da ilk çıktığında, hiç de basit değildi; davranışlar, uç noktalar ve bağlar eziciydi. Bu nedenle Microsoft, HTTP web hizmetlerini ifşa etmeyi çok kolay hale getiren kullanımı kolay bir çerçeve olan Web API'yi yayınladı. Birkaç satırlık yapılandırmayla API'niz güvenli, "endüstri standardı" bir web hizmetine dönüşür.

Kullanım durumunuz "standart" kalıba uymuyorsa ve API'nizin kablo üzerinden nasıl açığa çıktığı konusunda tam kontrole ihtiyacınız varsa, her zaman WCF'ye geri dönebilirsiniz. Sayısız yapılandırma seçeneği ve kanca ile WCF, verilerinizi özel olarak seri hale getirmenize, günlüğe kaydetmenize, engellemenize, mesajı yönlendirmenize, eşler arası ve kuyruğa alma ve çok daha fazlasını kullanmanıza olanak tanır. Web API, WCF ile birlikte, Kay'in sözünün her iki ilkesini de sağlar: basit bir web hizmetine ihtiyacınız varsa, Web API ile birkaç dakika içinde işiniz biter; hizmet gereksinimleriniz karmaşıksa, WCF ile “hepsi” mümkündür. Bu iki teknoloji, kapsamlı bir hizmet senaryoları kapsamı sağlar ve .NET çerçevesiyle önceden paketlenmiş olarak gelir.

Sebep #4: SQL Server Her Zamanki Kadar Sağlam

Uzun yıllar boyunca, yeni geliştirme dillerinin, çerçevelerinin ve kalıplarının gelgit dalgası ön ve orta katmanlardan geldi ve veritabanı arka ucunu kurtardı. Sonuçta, eski güzel “SELECT” bugün hala 20 yıl önce olduğu kadar kullanılıyor. Sanırım bunun nedeni, birçok şirketin verilerini işlerinin özü olarak görmeleri ve bu çekirdeğin bütünlüğünü korumak, veritabanı katmanında “yeni bir şey” denemenin heyecanından çok daha ağır basıyor.

SQL Server, işlemler, referans bütünlüğü, yedeklemeler, yansıtma ve replikasyon için sayısız özellikle veri bekçisi olarak birincil rolünde üstündür, ancak SQL Server'ı rekabetten ayıran şey, Microsoft yığınının geri kalanıyla ne kadar iyi bütünleştiğidir. Hızlı geliştirme için, şu anda sürüm 6'da olan ve ergenliği geride bırakan ve veri erişimini kolaylaştırma vaadini iyi bir şekilde yerine getiren Entity Framework bulunmaktadır. Bilgi işlem gücüne ihtiyacınız varsa, .NET Framework SQL Server ile süreç içinde yüklenir, yani performanstan ödün vermeden .NET kodunu saklı yordamlar, işlevler veya kümeler olarak gömebilirsiniz. Bunu, SQL Server 2014'ün bellek içi tablolarla geldiği gerçeğiyle eşleştirin ve yalnızca SQL ve normal tablolarla yeterince hızlı yapılamayan oldukça kaygan gerçek zamanlı çözümler üretebilirsiniz. Sektörde yıllar sonra, SQL Server hala RDBMS listemin başında.

Neden #5: Kolayca Test Edilebilir

Pek çok kez, kurumsal BT'de çalışırken, testler olmadığı için yazılımların bu dokunulmaz kara kutulara dönüştüğünü gördüm ve kimse “başka bir şeyi kırmak” korkusuyla kodla uğraşmak istemedi. Ardından, binlerce testi olan sistemler üzerinde çalıştım ve yazılım piyasaya sürüldükten yıllar sonra işletmelere “evet, bu değişiklikleri yapabiliriz” diyebilmek harika bir duyguydu. Microsoft yığını, test edilebilirlik göz önünde bulundurularak tasarlanmıştır. ASP.NET MVC'nin bağımlılık enjeksiyonu için kancaları vardır ve sürüm 5'te bağımlılık enjeksiyonu çerçevenin kendisine dahil edilecektir. Orta katmanda, benzer bir hikaye: Uygulamanın arayüzle ilişkisini kesmek için bağımlılık enjeksiyonunu kullanıyoruz, bu da test zamanında üretim türlerini taklitlerle değiştirmemize izin veriyor. Veritabanı tarafında bile, saklı yordam katmanına karşı test için şablonlarla birlikte gelen SQL Server Veri Araçları vardır. Test etme, günümüzde yazılım geliştirme sürecinin ayrılmaz bir parçasıdır ve Microsoft yığını bu yeni gerçeklik için iyi bir donanıma sahiptir.

Neden #6: Ayrıntılı Destek Ekosistemi

Destek söz konusu olduğunda, topluluk forumlarından başlayıp sunucunuzda yerinde çalışan gerçek bir canlı insanla biten bir dizi seçeneğe sahip olmak güzel. Microsoft ürünleri için çevrimiçi ekosistem, sektördeki en büyüklerden biridir. Ne de olsa Microsoft, geliştiriciler tarafından geniş çapta benimsenmesini Microsoft ürünlerinin yayılmasının anahtarı olarak gören bir yazılım geliştiricisi olan Bill Gates tarafından başlatıldı. Bu, bu geliştiricilere çok sayıda destek sağlamak anlamına geliyordu.

Microsoft, çalışanlarını üzerinde çalıştıkları teknoloji hakkında blog yazmaya teşvik eden ilk kişilerden biriydi ve endüstrinin geri kalanı kesinlikle yetişmiş olsa da, doğrudan Microsoft'tan gelen eğitici videoların, kılavuzların ve makalelerin miktarı ve kalitesi bugün hala geçerli. çok etkileyici. Bu kaliteli çevrimiçi içerik katmanı, içerik kalitesi söz konusu olduğunda tutarlı olmayan, ancak yine de olmamasından çok daha yararlı olan StackOverflow gibi çok sayıda topluluk tabanlı destek ekosistemi tarafından desteklenir.

Son olarak, her zaman telefonu kaldırıp Microsoft desteğini arama seçeneği vardır. Nadiren kullanmak zorunda kaldım, ancak Microsoft geliştiricilerinin çekirdek dökümlerini analiz etmesi günü kurtarırken bir avuç üretim acil durumu vardı. Destek seçeneklerinin çeşitliliği, Microsoft yığınına geçmek için açıkça bir faktördür.

Sebep #7: Microsoft Ürünlerine Yapışıyor

Birkaç yıl önce, bir uygulama için ön uç olarak Microsoft Silverlight'ı seçmek geçerli bir seçim gibi görünüyordu, ancak artık durum böyle değil. Tüm hızıyla devam eden mobil trend ve ön uç alana hakim olan JavaScript çerçeveleri ile Silverlight artık uygun bir seçenek değil; yine de 2021'e kadar Microsoft tarafından destekleniyor. Microsoft silahlarına bağlı kalıyor, bu da gelecekte yazılım ortamına hangi teknoloji trendinin hakim olacağını bize söylemek için sihirli bir sekiz top olmadan teknoloji seçimleri yapmak zorunda kalanlarımız için iyi. Microsoft yığınını kullanmak, endüstrinin gözünden düşse bile desteklenecek teknolojiye zaman ve para yatırılmasını sağlar.

Sebep #8: Visual Studio Şemsiyesi

On yıl önce, zamanımın yaklaşık yüzde 50'sini Visual Studio'da ve yüzde 50'sini diğer araçlarda harcıyordum. Bugün, bölünme ezici bir çoğunlukla Visual Studio'nun lehine. Microsoft'un Visual Studio'nun IDE'leri barındırmak için tek duraklı bir çözüm olma vizyonu, Visual Studio ile bir düzeyde entegrasyon sunan birçok Microsoft ve Microsoft dışı ürünle meyvelerini veriyor. SQL Server Veri Araçları ile veritabanı geliştirmeden Xamarin ile iPad ve Android uygulamaları yazmaya kadar, Visual Studio tutarlı bir kullanıcı arabirimiyle tanıdık bir geliştirici deneyimi sağlar. Aynı şey, veritabanı barındırmadan mobil hizmetlere kadar çeşitli hizmetleri kapsayan bir bulut platformu olan Microsoft Azure ile çalışmak için de söylenebilir.

Visual Studio, dağıtılmış bulut altyapısının karmaşıklığını gizledi ve bulut uygulamaları geliştirme deneyimini, bulutta barındırılmayan uygulamalar geliştirme deneyimiyle tutarlı hale getirdi. Tüm parçalar Visual Studio çatısı altında güzel bir şekilde birbirine uyuyor gibi görünüyor ve genel geliştirme sürecini çok verimli hale getiriyor.

Microsoft Stack - Her İki Dünyanın En İyisi

Bugün, kaliteli yazılım yazmak için 10 yıl öncesine göre çok daha fazla seçenek var. Bu kesinlikle iyi bir şey çünkü rekabet Google, Apple, Amazon ve Microsoft gibi büyük oyuncuları yenilik yapmaya ve kayıtsız kalmamaya zorluyor. Microsoft, son on yılın teknoloji evrimi tarafından dağın tepesinden itilirken, şirket, mevcut teknolojik trendlerin gerçeklerine uyum sağlamaya istekli olduğunu ve uyum sağladığını gösterdi. ASP.NET, orijinal Web Formları tarihe karışırken, çoğu açık kaynak olan diğer teknolojileri ve metodolojileri benimsedi. .NET çerçevesi, çok iş parçacıklı ve çok çekirdekli bilgi işlem için kitaplıklarla yeni sınırları kırarak gelişmeye devam ediyor. Yaklaşan 2015 sürümüyle birlikte, çerçevenin özü, kapsayıcılık ve şeffaflık yönünde bir adım olan açık kaynak ve Windows dışı platformlara taşınabilir olacak.

Bu memnuniyetle karşılanan iyileştirmeler, test edilmiş, belgelenmiş ve desteklenen yazılımların piyasaya sürülmesi için köklü süreçlere sahip bir şirketten gelmektedir. Microsoft yığınını kullanmak, modern diller ve çerçevelerle çalışmanın heyecanını ve ayrıca geliştirme endüstrisinde onlarca yıllık deneyime sahip bir yazılım devi tarafından desteklenmenin kararlılığını getirir. Bu yüzden bugün Microsoft yığınını öneriyorum.