.NET Compiler Platform SDK
Derleyiciler, bu kodun söz dizimini ve semantiğini doğrulayan ayrıntılı bir uygulama kodu modeli oluşturur. Kaynak koddan yürütülebilir çıktı oluşturmak için bu modeli kullanırlar. .NET Compiler Platform SDK'sı bu modele erişim sağlar. Üretkenliğimizi artırmak için IntelliSense, yeniden düzenleme, akıllı yeniden adlandırma, "Tüm başvuruları bul" ve "Tanıma git" gibi tümleşik geliştirme ortamı (IDE) özelliklerine giderek daha fazla güveniyoruz. Kod kalitemizi geliştirmek için kod analizi araçlarına ve uygulama yapımına yardımcı olmak için kod oluşturuculara güveniriz. Bu araçlar daha akıllı hale gelince, uygulama kodunu işlerken yalnızca derleyicilerin oluşturduğu modele giderek daha fazla erişmeleri gerekir. Roslyn API'lerinin temel görevi budur: opak kutuları açmak ve araçların ve son kullanıcıların kodumuz hakkında sahip olduğu bilgi zenginliğiyle paylaşmasına izin vermek. Roslyn aracılığıyla opak kaynak kodu ve nesne kod dışarı çeviricileri olmak yerine, derleyiciler platformlar haline gelir: Araçlarınızda ve uygulamalarınızda kodla ilgili görevler için kullanabileceğiniz API'ler.
sdk kavramlarını .NET Compiler Platform
.NET Compiler Platform SDK'sı, kod odaklı araçlar ve uygulamalar oluşturma engelini önemli ölçüde düşürür. Meta programlama, kod oluşturma ve dönüştürme, C# ve Visual Basic dillerinin etkileşimli kullanımı ve etki alanına özgü dillerde C# ve Visual Basic ekleme gibi alanlarda yenilikler için birçok fırsat oluşturur.
.NET Compiler Platform SDK'sı, kodlama hatalarını bulup düzelten çözümleyiciler ve kod düzeltmeleri oluşturmanıza olanak tanır. Çözümleyiciler , düzeltilmesi gereken uygulamaları algılamak için söz dizimini (kod yapısı) ve semantiği anlar. Kod düzeltmeleri , çözümleyiciler veya derleyici tanılamaları tarafından bulunan kodlama hatalarını gidermek için bir veya daha fazla önerilen düzeltme sağlar. Genellikle çözümleyici ve ilişkili kod düzeltmeleri tek bir projede birlikte paketlenir.
Çözümleyiciler ve kod düzeltmeleri, kodu anlamak için statik analiz kullanır. Kodu çalıştırmaz veya başka test avantajları sağlamaz. Ancak genellikle hatalara, istenmeyen kodlara veya standart yönerge ihlaline yol açan uygulamalara işaret edebilirler.
çözümleyicilere ve kod düzeltmelerine ek olarak, .NET Compiler Platform SDK'sı kod yeniden düzenlemeleri oluşturmanıza da olanak tanır. Ayrıca bir C# veya Visual Basic kod tabanını incelemenize ve anlamanıza olanak tanıyan tek bir API kümesi sağlar. Bu tek kod tabanını kullanabileceğiniz için, .NET Compiler Platform SDK tarafından sağlanan bozulmamış ve semantik analiz API'lerini kullanarak çözümleyicileri ve kod düzeltmelerini daha kolay yazabilirsiniz. Derleyici tarafından yapılan büyük çözümlemeyi çoğaltma görevinden kurtularak, projeniz veya kitaplığınız için yaygın kodlama hatalarını bulma ve düzeltmeye yönelik daha odaklanmış bir göreve odaklanabilirsiniz.
Çözümleyicilerinizin ve kod düzeltmelerinizin daha küçük olması ve Visual Studio yüklendiğinde projedeki kodu anlamak için kendi kod tabanınızı yazmanızdan çok daha az bellek kullanması daha küçük bir avantajdır. Derleyici ve Visual Studio tarafından kullanılan aynı sınıflar kullanılarak kendi statik analiz araçlarınızı oluşturabilirsiniz. Bu, ekibinizin çözümleyicileri ve kod düzeltmelerini IDE'nin performansı üzerinde belirgin bir etkisi olmadan kullanabileceği anlamına gelir.
Çözümleyiciler ve kod düzeltmeleri yazmak için üç ana senaryo vardır:
- Takım kodlama standartlarını zorunlu kılma
- Kitaplık paketleriyle ilgili rehberlik sağlama
- Genel rehberlik sağlama
Takım kodlama standartlarını zorunlu kılma
Birçok takım, diğer ekip üyeleriyle birlikte kod incelemeleri aracılığıyla zorlanan kodlama standartlarına sahiptir. Çözümleyiciler ve kod düzeltmeleri bu işlemi çok daha verimli hale getirir. Kod incelemeleri, bir geliştirici çalışmalarını ekip üzerindeki diğer kişilerle paylaştığında gerçekleşir. Geliştirici, herhangi bir yorum almadan önce yeni bir özelliği tamamlamak için gereken her zaman yatırım yapmış olacaktır. Geliştirici, ekibin uygulamalarıyla eşleşmeyen alışkanlıkları pekiştirirken haftalar geçebilir.
Çözümleyiciler bir geliştirici kod yazarken çalışır. Geliştirici, kılavuzun hemen takip edilmesini teşvik eden anında geri bildirim alır. Geliştirici, prototip oluşturmaya başlar başlamaz uyumlu kod yazmak için alışkanlıklar oluşturur. Özellik insanların gözden geçirmesi için hazır olduğunda tüm standart yönergeler zorunlu kılınmıştır.
Teams, ekip kodlama uygulamalarını ihlal eden en yaygın yöntemlerin aranabileceği çözümleyiciler ve kod düzeltmeleri oluşturabilir. Bunlar, standartları zorlamak için her geliştiricinin makinesine yüklenebilir.
İpucu
Kendi çözümleyicinizi oluşturmadan önce yerleşik çözümleyicilere göz atın. Daha fazla bilgi için bkz. Kod stili kurallar.
Kitaplık paketleriyle ilgili rehberlik sağlama
.NET geliştiricilerinin NuGet'da kullanabileceği çok sayıda kitaplık vardır. Bunların bazıları Microsoft' tan, bazıları üçüncü taraf şirketlerden, bazıları ise topluluk üyelerinden ve gönüllülerden gelir. Bu kitaplıklar, geliştiriciler bu kitaplıklarla başarılı olduğunda daha fazla benimseme ve daha yüksek incelemeler alır.
Belge sağlamanın yanı sıra, kitaplığınızın yaygın yanlış kullanımlarını bulup düzelten çözümleyiciler ve kod düzeltmeleri de sağlayabilirsiniz. Bu anında düzeltmeler, geliştiricilerin daha hızlı bir şekilde başarıya varmalarına yardımcı olur.
çözümleyicileri ve kod düzeltmelerini NuGet kitaplığınızla paketleyebilirsiniz. Bu senaryoda, NuGet paketinizi yükleyen her geliştirici çözümleyici paketini de yükler. Kitaplığınızı kullanan tüm geliştiriciler, hatalarla ve önerilen düzeltmelerle ilgili anında geri bildirim biçiminde ekibinizden hemen rehberlik alır.
Genel rehberlik sağlama
.NET geliştirici topluluğu deneyim sayesinde iyi çalışan desenler ve en iyi kaçınılan desenleri keşfetmiştir. Birkaç topluluk üyesi, bu önerilen desenleri zorunlu kılan çözümleyiciler oluşturmuştur. Daha fazla bilgi edindikçe, yeni fikirlere her zaman yer vardır.
Bu çözümleyiciler Visual Studio Market'e yüklenebilir ve geliştiriciler tarafından Visual Studio kullanılarak indirilebilir. Dile ve platforma yeni gelenler kabul edilen uygulamaları hızlı bir şekilde öğrenir ve .NET yolculuklarının başlarında üretken olurlar. Bunlar daha yaygın olarak kullanıldıkçe, topluluk bu uygulamaları benimser.
Sonraki adımlar
.NET Compiler Platform SDK'sı kod oluşturma, çözümleme ve yeniden düzenleme için en son dil nesne modellerini içerir. Bu bölümde, .NET Compiler Platform SDK'sı hakkında kavramsal bir genel bakış sağlanır. Diğer ayrıntılara hızlı başlangıçlar, örnekler ve öğreticiler bölümlerinden ulaşabilirsiniz.
.NET Compiler Platform SDK'sı kavramları hakkında daha fazla bilgiyi şu beş konuda bulabilirsiniz:
- Söz dizimi görselleştiricisi ile kod bulma
- Derleyici API modelini anlama
- Söz dizimi ile çalışma
- Semantik ile çalışma
- Bir çalışma alanı ile çalışma
Başlamak için .NET Compiler Platform SDK'sını yüklemeniz gerekir:
Yükleme yönergeleri - Visual Studio Yükleyicisi
Visual Studio Yükleyicisi .NET Compiler Platform SDK'sını bulmanın iki farklı yolu vardır:
Visual Studio Yükleyicisi - İş yükleri görünümünü kullanarak yükleme
.NET Compiler Platform SDK, Visual Studio uzantısı geliştirme iş yükünün bir parçası olarak otomatik olarak seçilmez. bunu isteğe bağlı bir bileşen olarak seçmelisiniz.
- Visual Studio Yükleyicisi çalıştırma
- Değiştir'i seçin
- Visual Studio uzantısı geliştirme iş yükünü denetleyin.
- Özet ağacında Visual Studio uzantısı geliştirme düğümünü açın.
- .NET Compiler Platform SDK kutusunu işaretleyin. Bunu en son isteğe bağlı bileşenler altında bulabilirsiniz.
İsteğe bağlı olarak , DGML düzenleyicisinin görselleştiricide grafikleri görüntülemesini de istersiniz:
- Özet ağacında Tek tek bileşenler düğümünü açın.
- DGML düzenleyicisi kutusunu işaretleyin
Visual Studio Yükleyicisi - Bağımsız bileşenler sekmesini kullanarak yükleme
- Visual Studio Yükleyicisi çalıştırma
- Değiştir'i seçin
- Tek tek bileşenler sekmesini seçin
- .NET Compiler Platform SDK kutusunu işaretleyin. Bunu derleyiciler, derleme araçları ve çalışma zamanları bölümünün altında en üstte bulabilirsiniz.
İsteğe bağlı olarak , DGML düzenleyicisinin görselleştiricide grafikleri görüntülemesini de istersiniz:
- DGML düzenleyicisi kutusunu işaretleyin. Kod araçları bölümünde bulabilirsiniz.