Oyun geliştirmek, mobil uygulama yapmak ve full-stack developer olmak için öneriler

mrmarcellus

Kilopat
Katılım
18 Ocak 2019
Mesajlar
349
Çözümler
2
Hem zamanı geldikçe oyun geliştirmek, hem Mobile bir şey tasarlamak istiyorum zamanca. Bunları tamamen 3-5 seneye yaymak ve öğrenmek istiyorum ve bunun kapısı da full-stack developerliğe çıkıyor sanırım.

Örnek bu roadmapte C# yok, diğer diller yok. Bu iş nasıl olacak? Yani bir paket olarak kısım kısım nerelere odaklanmak lazım veya bunlara artık ihtiyaç mı yok beni bilgilendirebilirseniz çok memnun olurum. Önce HTML ile başlamak istiyorum hem kodlama ve yazılıma alışma babında hem de daha somut kısımlar ilgimi çekiyor. Ondan sonra mesela Python öğrensem uzunca bir süre nasıl olur? Ya da direkt proje proje mi ilerlemeli ve yolda mı öğrenmeli tam mantığıma sığdıramadım maalesef.

Bir de mesela oyun geliştirmek isteyen neci oluyor? Hangi diller ve motorlar lazım.
 
Son düzenleyen: Moderatör:
Hem zamanı geldikçe oyun geliştirmek, hem Mobile bir şey tasarlamak istiyorum zamanca. Bunları tamamen 3-5 seneye yaymak ve öğrenmek istiyorum ve bunun kapısı da full-stack developerliğe çıkıyor sanırım.


Merhaba, full stack development aslında backend+frontend şeklinde web development oluyor, kabaca kullanıcının browserdan bir şey yapması ve backend tarafında bunun getirilmesi, kaydedilmesi, güncellenmesi vb.

Oyun veya mobile geliştirme farklı, mesela şöyle bir mobile app olabilir; android sistemi üzerinde çalışıp kameraya erişen, fotoğraf çeken, fotoğrafı photoshop benzeri sağını solunu değiştiren vb. Mobile çalışan bir oyun da olabilir. Internete bağlanma zorunluluğu yoktur, mobile bir app ya da telefonda ya da bilgisayarda çalışan bir oyun, web app gibi internete bağlanıp erişebildiğiniz bir şey olmak zorunda değildir. Kabaca farkları bunlar, siz daha fazla araştırıp farklarına daha çok hakim olabilirsiniz.

Örnek bu roadmapte C# yok, diğer diller yok. Bu iş nasıl olacak? Yani bir paket olarak kısım kısım nerelere odaklanmak lazım veya bunlara artık ihtiyaç mı yok beni bilgilendirebilirseniz çok memnun olurum.

Ortak kullandıkları şeyler, yazılımın temelleri olan algoritmalar, veri yapıları, database kullanımı, yazılım mimarisi vb. şeyler, yani yazılımla uğraşanların bilmesi gereken şeylerdir. Bu tür roadmapler bu core yazılım skillerine, prensiplerine değiniyor mu bilmiyorum.

Mesela eklediğiniz linkte yukarıda "What languages are used in Full Stack Development?" diye bir bölüm var, oraya tıklarsanız dil hakkında ;

"In full stack development, the languages used can range from just 3 to a multitude of options.

For the front-end there aren't that many options; you can only use HTML, CSS, and JavaScript (with the freedom of picking the framework that best suits your preferences). However, on the back-end, the story is quite different. Of course, you can pick JavaScript, keeping the full tech stack homogenous, but you also have the option to add multiple programming languages if you're going with a microservices-based architecture, using the right language for each service. If that's your situation, some of the most popular languages include Python, Ruby, Java, PHP, or C#."

diye bahsettiğini görürsünüz, yani bu roadmap görselinde c# ya da diğer diller yoksa fullstack geliştiriciler c# kullanmıyor anlamına gelmiyor, bu sadece bir roadmap, frontend geliştirme yapmak için javascripti illa ki öğrenmeniz gerekiyor, kabul, ama dümdüz bir mantıkla bu roadmaptekileri satır satır uygulayıp fullstack dev. olacağım diye düşünmemek lazım. Öncelikle yukarıda dediğim yazılımla ilgili core şeyleri öğrenmeniz lazım, diller ise araçtır, bu roadmapte node.js kullanılmış, başka roadmapte c# tavsiye edilir, bir başkasında Python kullanılır vs.

Önce HTML ile başlamak istiyorum hem kodlama ve yazılıma alışma babında hem de daha somut kısımlar ilgimi çekiyor. Ondan sonra mesela Python öğrensem uzunca bir süre nasıl olur? Ya da direkt proje proje mi ilerlemeli ve yolda mı öğrenmeli tam mantığıma sığdıramadım maalesef.

