.NET Sözlüğü

Bu sözlüğün birincil amacı, .NET belgelerinde sık görünen seçili terimlerin ve kısaltmaların anlamlarını netleştirmektir.

AOT

Zamanından önce derleyici.

JIT'yebenzer şekilde, bu derleyici IL'yi de makine koduna çevirir. JIT derlemenin aksine, AOT derlemesi uygulama yürütülmeden önce gerçekleşir ve genellikle farklı bir makinede gerçekleştirilir. AOT araç zincirleri çalışma zamanında derlenemaysa da derleme için harcanan zamanı en aza indirmek zorunda değildir. Bu da iyileştirme için daha fazla zaman harcayacakları anlamına gelir. AOT bağlamı uygulamanın tamamı olduğu için AOT derleyicisi modüller arası bağlama ve tam program analizi de gerçekleştirir. Bu da tüm başvuruların takip ve tek bir yürütülebilir dosyanın üretiliyor olduğu anlamına gelir.

Bkz. CoreRT ve .NET Native.

uygulama modeli

İş yüküneözgü bir API. İşte bazı örnekler:

  • ASP.NET
  • ASP.NET Web API
  • Entity Framework (EF)
  • Windows Presentation Foundation (WPF)
  • Windows Communication Foundation (WCF)
  • Windows Workflow Foundation (WF)
  • Windows Forms (WinForms)

ASP.NET

Özgün ASP.NET 4.x olarak da bilinen .NET Framework ile birlikte ASP.NET uygulamasıdır.

Bazen ASP.NET, hem özgün veri hem de veri ASP.NET ifade ASP.NET Core. Terimin herhangi bir örnekte taşıdığı anlam bağlama göre belirlenir. her iki ASP.NET anlamına geliyor şekilde bir uygulama kullanmama konusunda net bir şekilde ASP.NET 4.x'e bakın.

Bkz. ASP.NET belgeleri.

ASP.NET Core

Platformlar arası, yüksek performanslı, açık kaynak bir uygulama ASP.NET.

Bkz. ASP.NET Core belgeleri.

derleme

Uygulamalar .dll .exe API'ler koleksiyonu içeren bir dosya veya dosya.

Bir derleme; arabirimler, sınıflar, yapılar, numaralar ve temsilciler gibi türleri içerebilir. Projenin bin klasöründeki derlemeler bazen ikili dosyalar olarak adlandırılır. Ayrıca bkz. kitaplığı.

BCL

Temel Sınıf Kitaplığı.

Sistemi oluşturan kitaplık kümesi. * (ve sınırlı bir ölçüde Microsoft. * ) Ad alanları. BCL, ASP.NET Core gibi üst düzey uygulama çerçeveleri tarafından temel ASP.NET Core çerçevedir.

.NET 5 (ve .NET Core) ve sonraki sürümleri için BCL'nin kaynak kodu . Bu BCL API'lerinin çoğu .NET Framework, bu nedenle bu kaynak kodu BCL kaynak kodunun bir .NET Framework olarak düşünebilirsiniz.

Aşağıdaki terimler genellikle BCL'nin başvurduğu AYNı API koleksiyonuna başvurur:

CLR

Ortak Dil Çalışma Zamanı.

Tam anlamı bağlama bağlıdır. Ortak Dil Çalışma Zamanı genellikle .NET Framework veya .NET 5 (ve .NET Core)ve sonraki sürümlerinin çalışma zamanlarını ifade eder.

CLR, bellek ayırmayı ve yönetimi ele alır. CLR ayrıca uygulamaları yürütmekle birlikte JIT derleyicisi kullanarak kod oluşturan ve derleten bir sanal makinedir.

.NET Framework için CLR uygulaması yalnızca Windows uygulamadır.

