C++'a başlanmalı mı?

Platform desteği? C# MacOS, Linux, Windows tarafından destekleniyor. Cross platform mu sevmiyorsun?
C#'ın .NET Framework'ünden kaynaklı Windows merkezli olduğunu düşünüyordum hocam. Diğer (Xamarin, Unity gibi) program desteklerini unutmuşum :)

C++ ve C# Syntax'ı da böyle akla kara gibi değil ki.
C#'ın daha çok Java'ya benzediğini düşünüyorum, evet belki çok da bir fark yok; ama yine de bana öyle geliyor.
 
Desktop icin :
Eger windows'ta gelistireceksen C# bence en pratigi.
C++ ve QT kombosu yapabilir, Python qtkinker, JS electron gibi seceneklere yonelebilirsin.
Biraz daha mainstream disi takilacaksan Go + fyne ; Erlang/Elixir Wx ya da Scenic deneyebilirsin.

Konuda Java sevmediginden bahsettigine gore PL objektif ya da subjektif fikirlerin var, o halde aslinda biraz da bosuna tavsiye veriyoruz.
 
C++ veya C# dillerinin ikisinin de sıfırdan öğrenilme durumunu göz önüne alırsak masaüstü uygulama geliştirmek için benim tercihim C# olurdu. Çünkü Qt kombinasyonu ile beraber uygulama geliştirmek için öncelikle doğal C++ öğrenip sonrasında Qt Framework'üne hakim olmak gerekliliği biraz yorucu bir süreç olabilir. Basit bir farktan bahsetmek gerekirse; doğal C++ geliştirirken bir cümleyi parse ettiğinizde bunu basitçe bir array'e veya vector'e eleman olarak aktarabiliyorsunuz fakat Qt Framework'ünde QStringList şeklinde otomatik olarak oluşturulmuş fonksiyonlar ve alt fonksiyonları mevcut.

Masaüstü uygulama geliştirmek için (özellikle yalnızca Windows) C++ QT kombinasyonu yalnızca QtWidget tipindeki uygulamalar için mantıklı olacaktır. Daha güzel arayüz desteği sunan QtQuick tipinde uygulama geliştirmek ise birazcık işlem kalabalığı yaratabilir. Birden çok bilgiyi beraberinde istiyor QtQuick.

Örneğin; arayüzden (QML tarafı) alınan ve arayüze tekrar döndürülmeyecek olan bir veriyi C++ tarafında işlemek için:
C++:
Q_INVOKABLE void userCheck(const QString &username, const QString &password);
şeklinde bir kod yazmanız gerekiyor header dosyanıza. Burada ilgili userCheck metoduna arayüzden bir username string'i ve password string'i geleceğini anlatıyor. Veya arayüze geri gönderilecek bir string dosyası için aşağıdaki gibi Signal&Slot tipinde bağlantılar kurmanız gerekiyor.
C++:
Q_PROPERTY(QString handledUser READ handledUserText WRITE handledUserSet NOTIFY handledUserChanged);
Vs vs bu konu daha da uzar gider.

Desktop icin :
Eger windows'ta gelistireceksen C# bence en pratigi.

Qt'yi ben de önermiştim fakat sizin de bahsettiğiniz üzere yalnızca Windows ortamında bir masaüstü uygulama geliştirmek planlanıyorsa .Net (C#) veya QtWidget (C++) mantıklı olacaktır. Son kararı bu durumda yine konu sahibi arkadaşımız verecek gibi duruyor.
 

Geri
Yukarı