Yazılım Dili Nasıl Öğrenilir?

Yazılıma yeni başlayan veya başlamayı düşünen herkesin aklında ‘Nasıl öğrenirim? Kendimi bu alanda nasıl geliştiririm?’ gibi sorular vardır. Bu sorulara kendi tecrübelerimden yola çıkarak cevap vermek ve tavsiyelerde bulunmak istiyorum.

Öncelikle ben üniversiteye başlayana kadar -daha doğrusu 1. sınıfa başlayana kadar- yazılımla hiç uğraşmamıştım, altyapım veya önceden gelen bir ilgim yoktu. Bilgisayar Programlama I dersinde C dilini görmeye başlayıp siyah ekranda ilk kez “Hello World!” yazdırdığımda yazılım dünyasına giriş yapmış ve insanlık için küçük ama benim için büyük olan adımı atmış oldum.

1- BAŞLAYIN
Aslında ilk yapmanız gereken şey başlamak. Kafanızdaki “O dili mi öğrensem yoksa şunu mu? Hangi kaynak daha iyidir acaba? Video mu izlesem kitap mı alsam?” gibi soruları atın. Bir tane dili seçin, hoşunuza giden ilk kaynaktan başlayın. Ama vakit kaybetmeden başlayın. Zaten dilin temelini öğrenmek için en iyi kaynağı bulmaya çalışmanıza gerek yok, hepsi size aşağı yukarı aynı şeyleri verecek.

2- UYGULAYIN
Evet ilk adımı attık. Bir dil seçtik, hoşumuza giden bir eğitim serisi bulduk. Şimdi yapmamız gereken ne? Videoları izleyip ya da kitabı okuyup geçmek bence yapılacak en büyük hatalardan. Çok basit şeyler bile olsa “Ben nasıl olsa bunu hatırlarım ya denememe gerek yok.” deyip gördüğünüz örneği uygulamadan geçmeyin. Videoda/kitapta toplama işlemini bile gösterse gördüğünüz şeyi uygulayın. Yazılım öğrenmeye çalışıyorsunuz, o zaman yazın, uygulayın, sonucu görün. Gördüğünüz örnekle sınırlı kalmayın, kendiniz de farklı denemeler yapın. Ne kadar çok pratik yaparsanız, bildiğiniz şeyi o kadar iyi bilirsiniz.

3- PROBLEM ÇÖZÜN
Biraz daha ilerledik, artık dilin temellerine biraz daha hakimiz. Fonksiyon nedir, döngü nedir, if else nedir vs artık biliyoruz. Bu temelleri öğrendikten sonra yapmamız gereken şey yine pratik. Ama bu sefer problem çözmeye çalışmalıyız. Böylece hangi yapı nerede nasıl kullanılacak daha iyi anlama ve kendimizi geliştirme fırsatımız olacak. Bunun için Project Euler, HackerRank, LeetCode gibi birçok site var -internetten farklı kaynaklar da bulabilirsiniz-. Bu sitelerde seviyenize göre bulabileceğiniz birçok problem var. Bu problemleri çözmeye çalışmak sizi öğrenmeye çalıştığınız dilde geliştirecektir. Tabi seviye atladıkça problemler zorlaşacak, bazen yapamayacaksınız, sinirleneceksiniz ama sakın bırakmayın. Çözümlerine bakıp anlamaya çalışın, anlamazsanız anlayana kadar uğraşın, pes etmeyin. Her gün az da olsa kendinizi geliştirmek için uğraşın.

4- PROJE YAPIN
Biraz daha pratiklik kazandıktan sonra daha büyük bir proje yapmaya geçin. Yüz satırlık kısa problemlerden çıkıp bin satırlık projelere başlayın. Bu proje fikrinin de olağanüstü bir fikir olması, çok yaratıcı olması gerekmiyor -olursa iyi olur ama kendinizi bunun için çok sıkmanıza gerek yok-. Benim yaptığım ilk büyük proje Kütüphane Otomasyonu projesiydi. Hiçbir yaratıcılığı olmasa da öğrenme yolunda bana birçok şey kattığını söyleyebilirim. Hoşunuza giden bir fikir bulun, önce kafanızda tasarlayın daha sonra yazmaya başlayın. Bu size hem bir projenin yapım aşamalarını öğretecek hem de projeyi yaparken birçok yeni fonksiyon ve özellik öğreneceksiniz. Bunlar çoğu zaman eğitimlerde yer verilmeyen şeyler oluyor. Çok basit bir örnek vermek gerekirse ben Kütüphane Otomasyonu yaparken arka planın ve yazı renginin nasıl değiştiğini öğrenmiştim ancak bu özellikleri hiçbir eğitim serisinde görmedim, projeyi yaparken internetten araştırarak buldum.

5- PES ETMEYİN
Bu süreçte birçok sorunla karşılaşacaksınız, bazen basit bir hata yüzünden saatlerce uğraşacaksınız ama sonunda o hatayı çözdüğünüzde sanki dünyanın en zor problemini çözmüş gibi sevineceksiniz ve gerçekten öğreneceksiniz. Önemli olan hata aldığınızda vazgeçmemek, hatanın nerede olduğunu, neden kaynaklandığını tespit edebilmek. Başlarda belki bu zor gelecek ama zamanla alışacaksınız merak etmeyin. Hatayı Google’dan arattığınızda çoğu zaman -neredeyse her zaman- karşınıza Stack Overflow adlı site gelecek. Sorunun kaynağını ve çözümünü çoğu zaman burada bulabileceksiniz. Yani hata almaktan korkmayın, zaten hata almıyorsanız ya mükemmelsiniz ya da kendinizi geliştirmiyor, yeni şeyler denemiyorsunuz demektir.

Kendi deneyimlerimden yola çıkarak bu sürecin nasıl yürütülmesi gerektiği konusunda yardımcı olmak istedim, umarım faydalı bir yazı olmuştur. Kendinizi geliştirmeyi bırakmayın :slight_smile:

7 Beğeni

Güzel noktalara değinmişsin teşekkürler :slight_smile:

1 Beğeni

Hello wold ile başlayan serüvendeki her ayrıntıyı çok güzel açıklamışsın teşekkür ederiz :slight_smile:

1 Beğeni


GaziDSC altyapı gücünü Odeaweb'ten alır.

instagram twitter telegram whatsapp youtube