Somut kısım dediğiniz şeyi tam anlamadım, yaptığınız şeyi görebilmek mi yani mesela bir oyun grafiği ya da web site arayüzü gibi? Bence eski usul console app kullanarak kullanıcıdan input al, işlem yap output göster, dosyayı satır satır oku, algoritma bilgisi geliştirme... şeklinde bir başlangıç daha iyi olur. HTML zaten programlama dili değil, bir datayı arayüzde göstermeye yarayan bir markup dilidir, yani 3 ile 5i topla diyemeyeceğiniz bir dildir ama 3+5=8 değerini ekranda göstermenize yardımcı olur.

Farklı roadmapleri inceleyebilirsiniz, bunun direkt olarak bu roadmaptekini ya da forumda filancanın dediklerini 2 sene uygula, tamam ondan sonra git microsoftta işe başla şeklinde kesin bir 100% başarı garantili, kanıksanmış ve herkesçe kabul gören sabit bir roadmap modeli yok, (eğitimini okulda almıyorsanız. üniversitelerin bilgisayar/yazılım vb. mühendisliklerinin eğitim programlarını da inceleyebilirsiniz). Yani birisinden size nokta atış roadmap ya da youtube eğitim videosu serisi önermesini bekliyorsanız, böyle bir eğitim mevcut değil diyebilirim, direkt python öğren ya da direkt proje proje ilerle diye bir tavsiye vermek saçma olur.

Bir de mesela oyun geliştirmek isteyen neci oluyor? Hangi diller ve motorlar lazım.

Oyun geliştiren oyun geliştirici oluyor, bu roadmap sitesinde mesela game development altında client ya da server side game development diye iki tane daha roadmap var, bunları da inceleyebilirsiniz

->Game Developer Roadmap
->Server Side Game Developer Roadmap

-oyun matematiği, oyun motorları, programlama dilleri buralarda bahsedilmiş mesela ya da design patterns, multithreading vb. yazılım kavramları bu roadmaplerde mevcut. Bu tür yazılım kavramları ne yazılımı yapıyorsanız yapın önemli ama oyun motoru ya da programlama dilleri bir araçtır.
 
Somut kısım dediğiniz şeyi tam anlamadım, yaptığınız şeyi görebilmek mi yani mesela bir oyun grafiği ya da web site arayüzü gibi? Bence eski usul console app kullanarak kullanıcıdan input al, işlem yap output göster, dosyayı satır satır oku, algoritma bilgisi geliştirme... şeklinde bir başlangıç daha iyi olur. HTML zaten programlama dili değil, bir datayı arayüzde göstermeye yarayan bir markup dilidir, yani 3 ile 5i topla diyemeyeceğiniz bir dildir ama 3+5=8 değerini ekranda göstermenize yardımcı olur.
Hocam yani biraz daha yazdığım veya oluşturduğum şeyin etkisini kenarda net olarak göreceğim şeylerden bahsediyordum. Örnek android oyun/uygulama geliştirirken görülebiliyor ya o şekilde

Farklı roadmapleri inceleyebilirsiniz, bunun direkt olarak bu roadmaptekini ya da forumda filancanın dediklerini 2 sene uygula, tamam ondan sonra git microsoftta işe başla şeklinde kesin bir 100% başarı garantili, kanıksanmış ve herkesçe kabul gören sabit bir roadmap modeli yok, (eğitimini okulda almıyorsanız. üniversitelerin bilgisayar/yazılım vb. mühendisliklerinin eğitim programlarını da inceleyebilirsiniz). Yani birisinden size nokta atış roadmap ya da youtube eğitim videosu serisi önermesini bekliyorsanız, böyle bir eğitim mevcut değil diyebilirim, direkt python öğren ya da direkt proje proje ilerle diye bir tavsiye vermek saçma olur.
Hocam zaten ikisinden birini okuyacağım bu sene yerleştirme açıklanınca , artık daha kapsamlı girmek istiyorum bu şeylere ama çok kafa karıştırıcı ve çok geç kalınmış geliyor kafamda toparlayamıyorum.
 
Hem game dev, hem mobile dev; hem de full-stack dev olmak ayni anda mumkun degil.

Bunlarin tamamini orta derinlikte bilen birisi olursun ama her seyden biraz bilmektense spesifik seyleri derinlemesine bilmek cok daha kiymetli.

Örnek bu roadmapte C# yok, diğer diller yok. Bu iş nasıl olacak?

