Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu öğreticide, tek bir dize işleme yöntemi içeren basit bir yardımcı program kitaplığı oluşturacaksınız.
sınıf kitaplığı bir uygulama tarafından çağrılan türleri ve yöntemleri tanımlar. Kitaplık .NET Standard 2.0'ı hedefliyorsa, .NET Standard 2.0'ı destekleyen herhangi bir .NET uygulaması (örn. .NET Framework) tarafından çağrılabilir. Kitaplık .NET 10'u hedeflerse, .NET 10'u hedefleyen herhangi bir uygulama tarafından çağrılabilir. Bu öğreticide .NET 10'un nasıl hedeflendiği gösterilmektedir.
Bir sınıf kitaplığı oluşturduğunuzda, bunu üçüncü taraf bir bileşen olarak veya bir veya daha fazla uygulamayla paketlenmiş bir bileşen olarak dağıtabilirsiniz.
Önkoşullar
.NET masaüstü geliştirme iş yükü yüklü Visual Studio. bu iş yükünü seçtiğinizde .NET SDK'sı otomatik olarak yüklenir.
Daha fazla bilgi için bkz. .NET SDK'sını Visual Studio ile yükleme.
- En son .NET SDK
- Visual Studio Code düzenleyicisi
- C# Geliştirme Kiti
Yükleme yönergeleri
Windows'ta tüm önkoşulları yüklemek için bu WinGet yapılandırma dosyasını kullanın. Zaten yüklü bir şey varsa WinGet bu adımı atlar.
- Dosyayı indirin ve çift tıklayarak çalıştırın.
- Lisans sözleşmesini okuyun, yyazın ve kabul etmek isteyip istemediğiniz sorulduğunda Enter seçin.
- Görev Çubuğunuzda yanıp sönen bir Kullanıcı Hesabı Denetimi (UAC) istemi alırsanız yüklemenin devam etmesi için izin verin.
Diğer platformlarda, bu bileşenlerin her birini ayrı ayrı yüklemeniz gerekir.
- Önerilen yükleyiciyi .NET SDK indirme sayfasından indirin ve çift tıklayarak çalıştırın. İndirme sayfası platformunuzu algılar ve platformunuz için en son yükleyiciyi önerir.
- Visual Studio Code giriş sayfasından en son yükleyiciyi indirin ve çift tıklayarak çalıştırın. Bu sayfa ayrıca platformunuzu algılar ve bağlantı sisteminiz için doğru olmalıdır.
- C# DevKit uzantısı sayfasındaki "Yükle" düğmesine tıklayın. Bu, Visual Studio kodu açar ve uzantıyı yüklemek mi yoksa etkinleştirmek mi istediğinizi sorar. "Yükle" seçeneğini belirleyin.
- GitHub Codespaces kullanmak için bir GitHub hesabı. Henüz bir hesabınız yoksa GitHub.com adresinde ücretsiz bir hesap oluşturabilirsiniz.
Çözüm oluşturma
Sınıf kitaplığı projesini tutmak için boş bir çözüm oluşturarak başlayın. Visual Studio çözümü, bir veya daha fazla proje için kapsayıcı görevi görür. İlgili projeleri aynı çözüme ekleyin.
Boş çözümü oluşturmak için:
Visual Studio'ı başlatın.
Başlangıç penceresinde yeni proje oluştur
seçin. Yeni proje oluştur sayfasında, arama kutusuna çözüm girin. Boş Çözüm şablonunu ve ardından İleri'yi seçin.
Yeni projenizi yapılandırın sayfasında Çözüm adı kutusuna ClassLibraryProjects yazın. Ardından Oluştur’u seçin.
"StringLibrary" adlı bir .NET sınıf kitaplığı projesi ve ilişkili bir çözüm oluşturarak başlayın. Çözüm, bir veya daha fazla proje için kapsayıcı görevi görür. Aynı çözümdeki projelere ek olarak, ilgili projeler ekleyeceksiniz.
Visual Studio Code'ı başlatın.
Gezgin görünümüne gidin ve .NET Project oluştur'u seçin. Alternatif olarak, Ctrl+Shift+P (MacOS'ta Command+Shift+P) tuşlarını kullanarak Komut Paleti'ni açabilir ve ardından ".NET" yazıp .NET: Yeni Proje komutunu bulup seçebilirsiniz.
Proje şablonunu Sınıf Kitaplığı'nı seçin.
Ardından yeni projenin oluşturulmasını istediğiniz konumu seçin: adlı bir klasör oluşturun ve seçin.
Projeye StringLibrary adını verin.
Çözüm dosyası biçimi olarak .sln seçin.
Tüm şablon seçeneklerini göster'i seçin.
Ardından .NET 10 seçin. Ardından Proje Oluştur'u seçin.
Bu klasördeki dosyaların yazarlarını güveniyor musunuz? iletişim kutusunda Evet, yazarlara güveniyorum'ı seçin. Bu klasörde yalnızca .NET tarafından oluşturulan ve sizin tarafınızdan eklenen veya değiştirilen dosyalar olduğundan, yazarlara güvenebilirsiniz.
Öğretici ortamıyla bir GitHub Codespace oluşturarak başlayın, ardından bir .NET sınıf kitaplığı projesi oluşturun.
Bir tarayıcı penceresi açın ve öğretici kod alanı deposuna gidin.
Yeşil Kod düğmesini ve ardından Codespaces sekmesini seçin.
Bu ortamı kullanarak yeni bir düğmesini seçin.
Öğretici deposundan yeni bir Codespace oluşturma
Codespace'ınız yüklendiğinde terminali açın ve öğreticiler klasörüne gidin:
cd tutorialsYeni bir sınıf kitaplığı projesi oluşturun:
dotnet new classlib -n StringLibrary
Sınıf kitaplığı projesi oluşturma
Çözüme StringLibrary adlı yeni bir .NET sınıf kitaplığı projesi ekleyin.
Çözüm Gezgini'da çözüme sağ tıklayın ve Add>Yeni Proje öğesini seçin.
Yeni proje ekle sayfasında, arama kutusuna kitaplık yazın. Dil listesinden C# veya Visual Basic seçin ve ardından Platform listesinden Tüm platformlar'yi seçin. Sınıf Kitaplığı şablonunu ve ardından İleri'yi seçin.
Yeni projenizi yapılandırın sayfasında, Proje adı kutusuna StringLibrary yazın ve İleri'yi seçin.
Ek bilgiler sayfasında .NET 10'i ve ardından Oluştur'yi seçin.
Kitaplığın doğru .NET sürümünü hedeflediğinden emin olun. Çözüm Gezgini'da kitaplık projesine sağ tıklayın ve Properties öğesini seçin. Target Framework metin kutusu projenin 10.0 .NET hedeflediğini gösterir.
Visual Basic kullanıyorsanız, Default ad alanı metin kutusundaki metni temizleyin.
Sınıf kitaplığı için proje özellikleri
her proje için Visual Basic otomatik olarak proje adına karşılık gelen bir ad alanı oluşturur. Bu öğreticide, kod dosyasındaki anahtar sözcüğünü kullanarak bir üst düzey ad alanı tanımlarsınız.
Class1.cs veya Class1.vb için kod penceresindeki kodu aşağıdaki kodla değiştirin ve dosyayı kaydedin. Kullanmak istediğiniz dil gösterilmiyorsa, sayfanın üst kısmındaki dil seçiciyi değiştirin.
namespace UtilityLibraries; public static class StringLibrary { public static bool StartsWithUpper(this string? str) { if (string.IsNullOrWhiteSpace(str)) return false; return char.IsUpper(str[0]); } }Imports System.Runtime.CompilerServices Namespace UtilityLibraries Public Module StringLibrary <Extension> Public Function StartsWithUpper(str As String) As Boolean If String.IsNullOrWhiteSpace(str) Then Return False End If Dim ch As Char = str(0) Return Char.IsUpper(ch) End Function End Module End Namespacesınıf kitaplığı, adlı bir yöntem içerir. Bu yöntem, geçerli dize örneğinin büyük harf karakterle başlayıp başlamayacağını gösteren bir değeri döndürür. Unicode standardı, büyük harf karakterlerini küçük harf karakterlerinden ayırır. yöntemi, bir karakter büyük harfse döndürür.
, sınıfının bir üyesiymiş gibi çağırabilmeniz için uzantısı yöntemi olarak uygulanır. C# kodunda sonra gelen soru işareti (), dizenin null olabileceğini gösterir.
Menü çubuğunda 'Çözümü Derle' seçeneğine tıklayın veya projenin hatasız derleneceğini doğrulamak için Ctrl+Shift+B tuşlarına basın.
Proje oluşturulur ve Class1.cs açılır.
Class1.cs içeriğini aşağıdaki kodla değiştirin:
namespace UtilityLibraries; public static class StringLibrary { public static bool StartsWithUpper(this string? str) { if (string.IsNullOrWhiteSpace(str)) return false; return char.IsUpper(str[0]); } }sınıf kitaplığı, adlı bir yöntem içerir. Bu yöntem, geçerli dize örneğinin büyük harf karakterle başlayıp başlamayacağını gösteren bir değeri döndürür. Unicode standardı, büyük harf karakterlerini küçük harf karakterlerinden ayırır. yöntemi, bir karakter büyük harfse döndürür.
, sınıfının bir üyesiymiş gibi çağırabilmeniz için uzantısı yöntemi olarak uygulanır.
Dosyayı kaydedin.
Explorer görünümünün alt kısmındaki Çözüm Gezgini genişletin.
Çözüm Gezgini'da çözüme sağ tıklayın ve Build öğesini seçin veya Komut Paleti'ni açıp .NET: Derleme'yi seçerek çözümü derleyin ve projenin hatasız derlendiğini doğrulayın.
Terminal çıkışı aşağıdaki örneğe benzer:
Determining projects to restore... All projects are up-to-date for restore. StringLibrary -> C:\Projects\ClassLibraryProjects\StringLibrary\bin\Debug\net10.0\StringLibrary.dll Build succeeded. 0 Warning(s) 0 Error(s) Time Elapsed 00:00:02.78
StringLibrary klasörüne gidin:
cd StringLibraryClass1.cs açın ve içeriğini aşağıdaki kodla değiştirin:
namespace UtilityLibraries; public static class StringLibrary { public static bool StartsWithUpper(this string? str) { if (string.IsNullOrWhiteSpace(str)) return false; return char.IsUpper(str[0]); } }sınıf kitaplığı, adlı bir yöntem içerir. Bu yöntem, geçerli dize örneğinin büyük harf karakterle başlayıp başlamayacağını gösteren bir değeri döndürür. Unicode standardı, büyük harf karakterlerini küçük harf karakterlerinden ayırır. yöntemi, bir karakter büyük harfse döndürür.
, sınıfının bir üyesiymiş gibi çağırabilmeniz için uzantısı yöntemi olarak uygulanır.
Dosyayı kaydedin ve projeyi oluşturun:
dotnet buildDerlemenin hatasız tamamlanması gerekir.
Çözüme konsol uygulaması ekleme
Sınıf kitaplığını kullanan bir konsol uygulaması ekleyin. Uygulama, kullanıcıdan bir dize girmesini ister ve dizenin büyük harf karakterle başlayıp başlamadığını bildirir.
Çözüme ShowCase adlı yeni bir .NET konsol uygulaması ekleyin.
Çözüm Gezgini'da çözüme sağ tıklayın ve Add>Yeni Proje öğesini seçin.
Yeni proje ekle sayfasında, arama kutusuna konsol yazın. Dil listesinden C# veya Visual Basic seçin ve ardından Platform listesinden Tüm platformlar'yi seçin.
Konsol Uygulaması şablonunu seçin ve ardından Sonrakiseçin.
Yeni projenizi yapılandırın sayfasında Proje adı kutusuna ShowCase yazın. Ardından İleri'yi seçin.
Ek bilgiler sayfasında, Framework kutusunda .NET 10 öğesini seçin. Ardından Oluştur’u seçin.
Program.cs veya Program.vb dosyasının kod penceresinde, kodun tümünü aşağıdaki kodla değiştirin.
using System; using UtilityLibraries; int row = 0; do { if (row == 0 || row >= 25) ResetConsole(); string? input = Console.ReadLine(); if (string.IsNullOrWhiteSpace(input)) break; Console.WriteLine($"Input: {input} {"Begins with uppercase? ",30}: " + $"{(input.StartsWithUpper() ? "Yes" : "No")}{Environment.NewLine}"); row += 3; } while (true); return; // Declare a ResetConsole local method void ResetConsole() { if (row > 0) { Console.WriteLine("Press any key to continue..."); Console.ReadKey(); } Console.Clear(); Console.WriteLine($"{Environment.NewLine}Press <Enter> only to exit; otherwise, enter a string and press <Enter>:{Environment.NewLine}"); row = 3; }Imports UtilityLibraries Module Program Dim row As Integer = 0 Sub Main() Do If row = 0 OrElse row >= 25 Then ResetConsole() Dim input As String = Console.ReadLine() If String.IsNullOrEmpty(input) Then Return Console.WriteLine($"Input: {input} {"Begins with uppercase? ",30}: " + $"{If(input.StartsWithUpper(), "Yes", "No")} {Environment.NewLine}") row += 3 Loop While True End Sub Private Sub ResetConsole() If row > 0 Then Console.WriteLine("Press any key to continue...") Console.ReadKey() End If Console.Clear() Console.WriteLine($"{Environment.NewLine}Press <Enter> only to exit; otherwise, enter a string and press <Enter>:{Environment.NewLine}") row = 3 End Sub End ModuleKod, konsol penceresine yazılan veri satırlarının sayısını korumak için değişkenini kullanır. 25'ten büyük veya 25'e eşit olduğunda kod konsol penceresini temizler ve kullanıcıya bir ileti görüntüler.
Program, kullanıcıdan bir dize girmesini ister. Dizgenin büyük harf karakterle başlayıp başlamadığını gösterir. Kullanıcı bir dize girmeden enter tuşuna basarsa uygulama sona erer ve konsol penceresi kapanır.
Çözüm Gezgini'da çözüme sağ tıklayın ve Yeni Proje'i seçin veya Komut Paleti'nde .NET: Yeni Proje'yi seçin.
Konsol Uygulaması'nu seçin.
ShowCase adını verin, varsayılan dizini seçin ve Proje Oluştur'u seçin.
ShowCase/Program.cs açın ve tüm kodu aşağıdaki kodla değiştirin.
using System; using UtilityLibraries; int row = 0; do { if (row == 0 || row >= 25) ResetConsole(); string? input = Console.ReadLine(); if (string.IsNullOrWhiteSpace(input)) break; Console.WriteLine($"Input: {input} {"Begins with uppercase? ",30}: " + $"{(input.StartsWithUpper() ? "Yes" : "No")}{Environment.NewLine}"); row += 3; } while (true); return; // Declare a ResetConsole local method void ResetConsole() { if (row > 0) { Console.WriteLine("Press any key to continue..."); Console.ReadKey(); } Console.Clear(); Console.WriteLine($"{Environment.NewLine}Press <Enter> only to exit; otherwise, enter a string and press <Enter>:{Environment.NewLine}"); row = 3; }Kod, konsol penceresine yazılan veri satırlarının sayısını korumak için değişkenini kullanır. 25'ten büyük veya 25'e eşit olduğunda kod konsol penceresini temizler ve kullanıcıya bir ileti görüntüler.
Program, kullanıcıdan bir dize girmesini ister. Dizgenin büyük harf karakterle başlayıp başlamadığını gösterir. Kullanıcı bir dize girmeden enter tuşuna basarsa uygulama sona erer ve konsol penceresi kapanır.
Değişikliklerinizi kaydedin.
Öğreticiler klasörüne geri dönün ve yeni bir konsol uygulaması oluşturun:
cd .. dotnet new console -n ShowCaseShowCase/Program.cs dosyasını açın ve tüm kodu aşağıdaki kodla değiştirin:
using System; using UtilityLibraries; int row = 0; do { if (row == 0 || row >= 25) ResetConsole(); string? input = Console.ReadLine(); if (string.IsNullOrWhiteSpace(input)) break; Console.WriteLine($"Input: {input} {"Begins with uppercase? ",30}: " + $"{(input.StartsWithUpper() ? "Yes" : "No")}{Environment.NewLine}"); row += 3; } while (true); return; // Declare a ResetConsole local method void ResetConsole() { if (row > 0) { Console.WriteLine("Press any key to continue..."); Console.ReadKey(); } Console.Clear(); Console.WriteLine($"{Environment.NewLine}Press <Enter> only to exit; otherwise, enter a string and press <Enter>:{Environment.NewLine}"); row = 3; }Kod, konsol penceresine yazılan veri satırlarının sayısını korumak için değişkenini kullanır. 25'ten büyük veya 25'e eşit olduğunda kod konsol penceresini temizler ve kullanıcıya bir ileti görüntüler.
Program, kullanıcıdan bir dize girmesini ister. Dizgenin büyük harf karakterle başlayıp başlamadığını gösterir. Kullanıcı bir dize girmeden enter tuşuna basarsa uygulama sona erer ve konsol penceresi kapanır.
Değişikliklerinizi kaydedin.
Proje referansı ekleyin
Başlangıçta, yeni konsol uygulaması projesinin sınıf kitaplığına erişimi yoktur. Sınıf kitaplığında yöntemleri çağırmasına izin vermek için, sınıf kitaplığı projesine bir proje başvurusu oluşturun.
Çözüm Gezgini'da
ShowCaseprojesinin Dependencies düğümüne sağ tıklayın ve Add Project Reference öğesini seçin.
Başvuru Yöneticisi iletişim kutusunda StringLibrary projesini ve ardından Tamam'ı seçin.
StringLibrary'nin seçili olduğu Başvuru Yöneticisi iletişim kutusu
Çözüm Gezgini ShowCase projesine sağ tıklayın veProje Başvurusu Ekle öğesini seçin.StringLibrary'yi seçin.
Tavsiye
Alternatif olarak, aşağıdakileri ShowCase.csproj dosyasına ekleyin:
<ItemGroup>
<ProjectReference Include="..\StringLibrary\StringLibrary.csproj" />
</ItemGroup>
ShowCase projesinden StringLibrary projesine bir başvuru ekleyin:
cd ShowCase
dotnet add reference ../StringLibrary/StringLibrary.csproj
Uygulamayı çalıştırma
Çözüm Gezgini'da ShowCase projesine sağ tıklayın ve bağlam menüsünden StartUp Projesi Olarak Ayarla seçin.
Başlangıç projesini ayarlamak için
Programı hata ayıklamadan derlemek ve çalıştırmak için CtrlF5 tuşlarına basın.
Dizeleri girip Enter basarak programı deneyin, ardından çıkmak için Enter basın.
ShowCase'in çalıştığı konsol penceresi
Hata ayıklamadan seçmek için üst menü çubuğunu kullanın.
C# seçeneğini belirleyin.
C#: ShowCase seçeneğini belirleyin.
C# programının yüklenmediğini belirten bir hata alırsanız, açtığınız klasörü kapatın ve klasörünü açın. Ardından uygulamayı yeniden çalıştırmayı deneyin.
Dizeleri girip Enter basarak programı deneyin, ardından çıkmak için Enter basın.
Terminal çıkışı aşağıdaki örneğe benzer:
Press <Enter> only to exit; otherwise, enter a string and press <Enter>: A string that starts with an uppercase letter Input: A string that starts with an uppercase letter Begins with uppercase? : Yes a string that starts with a lowercase letter Input: a string that starts with a lowercase letter Begins with uppercase? : No
ShowCase uygulamasını çalıştırın:
dotnet runDizeleri girip Enter basarak programı deneyin, ardından çıkmak için Enter basın.
Terminal çıkışı aşağıdaki örneğe benzer:
Press <Enter> only to exit; otherwise, enter a string and press <Enter>: A string that starts with an uppercase letter Input: A string that starts with an uppercase letter Begins with uppercase? : Yes a string that starts with a lowercase letter Input: a string that starts with a lowercase letter Begins with uppercase? : No
Ek kaynaklar
Kaynakları temizleme
GitHub, 30 günlük işlem yapılmadıktan sonra Codespace'inizi otomatik olarak siler. Bu serideki diğer öğreticileri keşfetmeyi planlıyorsanız, Codespace'inizi (kod çalışma alanı) hazır durumda bırakabilirsiniz. .NET SDK'yı indirmek için .NET sitesini ziyaret etmeye hazırsanız Codespace'ınızı silebilirsiniz. Codespace'ınızı silmek için bir tarayıcı penceresi açın ve Codespaces'inize gidin. Pencerede kod boşluklarınızın listesini görürsünüz. Learn öğreticisi kod alanı için girdideki üç noktayı () seçin. Ardından "Sil"i seçin.
Sonraki Adımlar
Bu öğreticide bir sınıf kitaplığı oluşturdunuz. Sonraki öğreticide sınıf kitaplığını birim testi yapmayı öğreneceksiniz.
Alternatif olarak, otomatik birim testini atlayabilir ve NuGet paketi oluşturarak kitaplığı nasıl paylaşacağınızı öğrenebilirsiniz:
Alternatif olarak, bir konsol uygulamasını yayımlamayı da öğrenin. Konsol uygulamasını bu öğreticide oluşturduğunuz çözümden yayımlarsanız, sınıf kitaplığı bunu bir.dll dosyası olarak alır.