C# Öğreniyorum Makale 2: Microsoft .NET Platformu

SüKuN Harbi Aktif Üye
Microsoft .NET, uygulama geliştiricilerin yazılım geliştirme sürecinde altyapı işlemleri için harcadığı eforu en aza indirgemek ve daha güvenli, güvenilir ve sağlıklı uygulamalar geliştirebilmelerini sağlamak için geliştirilmiş altyapıdır.

Bu makaleyi tamamladıktan sonra

· Microsof.NET platformu hakkında genel bilgi sahibi olacak,

· .NET Framework ve bileşenlerini açıklayabilecek,

· Microsoft .NET platformunun yazılım geliştiricilere sunduğu avantajları tanımlayabileceksiniz.

Konu 1: Yazılım Geliştirme Dünyası

Microsoft 1975 yılında Bill Gates ve Paul Allen tarafından kurulduğunda vizyonu “Her eve, her masaya bir PC” idi. Donanım ve yazılım alanlarındaki gelişmelerin hızı ve birbirlerini sürekli tetiklemesinin sonucunda bilgisayar kullanıcı sayısı hızla arttı. Artan kullanıcı sayısı beraberinde yeni gereksinim ve talepleri ortaya çıkardı. Bu taleplerin doğal sonucu olarak da farklı platformlar ve farklı servis sağlayıcıları ortaya çıktı. İletişim, finansal hizmetler, ticaret, eğlence kullanıcıların (özellikle internetin yaygınlaşmasıyla birlikte) en yoğun talep gösterdiği hizmetler halini aldı. Günümüze baktığımızda Microsoft’un çıkış noktasındaki hedefine büyük oranda ulaştığını görebiliyoruz. Ancak geldiğimiz noktada hızla artan bilgisayar ve internet kullanıcı sayısı, beraberinde güvenlik, iletişim, entegrasyon v.b. alanlarda çeşitli engellerin ortaya çıkmasına neden oldu.

Gelişmelere kendi açımızdan, yani yazılım geliştiriciler açısından baktığımızda işler çok daha zor ve zahmetli durumda. Kurumsal uygulamaların geliştirilmesinde performans, güvenlik, süreklilik gibi konularda belirli bir seviyeyi yakalamak için oldukça fazla efor sarfetmemiz gerekiyor. Örneğin elektronik cihazlarla soket iletişimi kuracak uygulamaları geliştirebilmek için iki alternatifimiz var. Birincisi 3. parti firmalar tarafından geliştirilmiş olan bileşenler satın almak ve uygulamamıza entegre etmek. Diğer alternatifimiz ise oldukça uzun sürecek bir kodlama ile benzer bir iletişim katmanını geliştirmek. Her ikiside firmaların birinci tercihi olmayacaktır. Sorunumuz sadece soket iletişimi noktasında değil elbette. Bölümün başında da belirttiğimiz gibi güvenlik, performans, yetkilendirme gibi pek çok konuda uygulama geliştiriciler oldukça zahmetli altyapı kodlarını geliştirmekle uğraşmak zorunda kalıyor. İşin kötü yanı geliştirilen bu altyapı kodları çoğu zaman istenilen verimliliği sunmaktan oldukça uzak kalıyor. Kabul etmemiz gereken şey, bu altyapı kodlarını geliştirecek bilgiye sahip olmadığımız, sahip olsak bile altyapı kodlarını yazacak zamana ve iş gücüne sahip olmadığımız, zaman ve iş gücü konusundaki ihtiyaçlarımızı karşılayabilsek bile bu kodların testi, güvenliği, güvenilirliği, performansı ve uygulamalara entegrasyonu konusunda hiç bir zaman istenilen düzeye ulaşamayacağımızdır. Keşke ihtiyaç duyduğumuz tüm altyapı işlemleri için hazır, kullanımı kolay ve esnek bir platform olsaydı.

Hayalini kurduğum aslında şöyle bir sistem:

“Bir sanal mağazada cep telefonlarından sorumlu departmanda satış müdürü olarak çalışıyorsunuz. İş dışındasınız ve akıllı cihazınıza bir mesaj geliyor: “Henüz piyasaya yeni çıkmış olan telefonumuz inanılmaz satışlar yapıyor, telefon çok popüler ve stoklarınızda oldukça azalmış durumda.” Bu mesajın hemen ardından akıllı cihazınız üzerinden, şirketiniz için fiyat ve teslim zamanı açısından en uygun olan tedarikçiyi bulup ihtiyacınız kadar telefonu sipariş edebiliyorsunuz. Peki ya bu koşullar altında çalışmıyor olsaydınız? Şirketinizden sizi cep telefonunuzdan arayacaklar ve problemi ileteceklerdi. Sonra da siz şirketinize ancak dönebildiğiniz zaman tedarikçilerle teker teker irtibata geçerek hangisinin şirketiniz için en yararlı olduğuna karar verecektiniz. Sipariş ve teslimat bilgileri üzerinde anlaştıktan sonra işleminizi tamamlamış olacaktınız. Yani sadece bir kaç dakikada yapabileceğiniz basit bir işlem için belki de bütün bir gününüzü kaybedecektiniz. Verimliliğiniz düşerken zamanınızı etkili şekilde kullanamayacaktınız. Oysa akıllı cihazınız üzerinden tüm bu işlemleri kısa bir şekilde çözebildiğinizden işe gitmenize bile gerek kalmadan zamanınızı en az şekilde kullanarak şirketiniz için en iyi olan seçimi yapabilirsiniz.”

Kesinlikle işler çok daha verimli ve kolay ilerlerdi.. Elbette bu kurulabilecek hayallerin sadece mobil platforma yönelik bölümünden bir kesit.

Sorunun Temeli

Microsoft, vizyonu doğrultusunda attığı adımların yazılım geliştiricilere yansıyan sonuçlarını sürekli izliyordu ve yazılım geliştiricilerin sorunlarını şu başlıklar altında ele alıyordu.

· Uygulamaların, sistemlerin ve kurumlardaki birimlerin ve farklı kurumların arasındaki iletişim sorunu.

· Çalışanların ihtiyaç duydukları verilere, ihtiyaç duydukları an, kesintisiz, hatasız ve güvenli bir şekilde ve istedikleri platformdan erişebilmeleri.

· Uygulama geliştirme sürecinde, geliştiricilerin altyapı kodları ile uğraşması ve bunun sonucunda uygulama geliştirme ve test süresinin uzaması.

· Bir uygulamanın farklı platformlarda çalıştırılabilmesi için aynı işlemleri gerçekleştirecek kodların tekrar tekrar yazılması ihtiyacı.

Microsoft 1990 yılında, yaşanacak 10 yılıda öngörerek bu ve benzeri sorunlara çözüm sunacak, uygulama geliştiricilerin ve son kullanıcıların işlerini kolaylaştıracak bir platform geliştirmeye başladı. Microsoft bu platforma öylesine inanıyorduki kaynaklarının %80’inden daha fazlasını, yani kaderini bu platforma bağlamıştı. Çok geniş bir analiz ve geliştirme ekibinin çalışmalarının sonucunda ortaya çıkan ürün 2000 yılında dünyaya sunulduğuna insanların karşılarında gördükleri yapı karşısında hissettiklerini tanımlamak için kullanılabilecek en uygun kelime; “Hayranlık”tı.

Microsoft.NET Platformu her türlü yazılım geliştirme ihtiyacına yönelik hazır bir altyapı sunarak uygulama geliştiricilerin windows, web ve mobil platformlara yönelik uygulamaları, çok daha hızlı, kolay ve güçlü bir şekilde geliştirebilmelerine olanak tanıyordu. Uygulama geliştiriciler şifreleme, kimlik doğrulama, yetkilendirme, soket iletişimi, her türlü veri kaynağına yönelik veritabanı işlemleri, xml ve web servisi teknolojilerine kadar burada saymadığımız (editörler bir modülün 100 sayfayı geçmesine pek sıcak bakmıyorlar) ve hatta milyonlarca sınıf ve fonksiyonları hazır şekilde karşılarında gördüler. Bu güne kadar günler, haftalar ve hatta aylar harcayarak geliştirmeye çalıştıkları bu yapıların hepsini karşılarında kullanıma hazır bir şekilde görmekten de son derece memnunlardı.
 

Benzer Konular

Yanıtlar
3
Görüntülenme
1B
Yanıtlar
0
Görüntülenme
1B
Yanıtlar
0
Görüntülenme
1B
Yanıtlar
0
Görüntülenme
2B
Yanıtlar
0
Görüntülenme
2B
Üst