Roadmap'i incelemedim ama dilden bagimsiz konseptleri kavramsal olarak ifade etmis olabilir. Yani atiyorum bir backend developer'in database dizaynini ve manipulasyonunu bilmesi gerekir ancak bunu MySQL ya da MSSQL seklinde ayristirarak roadmap e koymasina gerek yok. Yine API dizayni icin de bilinmesi gereken cok sey var ama bunu bilen kisi JS ile de yapar Python ile de yapar C# ile de.

Yine backend bilen birisi; multiplayer bir oyunun sunucu tarafini da yazabilir. Multiplayer oyunlar zaten server'da "oynanir" , client tarafi bunu render eder yalnizca. Ama bir game dev sayilmaz bu is tek basina cunku client tarafi ayri bir dunya.

Genel tavsiyem, ogrenecegin sey her ne ise; olaya kavramsal olarak bakman. C# ogreniyorum diye degil, programlama ogreniyorum diye bakmalisin. Unity ogreniyorum diye degil, oyun motoru kullanimini ogreniyorum diye bakmalisin. Ya da JS ogreniyorum diye degil, client tarafta browser API'si ogreniyorum seklinde olayi ogrenmelisin. Bunu yaparken kullandigin teknoloji ve dilleri zaten surec icinde ogreneceksin ama buyuk resmi de kacirmamis olursun.

Yoksa dil ve teknolojiler zaten kolay, Unity SDK'si, var olan tum API'lar internette var. Dillerin de API si piyasada var. GoLang'de yalnizca 25 tane keyword var, muhim olan neyi nerede ne zaman ve neden kullanacagina karar verebilecek bilgiye sahip olman.
 
Hem game dev, hem mobile dev; hem de full-stack dev olmak ayni anda mumkun degil.

Bunlarin tamamini orta derinlikte bilen birisi olursun ama her seyden biraz bilmektense spesifik seyleri derinlemesine bilmek cok daha kiymetli.



Roadmap'i incelemedim ama dilden bagimsiz konseptleri kavramsal olarak ifade etmis olabilir. Yani atiyorum bir backend developer'in database dizaynini ve manipulasyonunu bilmesi gerekir ancak bunu MySQL ya da MSSQL seklinde ayristirarak roadmap e koymasina gerek yok. Yine API dizayni icin de bilinmesi gereken cok sey var ama bunu bilen kisi JS ile de yapar Python ile de yapar C# ile de.

Yine backend bilen birisi; multiplayer bir oyunun sunucu tarafini da yazabilir. Multiplayer oyunlar zaten server'da "oynanir" , client tarafi bunu render eder yalnizca. Ama bir game dev sayilmaz bu is tek basina cunku client tarafi ayri bir dunya.

Genel tavsiyem, ogrenecegin sey her ne ise; olaya kavramsal olarak bakman. C# ogreniyorum diye degil, programlama ogreniyorum diye bakmalisin. Unity ogreniyorum diye degil, oyun motoru kullanimini ogreniyorum diye bakmalisin. Ya da JS ogreniyorum diye degil, client tarafta browser API'si ogreniyorum seklinde olayi ogrenmelisin. Bunu yaparken kullandigin teknoloji ve dilleri zaten surec icinde ogreneceksin ama buyuk resmi de kacirmamis olursun.

Yoksa dil ve teknolojiler zaten kolay, Unity SDK'si, var olan tum API'lar internette var. Dillerin de API si piyasada var. GoLang'de yalnizca 25 tane keyword var, muhim olan neyi nerede ne zaman ve neden kullanacagina karar verebilecek bilgiye sahip olman.
Çok güzel açıklamışsınız hocam sağolun , dillerin araç olduğunu unutuyorum tam kafama oturtamıyorum doğru söylüyorsunuz..
 
Temelin sağlamsa gerisi yolda düzülüyor.
Saydığın alanlar birbirinden çok uzak alanlar değil. Benzer altyapıya sahipler.
Hepsi aynı kapı; Sağlam bir temel.

Bir alana geçtiğinde o alanda orta seviyede bile olmak için aylarını vereceğini ve tonla pratik yapacağını unutma. Tüm bunlar zamanla olan şeyler.
 
Temelin sağlamsa gerisi yolda düzülüyor.
Saydığın alanlar birbirinden çok uzak alanlar değil. Benzer altyapıya sahipler.
Hepsi aynı kapı; Sağlam bir temel.

Bir alana geçtiğinde o alanda orta seviyede bile olmak için aylarını vereceğini ve tonla pratik yapacağını unutma. Tüm bunlar zamanla olan şeyler.
Sağlam temel nasıl atılır hocam ?
 

Technopat Haberler

Yeni konular

Geri
Yukarı