Merhaba,
Algoritmayı geliştirmek için öncelikle algoritmanın ne kadar önemli olduğunu anlamamız lazım. Bilgisayar, yazılım mühendislikleri, bilgisayar programcılığı gibi bölümlerde ilk haftalarda işlenen konu genel itibari ile algoritmadır. Algoritma yazılımın temel taşı olduğu gibi "problemleri çözme" ilkesini yerine getiren husustur. Bu nedenle yazılımda yeri çok mühimdir. Zira algoritma bilmeden problemleri çözmeniz, anlamamız çok güç olacaktır.
Algoritma sadece yazılımda değil aslında hayatımızın her anında bizimle. Bilgisayarı açmamız, ayağa kalkmamız, nefes alıp vermemiz bile bir algoritma eşliğinde olur. Algoritmalar çeşitlendirilebilir. Bir insan farklı kombinasyonlar ile su içebilir ama unutmayın ki sonuç hep aynıdır. Yazılımda da çözümler farklı olabilir fakat sonuç her zaman aynı değeri vermektedir. Bir insanın ayağa kalkmasını ele alalım. Otururken ayağa kalkması, uzanırken ayağa kalkması, bir anda zıplayarak ayağa kalkması... gibi çoğaltılabilir. Sonuçların her zaman ayağa kalkmak olduğunu gördük fakat burada dikkatinizi çekmesi gereken bir husus var. Zıplayarak ayağa kalktığımızda, aniden ayağa kalktığımız için baş dönmesi yapabilir. Sonuç ayağa kalkmak olsa da pekte sağlıklı bir sonuç olmadı. Bu olay neticesinde anlamamız gereken aslında farklı algoritma kombinasyonları aynı sonucu verse de bizim en sağlıklı algoritmayı oluşturmamız gerekir. Bunun içinde algoritmamızı geliştirmek gerekir. Algoritmayı geliştirmek için birçok uygulama mevcut. Bu uygulamalar ile antrenman yapabilirsiniz fakat unutulan bir şey mevcut. Henüz değişken, atama, şartlı dallanma gibi terimlere hakim olmadan bu uygulamaları kullanmak sizi biraz zorlayacaktır. Hiç bilginiz yok ise yapmanız gereken ilk olarak yazılımın ne olduğunu, nasıl çalıştığını, çalışma prensiplerini kısaca anlamanıza yarayacak makaleler, animasyonlar, videolar izlemek. Sonrasında başlangıç algoritma videoları, makalelerini okuyarak terimlere hakim olmanız gerekir. Terimlere hakim olduktan sonra ise aşağıda vereceğim 2 uygulamadan birini kullanarak sizlerde kendi problemleriniz için çözüm odaklı algoritmalar geliştirebilirsiniz. Peki bu problemler nelerdir? Aslında bilgisayara yaptırtmak istediğimiz her şey bir problem olarak gösterebiliriz. Örneğin; iki sayının toplamını veren algoritma. Bizim bu problemin sonucunu öğrenmemiz gerektiği için temel mentalitesinde çözüme kavuşmamız gerekecek. Bu nedenle bu tip sorular kendimize sorarak antrenman yapıp, her soruyu zorlaştırmamız gerekir. Örneğin; girilen sayının asal sayı olup, olmadığını kontrol edin gibi bir problemi çözmek için algoritma geliştirebiliriz. Bu algoritma tasarımları hemen hemen her gün yaparak, sıkılmadan, belirli bir süre sonra temel mantığın aklınıza yerleştiğini göreceksiniz. Sonrasında ise konsol dediğimiz (siyah ekranda çıktı veren uygulamalar) uygulamalar geliştirerek kendi bilginize biraz daha potansiyel eklemiş olacaksınız. Bu adımlardan sonra normal uygulama geliştirerek önünüze çıkan hatalara çözüm arayarak algoritmanızı siz istemeden bile geliştirmiş olacaksınız.
Sözün özü; algoritma her zaman hayatımızda yer alır. Bunu yazılımdan öte aslında hayatımızın temel kilit taşı olarak görebilir, hayatınızda çıkan sorunları algoritma kombinasyonları ile çözüme kavuşturabilirsiniz.
Bahsettiğim uygulamalar:
Flowgorithm
Flow Chart Visual Programming Rar Şifresi: saglamindir.net
Başarılar,
İyi çalışmalar.