.NET 5 ve sonraki sürümleri (Core CLR olarak da bilinir) için CLR uygulaması, temel CLR ile aynı kod tabanından .NET Framework. Başlangıçta Core CLR, Silverlight'ın çalışma zamanıdır ve özellikle Windows ve OS X olmak üzere birden çok platformda çalıştıracak şekilde tasarlanmıştır. Hala birçok Linux dağıtımı için destek de dahil olmak üzere platformlar arası bir çalışma zamanıdır.

Ayrıca bkz. çalışma zamanı.

Çekirdek CLR

.NET 5 (ve .NET Core)ve sonraki sürümleri için Ortak Dil Çalışma Zamanı.

Bkz. CLR.

CoreRT

CLR'denfarklı olarak, CoreRT bir sanal makine değildir, yani JIT içermesi nedeniyle kodu oluşturma ve çalıştırma olanaklarını çalışmadan dahil etmemektedir. Ancak, GC'yi ve çalışma zamanı türü tanımlama (RTTI) ve yansıma yeteneğini içerir. Ancak, tür sistemi yansıma meta verilerine gerek olmayan şekilde tasarlanmıştır. Meta veri gerektirmek, gereksiz meta verileri uzaklara bağltıran ve (daha da önemlisi) uygulamanın kullanmaz kodunu belirleyen bir AOT araç zincirine sahip olmaktır. CoreRT geliştirme aşamasındadır.

Bkz. CoreRT'ye Giriş ve .NET Çalışma Zamanı Laboratuvarı.

platformlar arası

Linux, Windows ve iOS gibi birden çok farklı işletim sisteminde kullanılmaktadır ve her biri için özel olarak yeniden yazmak zorunda kalmadan bir uygulama geliştirme ve yürütme olanağı. Bu, farklı platformlarda uygulamalar arasında kodun yeniden kullanılmasına ve tutarlılığının kullanılmasına olanak sağlar.

Bkz. platform.

Ekosistem

Verili bir teknoloji için uygulama derlemek ve çalıştırmak için kullanılan tüm çalışma zamanı yazılımları, geliştirme araçları ve topluluk kaynakları.

".NET ekosistemi" terimi, üçüncü taraf uygulama ve kitaplıkların dahil edilmesinde ".NET yığını" gibi benzer terimlerden farklıdır. Bir cümlede örnek şu şekildedir:

  • "Bu .NET Standard .NET ekosistemi içinde daha fazla tekdüzite oluşturmaktır."

çerçeve

Genel olarak, belirli bir teknolojiyi temel alan uygulamaların geliştirilmesini ve dağıtımını kolaylaştıran kapsamlı bir API koleksiyonu. Bu genel anlamda, ASP.NET Core ve Windows Forms uygulama çerçevelerinin örnekleridir. Çerçeve ve kitaplık sözcükleri genellikle eş anlamlı olarak kullanılır.

"Framework" sözcüğü aşağıdaki terimlerde farklı bir anlama sahiptir:

Bazen "çerçeve", .NET uygulamasını ifade eder. Örneğin, bir makale .NET 5+ çerçeveyi çağırabilirsiniz.

çerçeve kitaplıkları

Anlamı bağlama bağlıdır. .NET 5 (ve .NET Core)ve sonraki sürümleri için çerçeve kitaplıklarına bakabilirsiniz; bu durumda BCL'nin başvurduğu kitaplıklara başvurur. Ayrıca BCL'yi temel alan ve web uygulamaları için ek API'ler sağlayan ASP.NET Core çerçeve kitaplıklarına da başvurabilirsiniz.

GC

Atık toplayıcı.

Atık toplayıcı, otomatik bellek yönetiminin bir uygulamasıdır. GC, artık kullanımda olan nesneler tarafından kapladığı belleği serbest bıraktır.

Bkz. Çöp Toplama.

IL

Ara dil.

C# gibi daha üst düzey .NET dilleri, ara dil (IL) olarak adlandırılan donanımdan bağımsız bir yönerge kümesine derler. Il bazen MSIL (Microsoft Il) veya CıL (ortak Il) olarak adlandırılır.

