C# Console vs Form

Öncelikle ne geliştirdiğini gram bilmiyorum ama sana altın bir tavsiye vereyim. Yaptığın işlemleri frontend den ayır. O bir katmandır. İster konsol olsun ister form istersede API olarak dışarıya hizmet etsin. Hiçbir önemi yok hertürlü kodun çalışmalı. Kısaca öyle bir kod yaz ki hem konsolda çalışsın hemde form uygulamasında.
Tek yapman gereken presentation katmanını logic ve business kısmından ayırman. Daha sonra presentation katmanında ister konsol kullan istersen form ve hatta API service.
 
@246675 hocam C++ bana biraz uğraştırıcı geldi. Sanki C# daha kolaydı daha pratik.
O zaman Rust'a hiç bakmayın. C++ en rahat dillerden biri. Syntax'ini anlamak başlangıçta biraz zor gelebilir belki ama alışınca başka dile geçesim gelmiyor.
C# ile GUI program yapmam, ama yaparsam Windows API kullanırım.
Çok yanlış bir söylem. Avalonia UI, gibi muhteşem frameworkler var. Paylaşılanda aynı şekilde.
 
Konsol ile başlamanızı öneririm. Console üzerinden C# dilinin asıl kullanım alanını kavramanız gerekli. Syntax kurallarını, Thread yapılarını, Class kullanımlarını vb. işlemleri öğrenmeniz gerekli.

Arayüz geliştirmeyi 2. aşamaya bırakmanız gerkeli. C# ile arayüz geliştirmek basit. Ancak Back-End ile Front-End'i aynı anda kullanmak için dilin temelini iyi bilmeniz gerekiyor.

Arayüze geçtiğiniz zaman Drawing kütüphanesi en çok kullanacağınız kütüphanelerden birisi. IO kütüphanesi de en çok kullanacağını kütüphanelerden. SQL kullanmadan SQL kullanır gibi işlem yapmak için Linq kütüphanesi gibi kütüphaneleri kullanmayı öğrenmeniz gerekiyor.

Uzun lafın kısası önce Console, sonra Windows Forms :)
 
İster konsol yaz ister form yaz fark etmez. Bu katmanlar hicbir zaman "asil is"i yapmaz. Yani bir fark yok ortada sadece datanin servis edilis seklini ayarliyorsunuz.

Console ile baslayin ama ogrenmek icin. Uzerinde calismak daha kolay.
 
Temeli Konsol'da öğrenirsin. Günümüzde Konsol programları kullanılmaz. Eski bilgisayarlar grafikl destekli ekrana sahip olmadıkları için eskiden kalma bir alışkanlık. Ama temel oradan başlar. C++, Rust, C#, Python v.s karıştırma. Bir seçim yap ve odaklan.

C# ile iyi yol alırsın. Diğerlerinde tıkanırsın. C#, C grubunun en gelişmiş sürümü. Diğerlerinde bulamayacağın bir çok kolaylığı sağlar.
 
Temeli Konsol'da öğrenirsin. Günümüzde Konsol programları kullanılmaz. Eski bilgisayarlar grafikl destekli ekrana sahip olmadıkları için eskiden kalma bir alışkanlık. Ama temel oradan başlar. C++, Rust, C#, Python v.s karıştırma. Bir seçim yap ve odaklan.

C# ile iyi yol alırsın. Diğerlerinde tıkanırsın. C#, C grubunun en gelişmiş sürümü. Diğerlerinde bulamayacağın bir çok kolaylığı sağlar.
C# = Java.
C#, C olamaz. C makine diline çevrilir yani derlenir, C# farklı işlemlerden geçiyor.
 
C# Just in Time compilation denilen bir sistem ile çalıştırılıyor. Makine koduna derleniyor yine yani. Ayrıca .net 7 ve sonrasında 8 ile Ahead of Time compilation denilen bir sistem geliyor. Bu sistem o JIT gibi değil direkt olarak makine koduna derliyor.

Ayrıca Java'da da hem JIT hem AOT hem de Interpreted denilen sistem var. Mesela Android uygulamalar AOT. Siz uygulamayı yüklerken makine koduna derleniyor.

"C#, C olamaz. C makine diline çevrilir yani derlenir, C# farklı işlemlerden geçiyor." Demek doğru olmaz.

Ayrıca JIT, programı çalıştığı makineye göre optimize etme şansına sahip. Bu sebeple AOT derlenmiş programdan daha performanslı derleme yapabiliyor. Bu sebepten dolayı zaten Android uygulamalar yüklenirken derlenir çünkü sizin cihazınıza göre optimize edilmesi sağlanır.
 
Son düzenleme:
Derleme makine koduna çevirme anlamına gelmiyor. Derlenen dosyalar Assembly koduna çevriliyor. Assembly kodu çalıştırılınca İşletim sistemi tarafından makine koduna çevrilip işlemciye iletiliyor.
 
"... the JIT compiler determines the most frequently used code and compiles it to machine code."
Buyurun.
 

Geri
Yukarı