Hepinize Merhaba
Yazılıma yeni başlayacak kimselerin aklında bir kara bulut gibi dolaşan ilk ve en büyük soru: “Nereden başlamalıyım?” Şimdi sizler ile bu soruya cevap bulup artık bir dil öğrenme aşamalarını ders olarak öğreneceğiz.
Öncelikle hangi alanda uzmanlaşmak istediğimizi seçmeniz lazım. Çünkü yazılım çok çeşitli bir alan. “Yazılımda uzman olacağım” demek: “Aga ben okyanustaki tüm damlaları sayacağım” demek gibi bir şey (belki biraz abartılı oldu ama neyse).
Alanı nasıl seçeceğiniz konusunda ben bir şey diyemem çünkü bu tamamen size bağlı. Nasıl mı? Alanınızı seçerken şunlara mutlaka ama mutlaka dikkat edin; Zevk alarak yaptığınız yorulsanız dahi bıkmayacağınız, o işi yaparken dinlendiğiniz bölümü seçmeye gayret edin.
“Tamam anladık da hangi alanlar var?” Derseniz şöyle başlı başınca bir kaç örnek vereyim ;
• Oyun programlama
• Web programlama (back-end)
• Web desing (Front-end)
• Mobil uygulama geliştirme
• Gömülü programlama
• Masaüstü programlama
• Yapay zeka
Bu listeyi daha da uzatabiliriz…
” Tamam. Ben falanca alanda uzmanlaşacağım” dediniz. Ama bir sorun var; hiçbir şey hakkında bilgimiz yok. Öncelikle ben kendi alanımdan yola çıkarak sizin kafanızda kabaca bir yol haritası çizeyim ;
Ben mobil uygulama ve oyun programlama alanları üzerine çalışıyorum. Şimdi tamam da ben bunları yapmam için ne kullanacağım, hangi dil ile kodlayacağım ya da “Nasıl kodlayacağım?”
Öncelikle alanınızda dil popüleritesi yüksek olan dili seçmeniz iş bulmanız konusunda önemli bir etken (tabi burada bulunduğunuz ülkede kullanılan dil popüleritesi de önemli. Fakat bunu başka bir yazıda ele alacağım.
Mobil, Android ve IOS için farklı farklı (Android = Java / İOS = Swift). Burada erişilebilirlik konusunda Android ile başlamak her zaman lehinize olacaktır. (Geliştirici hesabı ücretleri konusunda da Android yine öne geçiyor). Oyun için ise kullanacağımız (motordan motora değişir elbet) yeni başladığımızı varsayarsak UNTY bizim için en iyi seçenektir. Unty hem 2d hem de 3d oyunlar yapmamızı sağlayan ve bu oyunları Android, İOS ve PC plartformlarında yayınlamamızı sağlayan başarılı bir motordur. Unty, JavaScript ve C# dillerini kullanmakta. Yani benim gibi bir yol izleyecekseniz bu iki dili aynı anda götürmeniz gerek. “Zor olmaz mı?” dediğinizi duyar gibiyim. Hayır! Aksine daha da verimli olacak neden mi? Hemen anlatayım!
Atıyorum mesela For veya While döngülerini öğreniyorsunuz. Ve vakit sorununuz yok. O zaman bu iki yapıyı her iki dilde de yazarak devamlı uygulama yapacaksınız. “Ne yapacağım ki, Aklıma uygulama gelmiyor?” derseniz eğer, GitHub burada imdadınıza yetişiyor. Burası Open Source (Açık Kaynak Kod) yani özgür yazılım ve yazılımcıların mekanı. Burada aklınızı kaybedeceğiniz kadar kaynak, uygulama ve proje var. Dilerseniz projeye katkı yapıp paylaşırsınız; dilerseniz bilgisayarınıza indirip üzerinde oyalanarak kendinizi geliştirebilirsiniz”.
Mesela C# ile bir hesap makinası yazdınız, ve bitti takır takır çalışıyor. Hatta Biraz daha uzmanlaştığınızı varsayarak bu hesap makinasına karekök, kartezyen vs. işte efendim o, şu, bu zımbırtılarından eklediniz diyelim. Eee? C# tamam ama Java’nın boynu bükük, kırgın, üzgün, size hasret; “Sizin Kodlarınıza Hasret”. Hemen aynı programı Java’da da yazıyoruz. Yalnız önemli bir nokta var: asla acele etmiyoruz. Bu iş sabır ve zaman isteyen bir iş.
Yazımızın 1. bölümünün sonuna geldik. 2. bölümde görüşmek dileğiyle…