JIT

Just-In-Time derleyicisi.

AOT'ye benzer şekilde, bu derleyici Il 'yi işlemcinin anladığı makine koduna dönüştürür. AOT 'nin aksine JıT derleme isteğe bağlı olur ve kodun üzerinde çalışması gereken makinede gerçekleştirilir. Uygulamanın yürütülmesi sırasında JıT derlemesi gerçekleşdiğinden, derleme süresi çalışma zamanının bir parçasıdır. Bu nedenle, JıT derleyicileri, kodu en iyi duruma getirmeye harcanan süreyi, sonuçta elde edilen kodun üretebildiği tasarruflarla dengelemeye yönelik Ancak, bir JıT gerçek donanımı bilir ve geliştiricilerin farklı uygulamalar sunmalarını ücretsiz olarak kullanabilir.

.NET uygulama

.NET uygulamasının şunları içerir:

  • Bir veya daha fazla çalışma zamanı. Örnekler: clr, corert.
  • .NET Standard bir sürümünü uygulayan ve ek API 'Ler içerebilen bir sınıf kitaplığı. örnekler: .NET Framework ve .net 5 (ve .net Core) ve sonraki sürümleriçin bcls .
  • İsteğe bağlı olarak, bir veya daha fazla uygulama çerçevesi. örnekler: ASP.NET, Windows Forms ve WPF .NET Framework ve .net 5 + ' ye dahildir.
  • İsteğe bağlı olarak, geliştirme araçları. Bazı geliştirme araçları birden çok uygulama arasında paylaşılır.

.NET uygulamalarına örnek olarak şunlar verilebilir:

kitaplık

Uygulamalar veya diğer kitaplıklar tarafından çağrılabilen API 'lerin bir koleksiyonu. Bir .NET kitaplığı, bir veya daha fazladerlemeden oluşur.

Sözcükler kitaplığı ve Framework genellikle terimler kullanılır.

Mono

Mono, genellikle küçük bir çalışma zamanı gerektiğinde kullanılan açık kaynaklı, platformlar arası bir .net uygulamasıdır . Android, Mac, iOS, tvOS ve watchOS üzerinde Xamarin uygulamalarını güçlendirir ve öncelikle küçük bir ayak izi gerektiren uygulamalara odaklanılmıştır.

Şu anda yayımlanmış .NET Standard sürümlerinin tümünü destekler.

tarihsel olarak, Mono .NET Framework daha büyük apı 'sini uyguladık ve unıx üzerinde en popüler yeteneklerin bazılarını öykünüyler. Bu özellik bazen UNIX üzerinde bu özellikleri kullanan .NET uygulamalarını çalıştırmak için kullanılır.

Mono genellikle tam zamanında bir derleyiciile kullanılır, ancak iOS gibi platformlarda kullanılan tam bir statik derleyici (güncel derleme) da sunar.

Mono belgelerinebakın.

.NET

Örneğin, ilk anlamı ".NET uygulamaları" gibi tümceciklere yöneliktir. İkinci anlamı .NET SDK ve .net CLIgibi adlara yöneliktir.

.NET her zaman tamamen büyük harfle, hiçbir zaman ".net" değildir.

Bkz. .net belgeleri

.NET 5 +

Sürüm numarasından sonra artı işareti "ve sonraki sürümler" anlamına gelir. Bkz. .NET 5 ve sonraki sürümler.

.NET 5 ve sonraki sürümler

.NET için platformlar arası, yüksek performanslı, açık kaynaklı bir uygulama. .NET 5 + olarak da adlandırılır. Ortak dil çalışma zamanı (clr), bir AOT çalışmazamanı (,geliştirme aşamasında), bir temel sınıf KITAPLıĞı (BCL) ve .NET SDKiçerir.

