20 Temmuz 2019 03:48

Programlamaya nereden başlamalı-IV

Paylaş

Son iki yazıda bir programlama dili seçebilmenizi kolaylaştırmak üzere popüler programlama dillerine hızlıca bir göz atmıştık. Eğer bir dil seçtiyseniz bugün nasıl ilerleyeceğimizi konuşacağız.

Programlama dili öğrenmek deyince ilk akla gelen genelde gidip bir kursa yazılmak olsa da kurslar çoğu kişi için ya saatleri nedeniyle ya da maddi olanaklar nedeni ile gerçekçi bir çözüm olmuyor. Öte yandan bir programlama dilini düzgünce öğrenebilmek için bir kursa gitmeniz şart değil. Biraz disiplin ve ısrar ile dil öğrenmenizi sağlayabilecek çok sayıda kaynak var. Seçtiğiniz dilde programlamaya giriş için yazılmış bir kitap edinebilir, çevrimiçi ücretli/ücretsiz derslerden veya seçtiğiniz dile dair webde yazılmış materyallerden yararlanabilirsiniz. Eğer programlamaya çok yabancı hissediyorsanız çocuklara programlama öğretmek üzere tasarlanmış materyallere göz atmaktan çekinmeyin. Bu tip materyaller bazı temel bilgileri hızlıca kavramanızı sağlayabilir.

Kitaplar ya da çevrimiçi materyaller yardımı ile seçtiğiniz dilin koşullar ve döngüler gibi temel yapılarını ve söz dizimini kolayca öğrenebilir, salt bunları kullanarak bile irili ufaklı programlar yazabilirsiniz. Ancak esas zorluk bundan sonrasında başlıyor. Bir kodda herhangi bir görevi tek başına yerine getirebilen en küçük parçayı ele alalım. Bu basit görev -örneğin bir listeyi sıralamak- muhtemelen daha önce milyon programcının karşısına milyon kere çıktı. Ve bunu çözmek üzere de farklı farklı metotlar ya da programlamada daha yaygın kullanılan adıyla algoritmalar geliştirildi. En çok karşılaşılan problemlere karşı bu algoritmaların da en yaygınlarını bilmek hız ve verimlilik açısından oldukça önemli. Yan yana duran on kişiyi boylarına göre sıraladığınızı düşünün. Herkesi tarayıp en kısayı en başa geçirip sonra kalan dokuz kişiyi tarayıp bunların en kısasını ikinci sıraya geçirip bu şekilde devam edebilirsiniz. Ya da ilk kişiden başlayarak herkesi sırayla yeni bir sıradaki doğru yerine koymayı deneyebilirsiniz. Ya da sıralama düzgün hale gelene kadar yan yana duran ikilileri kıyaslayarak yerlerini değiştirebilirsiniz…

Her birinin farklı avantajları/dezavantajları olan, çeşitli alanlarda kullanılan onlarca sıralama algoritması mevcut. Elinizdeki verinin uzunluğu ve yapısına uygun olmayan bir algoritmayı seçmeniz halinde hele ki sıralanacak öğe sayısı yüksek ise sıralama süresi fazlasıyla uzayabilir. Algoritmaların ne kadar fark yaratabileceğini görmek için yaygın kullanılan bazı sıralama algoritmalarını görselleştiren şu videoya [0] bakabilirsiniz. Hangi soruna, hangi veriye hangi algoritmayla yaklaşmanız gerektiğini bilmek programlamada daha hızlı ve daha doğru yol almanızı sağlayacağı gibi başka sorunları nasıl çözebileceğimizi kavrayabilmek açısından da çeşitli algoritmaları anlayabilmenin oldukça faydası olacaktır.

[0] http://bit.ly/2GjTd0h

DİĞER YAZILARI
Sefer Selvi Karikatürleri
Evrensel Gazetesi Birinci Sayfa