
C# Adlandırma Kuralları (Geliştiriciler İçin Nasıl Çalışır)
İsimlendirme kuralları, geliştiricilerin değişkenlere, yöntemlere, sınıflara ve diğer varlıklara tutarlı şekilde ad vermek için takip ettikleri bir dizi kural ve kılavuzdur. Tutarlı adlandırma, yalnızca kod okunabilirliğini artırmakla kalmaz, aynı zamanda diğer geliştiricilerin kodunuzu anlamalarına ve sürdürmelerine yardımcı olur. Aşağıda, pratik kullanım ve örneklere odaklanarak aşama aşama C# isimlendirme kurallarını inceleyeceğiz. Makalede daha sonra IronPDF kütüphanesi ve isimlendirme kuralları hakkında derinlemesine dalalım.
İsimlendirme Kurallarına Genel Bakış
Sınıflar ve Arayüzler
Sınıf adları Pascal Case isimlendirme kuralını takip etmelidir. Bu, her kelimenin isimde büyük harfle başlaması, alt çizgi ya da boşluk kullanılması anlamına gelir. Arayüz adları da Pascal Case izlemelidir ancak 'I' prefix'i ile başlamalıdır. Örneğin:
public class Customer
{
public decimal Balance { get; set; }
}
public interface ICustomer
{
decimal GetBalance();
}Public Class Customer
Public Property Balance() As Decimal
End Class
Public Interface ICustomer
Function GetBalance() As Decimal
End InterfaceSınıf adı Customer ve arayüz adı ICustomer her ikisi de Pascal Case'i takip eder. I ön eki, ICustomer türünün bir arayüz olduğunu açıkça belirtir.
Metotlar
Method adları da Pascal Case kullanır. Her method adı büyük bir harfle başlamalı ve her bir sonraki kelime de büyük bir harfle başlamalıdır. İşte method tanımlarına bir örnek:
public decimal CalculateInterest(decimal principal, decimal rate)
{
return principal * rate;
}Public Function CalculateInterest(ByVal principal As Decimal, ByVal rate As Decimal) As Decimal
Return principal * rate
End FunctionGiriş noktası methodu olan static void Main() için, method adı için de aynı kural geçerlidir - Pascal Case kullanın.
Özellikler
Method adları gibi, özellik adları da Pascal Case kullanılır. Özellikler, neyi temsil ettiklerini açıkça tanımlamak için adlandırılmalıdır:
public DateTime DateOpened { get; set; }
public decimal Reserves { get; set; }Public Property DateOpened() As DateTime
Public Property Reserves() As DecimalYerel Değişkenler ve Method Argümanları
Yerel değişkenler ve method argümanları camel case kullanmalıdır. Bu, ilk kelimenin küçük harfle başladığı ve sonraki kelimelerin büyük harfle başlayıp boşluk veya alt çizgi kullanmaksızın yapılması anlamına gelir. İlk harfin büyük harfle başlamadığı Pascal Case'den farklıdır.
public void SelectCustomer(string customerName)
{
var selectedCustomer = FindCustomer(customerName);
}Public Sub SelectCustomer(ByVal customerName As String)
Dim selectedCustomer = FindCustomer(customerName)
End SubBu örnekte, yerel değişken selectedCustomer camel case konvansiyonunu takip eder ve metod argümanı customerName da camel case'dir.
Method Argümanları
Method argümanlarının adları açıklayıcı olmalı ve camel case isimlendirme kuralını takip etmelidir. Bu, kod okunabilirliğini artırır ve geliştiricilere her bir argümanın neyi temsil ettiğini anlatmaya yardımcı olur.
public void AddCustomer(string customerName, DateTime dateOpened)
{
// Add customer logic
}Public Sub AddCustomer(ByVal customerName As String, ByVal dateOpened As DateTime)
' Add customer logic
End SubStatik Üyeler ve Alanlar
Sınıflardaki statik üyeler, statik alanlar, sabitler, ve methodlar, belirli isimlendirme kurallarını da izler.
Statik Alanlar
Statik alanlar için, isimlendirme kuralı, camel case kullanmak ancak alt çizgi önekli bir şekilde yapmaktır. Bu, onları diğer alanlardan ayırır.
private static int _totalCustomers;Private Shared _totalCustomers As IntegerSabitler
Sabitler genellikle tümü büyük harfle adlandırılır, daha iyi okunabilirlik için kelimeler alt çizgilerle ayrılır. Örneğin:
public const int MAX_CUSTOMERS = 100;Public Const MAX_CUSTOMERS As Integer = 100Olay Yöneticileri
Olay işleyici metod adları, genellikle On ön eki ile başlayarak işledikleri olayı tanımlamalıdır. Olay işleyici metodların parametreleri tipik olarak nesne sender ve olay argümanlarını içerir.
private void OnCustomerAdded(object sender, EventArgs e)
{
// Event handling logic
}Private Sub OnCustomerAdded(ByVal sender As Object, ByVal e As EventArgs)
' Event handling logic
End SubBu durumda, parametreler sender ve e olarak adlandırılmıştır. Bu isimlendirme kuralı, olay yöneticilerinizi endüstri standartlarına uygun hale getirir.
Özel Alanların ve Nesne Başlatıcılarının Adlandırılması
Özel alanlar camel case kuralını ancak bir alt çizgi öneki ile izlemelidir. Bu, onları yerel değişkenlerden ve method argümanlarından ayırmaya yardımcı olur.
private string _customerName;Private _customerName As StringNesne başlatıcılarını kullanırken, bir sınıfın örneği oluşturulurken özelliklere doğrudan değer atayabilirsiniz.
var seattleCustomer = new Customer
{
Balance = 1000,
DateOpened = DateTime.Now
};Dim seattleCustomer = New Customer With {
.Balance = 1000,
.DateOpened = DateTime.Now
}Bu örnekte, özellik adları Balance ve DateOpened, özellikler için konvansiyon olan Pascal Case'dedir.
İstisna İşleme ve Metotlar
İstisnaları işlerken, metot adları yine Pascal Kasa sözleşmelerine uymalıdır. İstisna sınıf adları da Pascal Kasa olmalı ve 'Exception' ekiyle bitmelidir. Örneğin:
public void ProcessTransaction()
{
try
{
// Transaction logic
}
catch (InvalidOperationException ex)
{
// Handle exception
}
}Public Sub ProcessTransaction()
Try
' Transaction logic
Catch ex As InvalidOperationException
' Handle exception
End Try
End SubDönüş Tipleri ve Metot Tanımlamaları
Her zaman metot tanımlarınızın anlamlı adlara ve uygun dönüş tiplerine sahip olduğundan emin olun. Dönüş tipi metot imzasından net olmalıdır. İşte bir örnek:
public decimal CalculateTotalBalance()
{
return _totalCustomers * balancePerCustomer;
}Public Function CalculateTotalBalance() As Decimal
Return _totalCustomers * balancePerCustomer
End FunctionBu örnekte, metod adı CalculateTotalBalance, açıklayıcıdır ve Pascal Case adlandırma konvansiyonunu takip eder.
C# Sabitleri için İsimlendirme Kuralları
C#'da sabit adları tümüyle büyük harflerle yazılmalı ve kelimeler alt çizgi ile ayrılmalıdır. Bu, sabitlerin diğer değişkenlerden farklı olmasını sağlar. İşte bir örnek:
public const double PI = 3.14159;Public Const PI As Double = 3.14159Bu kural, farklı türlerde sabit adlarının kodda tutarlılığı ve kolay tanınmasını sağlamak adına uygulanır.
C# Kodlama Kuralları: Satır Sonları ve Süslü Parantezler
C# ayrıca satır sonları ve süslü parantezler için kodlama kuralları vardır. C#'da, her açılış kümesi { ait olduğu ifadenin aynı satırında ve kapanış kümesi } ise yeni bir satırda, ilgili ifadeyle hizalı olmalıdır. İşte bir örnek:
public void AddCustomer(string customerName)
{
if (!string.IsNullOrEmpty(customerName))
{
_customerName = customerName;
}
}Public Sub AddCustomer(ByVal customerName As String)
If Not String.IsNullOrEmpty(customerName) Then
_customerName = customerName
End If
End SubUygun formatlama, kodun okunmasını ve takip edilmesini kolaylaştırır.
Macar Notasyonundan Kaçınma
Modern C# geliştirmesinde, veri türleri ile ön eklenen değişken adlarına (örneğin, bir metin için strName veya bir tamsayı için intCount), Macar Notasyonu teşvik edilmez. Bunun yerine, değişkenin veri türü yerine amacını açıklayan anlamlı adlar kullanın:
public string CustomerName { get; set; }
public int OrderCount { get; set; }Public Property CustomerName() As String
Public Property OrderCount() As IntegerBu yaklaşım, kodun daha net ve sürdürülebilir olmasını sağlar.
IronPDF'i Adlandırma Kuralları ile Kullanma