Bu .NET uygulamasının önceki sürümleri .NET Coreolarak bilinir. .NET 5, .NET Core 3,1 ' i takip eden bir sonraki sürümdür. Sürüm 4, daha yeni bir .NET uygulamasının .NET Frameworkolarak bilinen eski uygulamayla karışmasını önlemek için atlandı. .NET Framework geçerli sürümü 4,8 ' dir.

Bkz. .net belgeleri.

.NET CLI

.NET 5 (ve .NET Core) ve sonraki sürümleriçin uygulama ve kitaplıklar geliştirmeye yönelik platformlar arası araç zinciri. .NET Core CLI olarak da bilinir.

Bkz. .net CLI.

.NET Core

Bkz. .NET 5 ve sonraki sürümler.

.NET Framework

Yalnızca Windows çalıştıran bir .net uygulamasıdır . ortak dil çalışma zamanını (CLR), temel sınıf kitaplığını (BCL) ve ASP.NET, Windows Forms ve WPF gibi uygulama çerçevesi kitaplıklarını içerir.

.NET Framework kılavuzu' na bakın.

.NET Yerel

Anında yerel kod üreten bir derleyici aracı zinciri (AOT)-ın-Time (JIT) yerine.

Derleme, geliştirici makinesinde C++ derleyicisinin ve bağlayıcının çalışmasına benzer şekilde gerçekleşir. Kullanılmayan kodu kaldırır ve iyileştirerek daha fazla zaman harcamalar. Kodu kitaplıklardan ayıklar ve çalıştırılabilirle birleştirir. Sonuç, uygulamanın tamamını temsil eden tek bir modüldür.

UWP, .NET Native tarafından desteklenen uygulama çerçevesidir.

.NET Native belgelerinebakın.

.NET SDK

Geliştiricilerin .NET 5 (ve .NET Core) ve sonraki sürümleriçin .NET uygulamaları ve kitaplıkları oluşturmalarına izin veren bir kitaplıklar ve araçlar kümesi. .NET Core SDK olarak da bilinir.

Uygulamalar oluşturmaya yönelik .net CLI , uygulamalar oluşturmak ve çalıştırmak için .NET, .NET kitaplıkları ve çalışma zamanı ve CLI komutlarını çalıştıran ve uygulamaları çalıştıran DotNet çalıştırılabilir (dotnet.exe) içerir.

Bkz. .NET SDK 'Ya genel bakış.

.NET Standard

.NET API 'lerinin her bir .NET uygulamasındakullanılabilen resmi bir belirtimi.

.NET Standard belirtimine bazen kitaplık denir. Bir kitaplık yalnızca belirtim (arabirimler) değil API uygulamalarını içerdiğinden, bir "Library" .NET Standard çağırmak yanıltıcıdır.

Bkz. .NET Standard.

NGEN

Yerel (görüntü) oluşturma.

Bu teknolojiyi kalıcı bir JIT derleyicisi olarak düşünebilirsiniz. Genellikle kodun yürütüldüğü makinede kodu derler, ancak derleme genellikle yüklemesi sırasında gerçekleşir.

package

NuGet paketi — veya yalnızca bir paket — , aynı ada sahip bir veya daha fazla bütünleştirilmiş kod içeren bir .zip dosyasıdır ve yazar adı gibi ek meta verilerle birlikte.

.zip dosyası . nupkg uzantısına sahiptir ve birden çok hedef çerçeve ve sürümde kullanılmak üzere .dll dosyaları ve .xml dosyaları gibi varlıklar içerebilir. Bir uygulama veya kitaplığa yüklendiğinde, uygun varlıklar uygulama veya kitaplık tarafından belirtilen hedef çerçeveye göre seçilir. Arabirimi tanımlayan varlıklar ref klasöründedir ve uygulamayı tanımlayan varlıklar lib klasöründedir.

platform

Windows, macos, Linux, iOS ve Android gibi bir işletim sistemi ve üzerinde çalıştığı donanım.

