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.
C# ve Python benzer kavramları paylaşır. Bu tanıdık yapılar, Python'i zaten bildiğinizde C# öğrenmenize yardımcı olur.
- Nesne odaklı: Hem Python hem de C# nesne odaklı dillerdir. Python'daki sınıflar ile ilgili tüm kavramlar, söz dizimi farklı olsa bile C# dilinde geçerlidir.
- Platformlar arası: Hem Python hem de C# platformlar arası dillerdir. Her iki dilde yazılmış uygulamalar birçok platformda çalıştırılabilir.
- Çöp toplama: Her iki dil de çöp toplama aracılığıyla otomatik bellek yönetimi sağlar. Çalışma zamanı, referans edilmeyen nesnelerden belleği geri alır.
- Kesin olarak yazılmıştır: Hem Python hem de C# kesin olarak yazılan dillerdir. Tür zorlaması örtük olarak gerçekleşmez. Daha sonra açıklanan farklar vardır çünkü C# statik olarak yazıldığından Python dinamik olarak yazılmıştır.
-
Async / Await: Python'ın
asyncveawaitözelliği doğrudan C#asyncveawaitdesteğinden ilham aldı. -
Desen eşleştirme: Python'ın
matchifadesi ve desen eşleştirmesi, C# desen eşleştirmeswitchbenzer. Karmaşık bir veri ifadesinin bir desenle eşleşip eşleşmediğini belirlemek için bunları kullanırsınız. -
Anahtar kelimeler: Python ve C# birçok anahtar kelimeyi paylaşır,
if,else,while,forve diğerleri gibi. Tüm söz dizimi aynı olmasa da, Python biliyorsanız C# okuyabileceğiniz kadar benzerlik vardır.
C# dilini öğrenirken, C# öğesinin Python'dan farklı olduğu şu önemli kavramları keşfedersiniz:
-
Girintileme ve belirteçler: Python'da yeni satırlar ve girintileme birinci sınıf sözdizimsel öğelerdir. C# dilinde boşluk önemli değildir.
;gibi belirteçler ayrı deyimleri ayırırken,{ve}gibi diğer belirteçlerifve diğer blok deyimlerinin denetim bloğu kapsamını kontrol eder. Ancak, okunabilirliği artırmak amacıyla, çoğu kodlama stili (bu belgelerde kullanılan stil dahil){ve}tarafından bildirilen blok kapsamlarını güçlendirmek için girinti kullanır. - Statik tipleme: C# dilinde, bir değişken bildirimi türünü içerir. Bir değişkeni farklı türde bir nesneye yeniden atamak derleyici hatası oluşturur. Python'da, yeniden atandığında tür değişebilir.
- Boş değer atanabilir türler: C# değişkenleri boş değer atanabilir veya atanamaz olabilir. Null değer içermeyen tür, null (veya hiçbir şey) içeremez. Her zaman geçerli bir nesneye başvurur. Buna karşılık, null atanabilen bir tür, ya geçerli bir nesneye ya da geçersiz (null) bir duruma başvurabilir.
-
LINQ: Dil Tümleşik Sorgusunu (LINQ) oluşturan sorgu ifadesi anahtar sözcükleri Python'da anahtar sözcük değildir. Ancak, ,
itertoolsvemore-itertoolsgibipy-linqPython kitaplıkları benzer işlevler sağlar. - Genel değerler: C# genel türleri, tür parametreleri için sağlanan bağımsız değişkenler hakkında onaylar yapmak için C# statik yazma kullanır. Genel bir algoritma, bir argüman türünün karşılaması gereken kısıtlamaları belirtmek zorunda kalabilir.
Son olarak, Python'ın C# dilinde bulunmayan bazı özellikleri vardır:
- Yapısal (ördek) tipleme: C# dilinde türlerin adları ve bildirimleri vardır. Tuples dışında, aynı yapıya sahip olan türler birbirinin yerine kullanılamaz.
- REPL: C# hızlı bir şekilde çözüm prototipi oluşturmak için Read-Eval-Print Döngüsüne (REPL) sahip değildir.
-
Önemli boşluk: Küme ayraçlarını
{doğru şekilde kullanmanız ve}blok kapsamını belirtmeniz gerekir.
Python biliyorsanız C# öğrenmek sorunsuz bir yolculuktur. Diller, kullanılacak benzer kavramlara ve benzer deyimlere sahiptir.