İçeriğe geç
parazade

Algoritmik Düşünme Nedir?

İngilizce: Computational Thinking

Yayın: · Son güncelleme:

Algoritmik Düşünme Nedir? Kısaca

Algoritmik düşünme, bir problemi daha küçük parçalara bölüp çözümü açık, sıralı ve tekrarlanabilir adımlar hâlinde tarif etme becerisidir. Kodlamanın temelidir ama yalnızca yazılımla sınırlı değildir.

Algoritmik Düşünme nedir?
İçindekiler
  1. Algoritmik düşünme nedir?
  2. Hangi becerilerden oluşur?
  3. Nasıl geliştirilir?

Algoritmik düşünme nedir?

Algoritmik düşünme, bir işi başkasının ya da bir makinenin hatasız uygulayabileceği adımlara dökme becerisidir. İngilizcede computational thinking olarak geçer ve Türkçede bilgi işlemsel düşünme diye de anılır. Bir yemek tarifi, bir kurulum kılavuzu ya da bir adres tarifi bu düşünme biçiminin gündelik örnekleridir.

Bu beceri kodlama öğrenmekten önce gelir. Ne yapmak istediğinizi adım adım tarif edemiyorsanız, onu hangi dilde yazdığınızın önemi kalmaz.

Hangi becerilerden oluşur?

Genellikle dört temel beceriden söz edilir:

  • Ayrıştırma: büyük problemi küçük parçalara bölmek.
  • Örüntü tanıma: parçalar arasındaki benzerlikleri görmek.
  • Soyutlama: önemli ayrıntıya odaklanıp gerisini dışarıda bırakmak.
  • Algoritma tasarımı: çözümü sıralı adımlar hâlinde yazmak.

Bir örnekle bakalım. "Ay sonunda hangi harcama kalemine en çok para gitti?" sorusunu düşünün. Önce tüm harcamaları listelersiniz.

Sonra her birini kategoriye ayırırsınız. Ardından kategorilerin toplamını hesaplar ve en büyüğünü bulursunuz. Bu dört adım, hem Excel'de hem de bir programda aynen uygulanabilir.

Nasıl geliştirilir?

Gündelik işleri adım adım yazmayı deneyin. Sabah rutininizi ya da bir faturayı ödeme sürecinizi "eğer ... ise ... yap" yapısıyla kâğıda dökün. Eksik adımları fark ettiğiniz an, algoritma tasarımını pratik ediyorsunuz demektir.

Akış şemaları ve sözde kod bu beceriyi görselleştirmenin iyi yollarıdır. Mantık bulmacaları ve blok tabanlı kodlama oyunları da özellikle yeni başlayanlar için eğlenceli bir alıştırma sunar.

Sıkça Sorulan Sorular

Algoritmik düşünme yalnızca yazılımcılar için mi?

Hayır. Bir süreci adımlara ayırmak muhasebede, proje yönetiminde ve no-code otomasyon kurarken de işe yarar. Yazılımcılar için ise temel bir yetkinliktir.

Algoritma ile program arasındaki fark nedir?

Algoritma bir problemi çözmek için izlenecek adımların tarifidir ve dilden bağımsızdır. Program ise bu tarifin belirli bir programlama diliyle yazılmış, bilgisayarın çalıştırabileceği hâlidir.

İlgili terimler

Kodlama Eğitimi(Coding Education)Kodlama eğitimi, bilgisayara ne yapacağını anlatan komutları yazmayı ve problem çözme becerisini öğreten eğitimdir. Çocuklar için blok tabanlı araçlarla, yetişkinler için çoğunlukla bir programlama diliyle başlar.Sözde Kod(Pseudocode)Sözde kod (pseudocode), bir algoritmanın adımlarını belirli bir programlama dilinin kurallarına bağlı kalmadan, sade ve yapılandırılmış bir dille yazma yöntemidir. Kod yazmadan önce mantığı planlamak için kullanılır.Akış Şeması(Flowchart)Akış şeması (flowchart), bir algoritmanın ya da iş sürecinin adımlarını standart şekiller ve oklarla görsel olarak gösteren diyagramdır. Kod yazmadan önce mantığı planlamak ve süreci başkalarına anlatmak için kullanılır.Programlama(Programming)Programlama, bir problemi bilgisayarın uygulayabileceği net ve sıralı adımlara bölüp bu adımları bir programlama diliyle yazma işidir. Ortaya çıkan talimatlar dizisine program denir.Kurulum(Installation)Kurulum, bir yazılımın bilgisayara, telefona ya da sunucuya yüklenip çalışmaya hazır hâle getirilmesi işlemidir. Dosyaların kopyalanmasını, ayarların yapılmasını ve gerekli bileşenlerin yüklenmesini kapsar.Kodlama(Coding)Kodlama, bir işin nasıl yapılacağını programlama dilinin kurallarına uygun komutlarla yazma işidir. Yazılan metne kod denir ve bilgisayar bu kodu çalıştırarak istenen işlemi yapar.Soyutlama(Abstraction)Soyutlama (abstraction), programlamada karmaşık ayrıntıları gizleyip kullanıcıya yalnız ihtiyaç duyduğu işlevleri sade bir biçimde sunma ilkesidir. Nesne yönelimli programlamada soyut sınıflar ve arayüzlerle uygulanır.