Cümlelerde kullanım örnekleri aşağıda verilmiştir:

  • ".NET Core, .NET 'in platformlar arası bir uygulamasıdır."
  • "PCL profilleri Microsoft platformlarını temsil ederken .NET Standard platforma göre belirsizdir."

Eski .NET belgeleri bazen .NET veya .NET Stack 'in tüm uygulamalar dahil bir uygulamasını ifade etmek için ".NET platformu" kullanır. Bu kullanımların her ikisi de birincil (OS/donanım) anlamını aşmaya eğilimlidir, bu nedenle bu kullanımlardan kaçınmaya çalışırız.

"Platform" ifadesi, uygulama oluşturmak ve çalıştırmak için araçlar ve kitaplıklar sağlayan yazılıma işaret eden "geliştirici platformu" cümlecide farklı anlamdadır. .NET, birçok farklı uygulama türü oluşturmak için platformlar arası, açık kaynaklı bir geliştirici platformudur.

çalışma zamanı

Genel olarak, yönetilen programın yürütme ortamı. İşletim sistemi çalışma zamanı ortamının bir parçasıdır ancak .NET çalışma zamanının bir parçası değildir. İşte bu sözcüğün bu anlamda bazı .NET çalışma zamanları örnekleri verilmiştir:

  • Ortak dil çalışma zamanı (clr)
  • .NET Native (UWP için)
  • Mono çalışma zamanı

"Runtime" sözcüğünün bazı bağlamlarda farklı anlamları vardır:

  • .Net 5 indirme sayfasında .NET çalışma zamanı .

    .net çalışma zamanını veya ASP.NET Core çalışma zamanı gibi diğer çalışma zamanlarını indirebilirsiniz. Bu kullanımdaki bir çalışma zamanı , makinede çerçeveye bağımlı uygulama çalıştırmak için bir makineye yüklenmesi gereken bileşenler kümesidir. .NET çalışma zamanı, BCL'Yi sağlayan clr ve .net paylaşılan çerçevesiniiçerir.

  • .NET çalışma zamanı kitaplıkları

    BCL 'in başvurduğu kitaplıkları ifade eder. ancak, ASP.NET Core çalışma zamanı gibi diğer çalışma zamanları, BCL üzerinde derleme yapan ek kitaplıklar ile farklı paylaşılan çerçevelersahiptir.

  • Çalışma zamanı tanımlayıcısı (RID).

    Burada çalışma zamanı , .NET uygulamasının üzerinde çalıştığı işletim sistemi platformu ve CPU mimarisi anlamına gelir, örneğin: linux-x64 .

  • Bazen "Runtime", aşağıdaki örneklerde olduğu gibi bir .NET uygulamasınınanlamda kullanılması için kullanılır:

    • "Çeşitli .NET çalışma zamanları .NET Standard belirli sürümlerini uygular. … Her .NET çalışma zamanı sürümü, desteklediği en yüksek .NET Standard sürümünü tanıtır... "
    • "Birden çok çalışma zamanında çalıştırılması amaçlanan kitaplıkların bu çerçeveyi hedeflemesi gerekir." (.NET Standard başvurma)

Paylaşılan çerçeve

Anlamı bağlama bağlıdır. .NET paylaşılan Framework , .NET çalışma zamanınadahil olan kitaplıkları ifade eder. Bu durumda, .NET 5 (ve .NET Core) ve sonraki sürümlerin paylaşılan çatısı , BCL 'nin başvurduğu kitaplıklara başvurur.

Başka paylaşılan çerçeveler vardır. ASP.NET Core paylaşılan framework , web apps tarafından kullanılmak üzere BCL plus ek apı 'leri de içeren ASP.NET Core çalışma zamanınadahil olan kitaplıklara başvurur.

Çerçeveye bağımlı uygulamalariçin, paylaşılan çerçeve, uygulamayı çalıştıran makinedeki bir klasöre yüklenen derlemelerde bulunan kitaplıklardan oluşur. Kendi içinde bulunan uygulamalariçin, paylaşılan çerçeve derlemeleri uygulamaya dahildir.

Daha fazla bilgi için bkz. .NET Core temel elemanlarına derinlemesine bakış, 2. Bölüm: paylaşılan çerçeve.

yığın

Uygulamaları derlemek ve çalıştırmak için birlikte kullanılan bir programlama teknolojileri kümesi.

".NET Stack" .NET Standard ve tüm .NET uygulamalarını ifade eder. "A .NET Stack" ifadesi bir .NET uygulamasına başvurabilir.

hedef çerçeve

Bir .NET uygulamasının veya kitaplığının dayandığı API 'lerin koleksiyonu.

Bir uygulama veya kitaplık, tüm .NET uygulamalarındastandartlaştırılmış bir API kümesine yönelik belirtim olan .NET Standard bir sürümünü (örneğin, .NET Standard 2,0) hedefleyebilir. Bir uygulama veya kitaplık, belirli bir .NET uygulamasının bir sürümünü de hedefleyebilir ve bu durumda uygulamaya özgü API 'lere erişim sağlar. Örneğin, Xamarin. iOS 'u hedefleyen bir uygulama Xamarin tarafından sağlanmış iOS API sarmalayıcılarını erişim altına alır.

bazı hedef çerçeveler için (örneğin, .NET Framework) kullanılabilir apı 'ler, .net uygulamasının, uygulama çerçevesi apı 'leri içerebilen bir sisteme yüklediği derlemeler tarafından tanımlanır (örneğin, ASP.NET, WinForms). Paket tabanlı hedef çerçeveler için Framework API 'Leri, uygulama veya kitaplıkta yüklü paketler tarafından tanımlanır.

Bkz. hedef çerçeveler.

TFM

Hedef Framework bilinen adı.

.NET uygulaması veya kitaplığının hedef çerçevesini belirtmek için standartlaştırılmış bir belirteç biçimi. Hedef çerçevelere genellikle gibi kısa bir ad başvurulur net462 . Uzun biçimli TFMs (gibi. NETFramework, Version = 4.6.2) var, ancak genellikle bir hedef çerçeve belirtmek için kullanılmaz.

Bkz. hedef çerçeveler.

UWP

Evrensel Windows Platformu.

Nesnelerin İnterneti (ıot) için dokunmatik özellikli Windows uygulamalar ve yazılımlar oluşturmak için kullanılan bir .net uygulaması . Bilgisayar, tabletler, telefonlar ve hatta Xbox dahil olmak üzere hedeflemek isteyebileceğiniz farklı cihaz türlerini içerecek şekilde tasarlanmıştır. UWP, merkezi bir app store, bir yürütme ortamı (AppContainer) ve Win32 (WinRT) yerine kullanılacak Windows apı 'leri gibi birçok hizmeti sağlar. uygulamalar C++, C#, Visual Basic ve JavaScript 'te yazılabilir. C# ve Visual Basic kullanılırken .net apı 'leri .net 5 (ve .net Core) ve sonraki sürümlertarafından sağlanır.

iş yükü

Birisinin oluşturmakta olduğu bir uygulama türü. Uygulama modelindendaha genel. örneğin, bu dahil olmak üzere her .net belgeleri sayfasının en üstünde, Web, mobil, bulut, masaüstü ve Machine Learning & verilerine yönelik belgelere geçiş yapmanızı sağlayan iş yükleri için açılan bir liste vardır.

bazı bağlamlarda, iş yükü belirli bir uygulama türünü desteklemek üzere yüklemeyi seçebileceğiniz bir Visual Studio özellikleri koleksiyonuna başvurur. Bir örnek için bkz. iş yükü seçme.

Ayrıca bkz.