Microsoft tarafından geliştirilen ve geliştirilmesi devam eden Net Core, açık kaynak kodlu bir modern geliştirme platformudur. Cross platform yani yazılımcı diliyle bağımsız platform olan Net Core; Windows, Macos, Linux işletim sistemlerinde çalışabilir. Bu da yazılımcıların Net Core ile birlikte Macos, Linux veya Android platformlarına uygulamalar yazabildikleri anlamına gelmektedir. Pomelo Soft, Net teknolojileri ile her türlü uygulamayı sizin için geliştirebilmektedir. Peki, Net Core ne gibi özelliklere sahiptir ve nerelerde kullanılabilir?
Net Core’un Temel Özellikleri
Modern ve esnek bir geliştirme platformu olarak yazılıcımların kullandığı Net Core’un bazı temel özellikleri bulunmaktadır. Net Core’un temel özelliklerini şöyle sıralayabiliriz:
- Açık kaynak kodlu esnek bir geliştirme platformudur.
- Net Core, cross platformdur. Yani platform bağımsızdır. Bu da Net Core kullanılarak geliştirilen uygulamaların Windows dışındaki diğer işletim sistemlerinde de uygulamaları çalıştırabilmek, diğer kullanıcıların erişimine açabilmek anlamına gelmektedir.
- Net Core, docker ve diğer container servisleri ile birlikte rahatlıkla yayına alınabilmektedir.
- Microsoft tarafından Github üzerinde, kaynak kodları açık bir şekilde MIT ve Apache 2 lisanslarına sahip olarak yer almaktadır.
- Net Core uygulamaları C#, F# ve Visual Basic dilleriyle geliştirilebilir.
- Bir çapraz platformdur.
Net Framework Nedir?
Net Framework’u açıklamadan önce frameworkun ne anlama geldiği de bilinmelidir. İçerisinde uygulama geliştiren arayüzleri (API) ve yazılımcıların ihtiyaç halinde yararlanabilecekleri bir kod kütüphanesini barındıran paketler framework olarak tanımlanmaktadır. Kod kütüphanelerinin paylaşımlı olması gerekmektedir. Bu paylaşımlı kütüphanelere ise Framework Class Library denmektedir. Paylaşımlı kod kütüphaneleri sayesinde programcıların ufak tefek işlemler için gerekli olan fonksiyonları baştan yazmaları gerekmez.
Net Framework Varken Net Core’a İhtiyaç Var Mıdır?
Net Framework varken Net Core’a ihtiyaç duyulmayacağı düşünülmemelidir. Bu noktada Microsoft, Net Framework’u Net Core yerine geliştirmiş değildir, aksine platformlar arası uygulamalar oluşturması gereken geliştiricilere bir alternatif olması adına Net Framework geliştirilmiştir. Peki, Net Core ile neler yapılabilmektedir?
- Örneğin, Net Framework’te yazılmış önceden var olan bir MVC uygulaması Linux kutusunda çalıştırılabilir.
- Net Core; konsol uygulamaları, web uygulamaları, sınıf kütüphaneleri ve birim testlerini desteklemektedir. Bu da çapraz platform 3D video oyunlarının bile Net Core ile oluşturulması anlamına gelmektedir.
Net Core Bileşenleri Nelerdir?
Net Core’un bazı bileşenleri de bulunmaktadır: Bunlar, Net Runtime, Net Framework Libraries, Net Core SDK, Dotnet App Host’tur.
- Net Runtime: Temel servisler ile birlikte sistem türlerini içermektedir. Net Runtime bileşenleri assembly loading, garbage collector, native interop olarak belirtilebilir.
- Net Framework Libraries: Temel data türlerini, uygulama derleme türlerini, temel bileşenleri içeren bir framework seti içermektedir.
- NET Core SDK: Bir takım SDK araçlarını içermektedir.
- Dotnet App Host: Net Core uygulamalarını ve SDK araçlarını host etmekte ve çalıştırılmasını sağlamaktadır.
Net Teknolojileri Hakkında
Microsoft tarafından geliştirilen ve çıkarılan platform bağımsızlık esasıyla çalışan bir teknoloji olan Net’i kullanarak çeşitli yazılım ürünleri oluşturulmaktadır. Net teknolojisi kullanarak hatalar incelenebilir ve gerekirse tekrar derlenebilir. Peki, Microsoft neden böyle bir geliştiriciye ihtiyaç duymuştur? Çünkü çok daha az az kod yazıp, platform ve mimari farklılıklarına yakalanmadan uygulama geliştirmek, uygulama geliştiriciler için önemli bir konu hâline gelmiştir. Java’nın platform bağımsızlığından sonra çıkan Net teknolojileri ile de amaçlanan bu olmuştur. Net teknolojileri sayesinde kodlar bir defa yazılabilecek, ek gereksinimler ve kısıtlamalar göz önüne alınmadan her yere taşınabilecek şekilde tasarlanacaktı. Microsoft yazılım mimarları, bu hedef doğrultusunda Net Teknolojilerini geliştirmeye yönelik çalışmalarına başlamıştır. Net teknolojilerine, bir diğer deyişle net ekosistemine dahil edilen ürünlerin geliştirilmesine yönelik çalışmalar bugün halen devam etmektedir.
Net Teknolojileri ile Neler Yapılabilir?
Net platformu ve Visual Studio arayüz programıyla bir takım alanlarda program veya uygulama geliştirmek mümkün olmaktadır. O alanlar ise şunlardır:
- Windows Uygulamaları
- Windows Phone Uygulamaları
- Web Uygulamaları (ASP.Net)
- SharePoint web uygulamaları
- Silverlight web uygulamaları
- Windows Azure ile cloud uygulamaları
- MS Office için eklentiler
- Veri tabanı uygulamaları
Net Core Uygulama Tipleri
Net Core’da Portable yani taşınabilir ve Self-Contained yani bağımsız olmak üzere iki tip uygulama bulunmaktadır. Portable uygulamalar, çalışacakları makinede Net Core’un yüklü olmasına gereksinim duymaktadırlar. Eğer bu tip bir uygulama geliştirilecekse, uygulama Net Core yüklü herhangi bir sistemde de çalışabilmektedir. Uygulamanın çalışması için oluşturulan publish paketi içerisinde yazılan bileşenler yeterli olacaktır. Self-Contained uygulamalar ise bağımsız çalışan uygulamalardır. Çalışacakları sistemde Net Core’un yüklü olması gerekmemektedir. Çünkü publish olduğunda tüm gerekli dosyaları içerisinde barındıracaktır.