Oyun programlamak ve geliştirmek için öğrenilmesi gereken başlıca diller nelerdir?

jinwo

Centipat
Katılım
3 Aralık 2022
Mesajlar
23
Çözümler
2
Daha fazla  
Cinsiyet
Erkek
Oyun programlamak ve geliştirmek istiyorum bunun yanı sıra uygulama da geliştirmeyi planlıyorum, Web'le pek ilişiğim olacağını sanmıyorum. Oyun motorlarına da direkt dalmak istemiyorum bir süre kodlama yapmak istiyorum ne kadar doğru bir karar bilmiyorum. Sizce öğrenmem gereken başlıca diller izlemem gereken yol ne olmalı ve bu frontend-backend-Full stack durumunu basitçe izah eder misiniz? Teşekkür ediyorum şimdiden...
 
Merhaba, öncelikle tavisyem Python dilini öğrenip kendi çapınızda internetten de yardım alarak yılan oyunu ve adam asmaca yaparak başlayın bu sayede dilin temellerini daha hızlı bir şekilde kavrarsınız. Eğer iPhone’unuz hatta MacOS işletim sahibine sahip bilgisiyarınız var ise Swift dilini öğrenmenizi tavsiye ederim bu şekilde iOS için uygulama yazıp daha ileriye kendinizi geliştirebilirsiniz.

Front-End, Back-End, Full-Stack’e gelecek olursa:

Front-End; Yani “Önzyüz” Yapım aşamasındaki web sitesinin HTML,CSS ve JavaScript gibi teknolojileri kullanarak web sitesinin görsel kısmını oluşturmaya denir. Bu işi yapan kişiyede Front-End Developer yani “Ön Yüz Geliştirici” denir.

Back-End; Yani “Arkayüz” sunucunun konfigürasyonunun, güvenliğin ve performansın yani sistem mimarisinin oluşturulması, sistemin verimli ve hızlı çalışmasını sağlamaktır. Python, PHP, Ruby, Java, C#, ASP.NET, MySQL, MS Sql, MongoDB kullanılarak oluşturulabilir. Bu işi yapan kişiyide Front-End Developer yani “Arka Yüz Geliştirici” denir.

Full-Stack; Front-End ve Back-End’in hepsini bir kişinin yapmasına denir. Bütün bu işleri yapana Full-Stack Developer denir.
 
Front-End, Back-End, Full-Stack’e gelecek olursa:
Arkadaş web ile ilgilenmediğini söylemiş.

Oyun programlamak ve geliştirmek istiyorum bunun yanı sıra uygulama da geliştirmeyi planlıyorum, Web'le pek ilişiğim olacağını sanmıyorum. Oyun motorlarına da direkt dalmak istemiyorum bir süre kodlama yapmak istiyorum ne kadar doğru bir karar bilmiyorum. Sizce öğrenmem gereken başlıca diller izlemem gereken yol ne olmalı ve bu frontend-backend-Full stack durumunu basitçe izah eder misiniz? Teşekkür ediyorum şimdiden...
Seçebileceğin milyar farklı yol var. Motor olmadan farklı grafik kütüphaneleri kullanarak da oyun yapabilirsin ki çok şey öğrenirsin. Grafik kütüphanesi kullanmazsan OpenGL, DirectX vs. kullanman gerek ki yeni başlarken yapman gereken şey onlarla uğraşmak değil. Kendisi için basit bir grafik kütüphanesi arayacağın ortalıktaki her dil için bir şeyler bulabilirsin. Python için en bilineni Pygame mesela alıp başlaması gayet kolaydır ki tavsiye ederim. C# hem oyun konusunda Unity kullandığı için hem de web kısmını çok iyi bilmiyorum ama masaüstü uygulaması geliştirmek için gayet ideal bir dil ki dil olarak da çok zor değil. Microsoft'un kendi ortaya çıkardığı ve desteklediği bir dil olduğu için gayet güzel dokümantasyonu ve masaüstü uygulama geliştirme frameworküne sahip. C++ sektör standardı ama özellikle yeni başlayan birisi için zor bir dil.