IronPDF C# projelerinize entegre ederken, adlandırma kurallarını izleyerek temiz ve okunabilir kod sağlamak önemlidir. IronPDF, C# uygulamalarınızda HTML içeriğinden PDF'ler oluşturmanıza olanak tanır. Bunu yaparken, tutarlılığı sağlamak için sınıflar, metodlar ve değişkenler için adlandırma kurallarına uymak önemlidir. Aşağıda, IronPDF kullanarak kod okunabilirliğini artırmak için adlandırma kurallarını uygulayan basit bir uygulama örneği verilmiştir:
using IronPdf;
public class PdfReportGenerator
{
private readonly string _htmlContent;
private readonly string _filePath;
public PdfReportGenerator(string htmlContent, string filePath)
{
_htmlContent = htmlContent;
_filePath = filePath;
}
public void GenerateReport()
{
var pdfRenderer = new ChromePdfRenderer();
PdfDocument pdfDocument = pdfRenderer.RenderHtmlAsPdf(_htmlContent);
pdfDocument.SaveAs(_filePath);
}
}
public static class Program
{
public static void Main()
{
var htmlContent = "<h1>Monthly Report</h1><p>Generated using IronPDF.</p>";
var filePath = @"C:\Reports\MonthlyReport.pdf";
PdfReportGenerator reportGenerator = new PdfReportGenerator(htmlContent, filePath);
reportGenerator.GenerateReport();
}
}Imports IronPdf
Public Class PdfReportGenerator
Private ReadOnly _htmlContent As String
Private ReadOnly _filePath As String
Public Sub New(ByVal htmlContent As String, ByVal filePath As String)
_htmlContent = htmlContent
_filePath = filePath
End Sub
Public Sub GenerateReport()
Dim pdfRenderer = New ChromePdfRenderer()
Dim pdfDocument As PdfDocument = pdfRenderer.RenderHtmlAsPdf(_htmlContent)
pdfDocument.SaveAs(_filePath)
End Sub
End Class
Public Module Program
Public Sub Main()
Dim htmlContent = "<h1>Monthly Report</h1><p>Generated using IronPDF.</p>"
Dim filePath = "C:\Reports\MonthlyReport.pdf"
Dim reportGenerator As New PdfReportGenerator(htmlContent, filePath)
reportGenerator.GenerateReport()
End Sub
End ModuleBu adlandırma kurallarına uyarak, raporları oluştururken IronPDF kullanarak kodunuz profesyonel, düzenli ve okunabilir kalır.
Sonuç

Bu C# adlandırma kurallarını izleyerek, kodunuzun temiz, okunabilir ve bakımı kolay olmasını sağlayabilirsiniz. İster sınıf adları için Pascal Kasa, ister yerel değişkenler için camel case, ister private alanlar için alt çizgi öneki kullanın, bu kurallar tutarlı bir kod tabanı oluşturmanıza yardımcı olur.
IronPDF ile çalışmanız için ücretsiz deneme ile tüm yeteneklerini keşfedebilirsiniz. Bu deneme, iş akışınıza ne kadar iyi entegre olduğunu test etmenizi ve doğrudan görmenizi sağlar. Bir sonraki adıma geçmeye hazır olduğunuzda, lisanslar sadece $999'den başlar.

Jacob Mellor, Iron Software'de Baş Teknoloji Yöneticisidir ve C# PDF teknolojisinde öncü bir mühendisdir. Iron Software'ın ana kod tabanının ilk geliştiricisi olarak, CEO Cameron Rimington ile birlikte şirketin ürün mimarisini 50'den fazla kişilik bir şirkete dönüştürmüştür ve NASA, Tesla ve dünya genelindeki devlet kurumlarına hizmet etmektedir.
İlgili Makaleler


