Ben android için idle clicker tarzı oyun geliştirmek istiyorum bunun için Unity kullanmayı düşünüyorum yani bunun için Python'u tamamen öğrenmeden C++ öğrensem sorun olur mu? Python'u az da olsa biliyorum.

Python'u öncelikle bil. Daha sonra Android üzerinden gideceksen Java, C++ gibi dilleri öğrenmelisin.

Değil.

C# Windows'a özgü bir dil. C++ ise global bir dil. Bu bağlamda C++ ile başlamanız daha mantıklı olabilir.

C# Windowsa özgü, C++ global derken neyi kastediyorsunuz?

Unreal Engine ve Unity içinse C++

Yani direk C++ öğrenmeliyiz oyun yazmak için öyle mi? Python, Java falan bunların hiçbirine gerek yok mu?

Yanlış yazmışım doğru C++ diye düzelttim kusura bakmayın.

C++ ve Unreal Engine 4 öneririm.

C# dili windows dışında, linux ve unix sistemlerde de kullanılabiliyor. . Net Framework bağımlılığı nedeniyle öyle olduğunu sanıyorsunuz fakat Mono Project ile. Net Framwork sorununu ortadan kaldırmak mümkün. Ayrıca Unreal Engine adaptasyonu içinde çalışmalar mevcut. Kısacası, evet oyun geliştiricileri şuan C++ tercih ediyorlar, ancak C# kullanım alanı ve pratikliği nedeniyle giderek artan uygulama alanına sahip.

C# daha kapsamlı evet ama Unreal Engine için.

C++ daha modern değil miydi?

Sektörde 3 yıldır yazılımcı olarak çalışıyorum. 1 tane yazılım dilini yalayıp yutman tavsiyemdir ne olduğunun önemi yok. Bütün diller arasında tek fark "syntax" farkıdır. Başka diller kullanman gerekirse küçük bir oryantasyon ile kendini adapte edebilirsin. Kafasında algoritma ve akış şemasını kurabilen bir kişi her dili yazabilir. Bütün kodlara ezberlemene gerek yok neyi nerede ne zaman kullanacağını bilmen önemli. Hiç bir yazılımcı ezbere kod yazmaz ne yazılacağını bilir gerektiği zaman arama motoruna istediği "Doğru" aramayı başlatır ve istediğini elde edebilir.

Kardeşim olaya oyun yapmak güdümlü yaklaşma. Programcılık kompleks bir alandır, Şu gereksiz, bu en iyisi diye birşey yok. Sana tavsiyem şu ki, 10 yıl sonra bile sana getirisi olacak şeylere bugun yatırım yapmalısın. Python öğrenirsen altın adam olursun, Türkiye'de fazla bilen yok. Ancak programcılık konusunda hangi dilleri bildiğin değil, ortaya ne koyduğun konusu önemlidir. Ortaya işe yarar birşey koymak için, piyasanın neye ihtiyacı olduğunu görmen, ve bu ihtiyacı karşılayacak projeyi yaratmak için senin nelere ihtiyacının olduğunu anlaman gerekiyor. Benim sana tavsiyem, C# console uygulamalarıyla giriş yap. Daha sonra neyi nasıl yapabileceğini ve nelere ihtiyacının olacağını daha somut anlarsın.

Okumadığın şeye cevap verme alışkanlığın olmasaydı belki daha isabetli cevap verebilirdin Phyton'u küçümsedikten sonra, piyasa ihtiyaçları konusunda bir fikrin olduğunu düşünmüyorum. Özellikle askeri ve savunma yazılımları genelde Phyton ile geliştirilir, NASA, CERN, Google, Dropbox, Yandex gibi uluslararası firmalar iyi bir Phyton yazılımcısını asla kapıdan çevirmezler. Son düzenleyen: Moderatör: 26 Şubat 2019

C++ çünkü burayı okursan anlarsın. Bilgisayar Mühendisliği okuyorum ve oyun motorları için neredeyse hep C++ kullandık.

Merhabalar. Bende oyun yapmayı düşünüyorum. Unity ve Unreal motorlarını azda olsa kullandım. Unity C# dilini kullanıyor. Unreal ise C++ kullanıyor. Animasyonlar için ise Blueprint. Bu bağlamda hangi motoru kullanacağınız önemli. Unreal Unity'e göre daha kompleks bir yapıya sahiptir. Bana kalırsa C++ ve Unreal kullanırdım. Unity kullanıyorum fakat tam bir proje çıkarmadım. Fakat yeni sistem alınca Unreal kullanmaya başlayacağım.

Ne öğrenmek istiyorsan ilk once onu öğreneceksin. C#, C++ ın daha modern ve daha kapsamlı versiyonudur.

C# daha kapsamlı daha modern bir dil. Önce basitten başlamak daha iyi olmaz mı? Hem ben indie oyun geliştiricisi olmak istiyorum. Python öğrenmemin bana ne faydası olabilir?

C# Dili, yalnızca Windows da kullanılabilir. C++ İse her platform da her program için kullanılabilir. Bu nedenle oyun geliştiricilerinin çoğu C++ tercih eder.

Python öğrenince altın adam olacağınız yerde bıraktım okumayı. Python bilmeyeni dövüyorlar hocam ne yaptın sen. Ayrıca C# C++'dan daha gelişmiş bir dil değildir, yapabilecekleri sınırlıdır, ayrıca. net framework altında çalışması da birçok dezavantajı beraberinde getiriyor, en basitinden güvenlik, bir lisans gerektiren uygulamayı. net ile yazmak aptallıktan başka birşey değildir, IL tabanlı uygulamaları ne ile pack veya obfuscate ederseniz edin kırmak 1 saatten fazla sürmez, patlak lastik yama tutmaz hesabı. C++ uçsuz bucaksız bir dünya C#'a göre ve assembly kodu ile aranızda çok ince bir çizgi var, gerektiğinde direk inline assembly girebiliyorsunuz, aynı zamanda manuel araba gibi, sanal belleğin tüm yönetimi size ait pe module oluşturarak enjekte edilebilir uygulamalar da geliştirebilirsiniz. Hepsini anlatmaya kalkarsak baya uzayacak, kısacası her dil amacına göre, yapacağınız uygulamaya göre, ekrana sırf mesaj verdirmek veya toplama çıkarma işlemi yaptırmak için C++ projesi açmak gereksiz zahmet olur. Umarım anlatabilmişimdir.

Aynen katılıyorum hocam. Bilgi ezberleme/tutma işini hali hazirda bilgisayarlar çok iyi yapıyorlar. Önemli olan akış şemasını tasarlayabilmek ve bu tasarıma göre neyi nerede kullanabileceğini, kullanman gerektiğini bilmek.

Unreal Engine ve Unity gibi oyun motorları için kesinlikle C++. Aksi iddia bile edilemez.

Syntax farki degil, bunun OOP mantigi, Compiler'i, eger ki derlenmiyor ise interpreter'i, VM'i, mimariler arasi destegi, hizi, guvenliligi, bellek yonetimine kadar farkli kisimlar ile karsilastiriliyorlar. Onun disinda haklisin diyebilirim.

İlk önce hangisi öğrenilmeli? Unity ve Unreal Engine için soruyorum.