Genel olarak bir yerden başlayıp kendinizi geliştirmeye devam ettiğiniz sürece aslında nereden başladığınızın da o kadar önemi yok, zaten işin içine bir kere girdikten sonra yapmak istediğiniz şey her neyse onun için nereye bakmanız gerektiğine dair bir fikir sahibi oluyorsunuz ki ondan sonra zaten çok fazla başkasının spesifik yol tarifine ihtiyacınız kalmıyor.
 
Oyun yapımına direkt dalmadan kodlama öğrenin, algoritmalar kurun. Tabi kodlamaya girmeden önce hangi dili seçeceğinize karar vermeniz gerekir. Örneğin eğer ileride Unity, Godot kullanmayı düşünüyorsanız C#, PyGame kütüphanesini kullanmayı düşünüyorsanız Python, Unreal Engine kullanmayı düşünüyorsanız C++ gibi. Ben Unity üzerinde çalıştığım için örneklendirmeyi onun üzerinden yapayım. İlk başta C# öğrenin, C# ile basit konsol uygulamaları tasarlayın, temel mantığını öğrendikten sonra kendinizi geliştirmek adına kütüphaneler vesaire kullanarakta uygulamalar yapın. Ondan sonra Unity ile temel olarak başlayabilirsiniz. Unity'e başlamadan önce hemen grafiksel olarak bir şeyler yapmayın. Unity üzerinde bir script açın ve Unity konsolu üzerinde uygulamalar yapın. Ondan sonra UI elementlerini kullanmaya başlayın, basit hesap makinesi uygulamaları tasarlayabilirsiniz. Ondan sonra platform oyunu geliştirebilirsiniz. Bu şekilde ilk başta büyük oyunlar yapmaya değil de yavaş yavaş gelişmeye çalışın. Çıkan bugları da sadece "nasıl çözülür" diye değil, "neden çıkıyor bu hata" acaba diyerek çözün ve anlayın, gerektiğinde not alın. Sürekli tekrar ede ede fark edemeden gelişirsiniz zaten.

Benim de en başta yaptığım hatalardandı, çok fazla bir şey bilmeden "büyük" projelere başlamak ve ya bugları anlamak yerine sadece çözmek. Başarılar, kolay gelsin.
 
Oyun programlamak ve geliştirmek istiyorum bunun yanı sıra uygulama da geliştirmeyi planlıyorum, Web'le pek ilişiğim olacağını sanmıyorum. Oyun motorlarına da direkt dalmak istemiyorum bir süre kodlama yapmak istiyorum ne kadar doğru bir karar bilmiyorum. Sizce öğrenmem gereken başlıca diller izlemem gereken yol ne olmalı ve bu frontend-backend-Full stack durumunu basitçe izah eder misiniz? Teşekkür ediyorum şimdiden...
Kısaca anlatayım frontend daha çok grafik ve görüntü tarafına bakar. Backend dediğimiz şey ise arka plan işine bakar. Sunucu, database işleri gibi gibi şeylere bakar. Fullstack ise bu dediğimiz iki şeyin karması diyebiliriz. Oyun yapmak için genel olarak C# ve C++ dilleri kullanılıyor bilgisayar tarafında. Android tarafında Kotlin, dart gibi diller iOS tarafında ise Swift dili kullanılıyor. Ama Flutter yazılımı sayesinde hem Android hem iOS uygulama ve oyunlar yapılabilir. Hatta Flutter ile Linux, web, Windows uygulaması da yapabilirsiniz ancak benim önerim sadece mobil tarafında kullanmanız olur. Şimdi son olarak oyun yapma olayına gelirsek ilk önce iyi bir matematiğinizin olması gerekli ve algoritma bilginizin olması gerek. Bunun yanında tabii ki İngilizce de dahil.
 

Yeni konular

Geri
Yukarı