NET CORE PROJELERİ

ASP.NET Core Nedir?
ASP.NET Core, Microsoft tarafından geliştirilen açık kaynak kodlu bir yazılım geliştirme platformudur.

Performans

ASP.NET Core içerisinde bir çok kütüphane ve optimizasyon aracı bulundurmaktadır. Bu araçlar sayesinde daha sürdürülebilir, yüksek performanslı yazılımlar oluşturabilmektedir. Hızlı sürüm döngüleri, kolay güncellemeler, bellek optimizasyonları ve boşluk (space) ayırma gibi özellikler altyapıyı mobil içinde çok uygun bir hale getirmektedir. ASP.NET Core sadece .NET geliştiricileri için uygun olan bir teknoloji olarak değerlendirilmemelidir, tüm sektör için güvenilir ve ekonomik bir çözüm olarak değerlendirilmelidir.

Web Geliştirme

Cross-Platform ve Container Desteği
Bir web uygulaması geliştirildiğinde uygulamanın tüm platformlarda sorunsuz şekilde çalışması gerekmektedir. Cross-Platform Desteği olarak adlandırdığımız bu özellik ASP.NET Core tarafından desteklenmektedir. Böylece geliştirilen uygulamalar Mac OSx, Linux ve Windows işletim sistemleri üzerinde sorunsuz şekilde çalışmaktadır. 

 

Container; işletim sistemi seviyesinde sanallaştırma anlamına gelen, türkçe karşılığı konteyner olan, bulut (cloud computing) dünyasında yaygın şekilde kullanılan bir teknolojidir. Kubernetes, Dockers ve diğer teknolojileri destekler. ASP.NET Core bu teknolojilerin kolay şekilde uygulamalar içerisinde kullanılabilmesine olanak sağlar.

Açık Kaynak Kod Esnekliği
Açık kaynak kodlu, modüler bir altyapı olarak tanıtılan ASP.NET Core, projenize göre altyapınıza eklemeler, çıkarmalar yapabilmenize olanak sağlar, Böylece yeni bir paket yada kütüphane eklemek istediğinizde tüm altyapıyı yeniden kurmanıza gerek kalmadan kolay şekilde istenen modülleri ekleyip, kullanabilirsiniz.

Bağımlılık Enjeksiyon (Dependency Injection) Desteği
Bir önceki versiyon olan ASP.NET MVC içerisindede bu destek yer alıyor idi. Ancak bu özelliğe sadece AutoFactor yada Ninject gibi dış uygulamalar ile erişebiliyordu. Ancak ASP.NET Core içerisinde bu destek için dış bir yazılıma ihtiyaç bulunmamaktadır. 

Basit Unit Testing Desteği
Microsoft, ASP.NET Core içerisinde Visual Studio Test altyapısını xUnit.net ile değiştirmiştir. Bağımlılık Enjeksiyon ve arayüzler sayesinde ASP.NET Core Unit Test için gayet elverişli bir hale gelmiştir. 

Basit Kodlama Bileşenleri
HTML çeşitli web sayfaları oluşturmak için en çok tercih edilen dil olarak kabul edilmektedir. HTML ile beraber CSS ve JavaScript çok geniş bir ölçekte kullanılmaktadır. ASP.NET Core içerisinde Tag Helper sayesinde HTML elementlerini kullanıcı arayüzleri oluşturmak için kullanabilirsiniz. Buda çok basit bir kodlama ile çok başarılı arayüzler edinebilmenize olanak sağlar.

CSRF Koruması
CSRF - Aynı zamanda XSRF yada Sea Surf isimleri olarakta bilinen bir saldırı yöntemidir. ASP.NET Core içerisinde bu yönteme karşı bir güvenlik çözümü sunmaktadır. Uygulamaya gelecek her türlü isteği valide ederek doğru bir kaynaktan geldiğini doğrulamaktadır. 

GDPR Uyumu ve Gizlilik
ASP.NET Core geliştiriciler için geliştirilen uygulamayı GDPR kurallarına uyumu kolay hale getirmektedir. GDPR sayesinde uygulamalarınızın kullanıcıları uygulamınız tarafından tutulan verilerini görebilir, bu veriler üzerinde istediği değişiklileri yapabilir. HTTPS güvenlik sertifikalarını varsayılan olarak kullanmaktadır. Bu şekilde web uygulaması üzerindeki trafiğin daha güvenli bir şekilde gerçekleşmesini sağlamaktadır. 

Async/Await ile Asekron İşlemler
ASP.NET Core asenkron çalışacak işlemler için harika bir destek sunmaktadır. Asekron işlemler Kestrel ve MVC gibi altyapıların popüler olmasında en büyük katkıya sahiptir. ASP.NET Core async/await anahtar kelimelerini kullanarak asekron bir WeB API oluşturabilmenize imkan sağlar.  Buda aşağıdaki faydalara erişim sağlama demektir.

Uygulamaların daha iyi performans göstermesine katkı sağlar. Eğer uzun süreli bir görev çalıştıyorsanız, bu görev uygulamanın çalışmasını bloklamadan görevine devam edebilecektir.

Kaynak kodun daha okunaklı olmasına katkı sağlar. Bu anahtar kelimelerin kullanımı daha az kod yazılmasına ve kodun daha kolay yönetilebilmesine katkı sağlar.

Razor Pages ile Gelişmiş Kodlama Verimliliği
ASP.NET Core, Razor Pages, dinamik ve veri odaklı uygulamalar oluşturmak için hafif ve esnek sayfa odaklı bir altyapıdır. Geliştiricilere HTML üzerinde tam kontrol sunar.

Razor Pages'ı kullanmak için MVC bilgisine sahip olmanız gerekmez.Bu altyapı MVVM (Model-View-ViewModel) modellerine çok benzer ve her bir bileşenin sorumluluklarını izole ederek daha basit bir geliştirme deneyimi sunar. Razor Pages, temel veri girişi yapan basit uygulamalar için idealdir.

Çeşitli Web Uygulamaları Oluşturma Özgürlüğü
Web geliştirme hizmetleri genellikle çok çeşitli müşterilere ve bunların geniş uygulama gereksinimlerine hitap eder. ASP.NET Core, mobil arka uçların, IoT uygulamalarının, bulut tabanlı uygulamaların, web uygulamalarının, web hizmetlerinin ve daha fazlasının oluşturulmasını destekler.

Kolay Bakım
Herhangi bir .NET geliştiricisi için, yeni değişiklikleri .NET framework ile güncellemek oldukça zordur. Ancak, ASP.Net core, her güncellemeyi işleyen bir NuGet paketi ile birlikte gelir. Uygulamalarınızı programlama dilindeki en son geliştirmelerle güncel tutmak, bakım standartlarınızı yükseltmenin anahtarıdır.