Yazılıma yeni başlayanların en çok sorduğu sorulardan biri şu:
“Bir yazılımcı gibi düşünmek ne demek?”
Bana göre bu, karmaşık matematikler yapmak ya da her şeyi ezberlemek değildir. Yazılımcı gibi düşünmek, probleme yaklaşma biçimini değiştirmektir.
Problemi Parçalayabilmek
Bir yazılımcı, karşısına çıkan büyük bir problemi tek parça olarak görmez. Onu küçük, yönetilebilir parçalara ayırır.
Örneğin:
“Bir uygulama yapacağım” demek yerine
-
Kullanıcı girişi
-
Veri kaydetme
-
Ekran gösterimi
gibi parçalara böler.
Bana göre bu bakış açısı, yazılımcılığı öğrenmenin temelidir.
“Nasıl Çalışıyor?” Sorusunu Sormak
Yazılımcı gibi düşünen biri, bir şey çalıştığında yetinmez.
“Neden çalışıyor?” ve “nasıl çalışıyor?” diye sorar.
Bir buton tıklandığında ne oluyor?
Arka planda hangi adımlar gerçekleşiyor?
Bu merak, insanı sadece kullanıcı olmaktan çıkarıp üretici yapar.
Hataları Doğru Okuyabilmek
Yazılımcı gibi düşünmek, hata görünce paniklemek değil; onu bir ipucu olarak görmek demektir.
Hata mesajı:
-
Düşman değil
-
Yol göstericidir
Bana göre yazılımcı ile yeni başlayan arasındaki fark, hataya verdikleri tepkide ortaya çıkar.
Mantık Kurmak, Ezberden Kaçmak
Kod yazarken ezber işe yarar gibi görünür ama uzun vadede tıkar. Yazılımcı gibi düşünen biri, kodu ezberlemez; mantığını anlar.
“Bu kod neden burada?”
“Bu koşul olmasa ne olur?”
Bu sorular, düşünme şeklini değiştirir.
Çözüm Odaklı Olmak
Yazılımcı gibi düşünen biri, sorunlara takılıp kalmaz.
“Bu neden bozuk?”tan çok
“Bunu nasıl çözerim?” diye düşünür.
Google kullanmak, Stack Overflow okumak, dokümantasyon karıştırmak bu işin bir parçasıdır. Yardım almak zayıflık değil, süreçtir.
Sabırlı ve Sistemli Olmak
Yazılım hızlı öğrenilen bir alan değildir. Yazılımcı gibi düşünen biri bunu kabul eder.
-
Her gün az da olsa kod yazar
-
Küçük ilerlemeleri önemser
-
Süreci aceleye getirmez
Bana göre sabır, yazılımcının görünmeyen ama en önemli yeteneğidir.
Soyut Düşünebilmek
Kod yazmak sadece ekranda gördüğümüz şeyler değildir. Arka planda akan bir mantık vardır.
Veri akışı, koşullar, durumlar…
Yazılımcı gibi düşünen biri, kodu kafasında canlandırabilir.
Bir Cevap Yaz
E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir.