Önce C# mı yoksa C++ öğrenilmeli?

egwmen

Picopat
Katılım
23 Nisan 2024
Mesajlar
165
Çözümler
1
Merhaba 2D oyun yapmak istiyorum önce hangisi öğrenilmeli ve bir tanesini öğrensem yeter mi?
 
Yazılıma en baştan başlıyorsun pyton bilgin varsa c++

Yanlış söyledim c#
 
Merhaba 2D oyun yapmak istiyorum önce hangisi öğrenilmeli ve bir tanesini öğrensem yeter mi?
Unity ya da Godot'a bak, tavsiyem unity olur. Unity C#'ı öğrenebilirsin. Bunun haricinde kendin direkt oyun motorsuz oyun tasarlamayı deneyebilirsin, C++ kütüphaneleri ile yapabilirsin.
 
Python'a bulaşma hocam, veri bilimi veya yapay zeka gibi bir alandan ilerlemeyeceksen cidden gerek yok. Algoritma çalışıp daha sonra alanına göre dil seç, pythonla başlama muhabbeti çok gereksiz. Python çoğu şeyi kolaylaştırıyor.
 
Temel ve daha düşük seviye (makine diline daha yakın) bir dil olmasından dolayı öncelikli olarak C++ öneririm. Diğer dillere göre biraz daha karmaşık ancak daha temel bir dil olduğundan bunu öğrenmen hem programcılık temellerine hakim olmanda, hem de gelecekte öğreneceğin diğer teknolojileri algılama ve yorumlama noktasında sana inanılmaz farklar katacaktır.
C, C++, C# (veya Python, Java vb. farklı bir nesne tabanlı yüksek seviye dil) şeklinde bir yol haritası çizmeni tavsiye ederim.

Amacın sadece 2D oyun yapmak ise ve Unity motorunu kullanacaksan, daha ileriye dönük bir programcılık becerisine ihtiyacın olmayacaksa direkt C# ile başlayıp, doğrudan oyun geliştirme odaklı bir şekilde dili öğrenmende de hiçbir sakınca yoktur.
 
C# daha çok pencere tabanlı uygulamalar yani görsel bir arayüzü olan uygulamalar geliştirmek için kullanılır. Frontend gibi düşünülebilir. C++ ile geliştirilen uygulamalar ise daha çok siyah ekranda komut satırı tarzında arayüzle çalışmak ve çoğunlukla arka planda çalışması planlanan ya da kullanıcıdan gelecek girdi çıktı olarak daha basit datalarla çalışan çok da grafik arayüz olmayan uygulamalar için tercih edilir. Bunun içinde backend gibi diyebiliriz.

C# ile ekranda var olan birçok farklı kutucuktan farklı datalar girilmesini farklı seçimler yapılmasını isteyebilir ya da verilen girdilere sonucunda grafik temelli çıktılar, hesaplamalara dayalı animasyonlar vs. gibi şeyler yapabilirsin. Yani görselliği ön planda tutan kullanıcı dostu bir arayüz tasarımıyla birlikte tam anlamıyla bir paket program hazırlayabilirsin.

C++ ile arkada çalışacak kütüphane dosyalarını APIları yazabilir ya da APIlar üzerinden, databaseden farklı veri setlerini çekip arka planda işlemler gerçekleştirip sonuçları yazılı olarak listeleyebilisin. Elbette C++ ile de aynı şekilde farklı birçok girdiyi alabilirsin ama C# da olduğu gibi bir arayüzde kutucukları doldurak değil de komut satırı metoduyla her bir girdi için tek tek sorgu ekranı göndererek kullanıcının sorgulara sırasıyla gerekli cevapları vermesi gerekli.

Öğrenmesi, uygulama geliştirmesi biraz daha kolay olduğu için C# ile başlayabilirsin. Öğrenme sürecini biraz ilerlettikten programlamaya kod yazmaya biraz alışmaya başladıktan sonra C++ öğrenmeye başlayıp ikisini bir arada götürebilirsin. Oyun motorları genelde C++, C# ya da farklı diller arasından birini baz alan ama tamamen aynı olmayan kendilerine özgü bir programlama dili kullanır. Eğer kullanmayı hedeflediğin bir oyun motoru varsa doğrudan ona yönelik olarak öğrenmeye de başlayabilirsin. Oyun motoru kullanmayacaksan C# ile arayüz üzerindeki resimleri, grafikleri hesaplamalarla, klavye/mouse girdileriyle hareketlendirerek bir oyun yapabilirsin.
 
Öğreticilerden ziyade gerçek bir proje geliştirdiniz mi bu dillerle? İki dil de pek çok fonksiyonu yerine getirebilir. C++ altyapılı birçok yazılım ve işletim sistemi mevcut. C# yalnızca VS tabanlı WinForms uygulamalarından, C++ ise tutoriallardaki konsol tabanlı hesap makinelerinden ibaret değil.
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…