29 Ocak 2016 Cuma

Algoritma Nedir?

 Programlamaya başlamanın ilk adımı algoritma sistemlerini öğrenmektir.Algoritma kelime manası olarak,matematikte ve bilgisayar biliminde bir işi yapmak için tanımlanan,bir başlangıç durumundan başladığında,açıkça belirlenmiş bir son durumunda sonlanan,sonlu işlemler kümesidir.Kısaca karşılaşılan bir problemi çözmek için gideceğimiz yolları belirleyen bir planlar bütünüdür.Aslına bakılırsa her insan bir sorunla,problemle karşılaştığı zaman farkında olmadan algoritmik düşünce sistemi ile çözüme gider.
 Tabi ki programlama alanında ki algoritma biraz daha farklıdır.Programı yapılacak olan problemin kod yazımına başlanmadan önce kesinlikle algoritma şeması çıkarılmalıdır.Yani filmlerde gördüğümüz bilgisayar başına oturup takır takır kod yazan arkadaşlar gerçekte yok denecek kadar azdır.
 Algoritma sistemleri programlama dilinde genel olarak şema şeklinde dikkate alınır.Klasik bir algoritma şeması;başlangıç noktası,girdi noktası,atama noktası,işlem noktası,sorgu noktası ve sonuç çıktı noktası ile oluşturulur.
  Algoritma akış şemalarında yaygın olarak kullanılan sembollerin bazıları şu şekildedir.
  1.Sembol:"Başla-Bitir" sembolü olarak tanımlanır.Akış şemasının başlangıç ve bitiş noktalarının gösteriminde kullanılır.
  2.Sembol:"İşlem" sembolü olarak tanımlanır.Akış şemasında problemin çözümüne dair belirlenen işlemlerin tamamının yapıldığı kısımdır.
  3.Sembol:"Koşul" sembolü olarak tanımlanır.Problemin işlevsel bir çözüme sahip olması için bazı kararlara bağlı olarak farklı yolların izlenebileceği durumlarda kullanılır.
  4.Sembol:"Veri Atama" sembolü olarak tanımlanır.Eğer işlem satırlarında bazı işlemlerin saklanması gerekiyorsa bu saklama alanı verilerinin girdisinin yapıldığı kısımdır.Her veri için farklı bir veri adı tanımlanmalıdır.
  5.Sembol:"Döküman" sembolü olarak tanımlanır.Sorunun çözümü sonucunda çıktı olarak gösterilmek istenen veriler yada işlemlerde bu sembol kullanılır.
  6.Sembol:"Bağlantı" sembolü olarak tanımlanır.Büyük yazılımlar için hazırlanan akış şemalarında karışıklığın ortadan kalkması ve anlaşılabilirliğin artması için 2 farklı nokta arasında bağlantı işlevi görür.

















Bir sonra ki yayında ise sinüs ve cosinüs trigonometrik fonksiyonlar denklemlerinin programlama dilleri için akış şeması sizinle olacaktır. 



                  
                                                
                                                                                                                         




28 Ocak 2016 Perşembe

Yazılım Nedir?

 En basit tanımı ile yazılım,bilgisayar sistemlerinde kullandığımız her şeydir.İnternette gezinmek için açtığımız Web tarayıcı yada vakit geçirmek için oynadığımız küçüklü büyüklü oyunlar.Hepsi temelinde birer yazılımdır.Bilgisayar sistemleri dediğimizde aklımıza gelen ve gelecek her şey yazılımlar ile yapılır.İnsan hayatına girişi ise yaklaşık olarak bilgisayarın bulunmasına tekabül eder.Yazılım dendiğinde insanların kafasında oluşan karmaşıklık anlamsızdır bir bakıma.Çünkü binlerce yıldır Dünya'da olan insanoğlunun varoluşundan beri yaptığı düşünme ve uygulama sistemini bilgisayar sistemlerine yazılım ile yaptırırız.Bir bakıma yazılım insan ile bilgisayar arasında ki iletişim dilidir.
 Bahsettiğimiz bu iletişim ise programlama dilleri ile kurulur.Yazılıma yeni merak salmış her insanın aklına gelen ilk soru programlama dilleri ile neler yapılabilirdir.Gelelim bu sorunun cevabına.
 Aslına bakılırsa programlama dilleri bir blokta yazılarak anlatılacak kadar kısa ve sade programlar değildirler.Ancak basit bir şekilde anlatmaya çalışırsak eğer programlama dilleri,yapmasını istediğimiz şeyleri bizim dilimizden bilgisayar diline çeviren derleyicilerdir.Bu programlama dilleri ile kendi işinize yarayacak bir Web sitesi oluşturabilir ve tasarım yapabilirsiniz.İleri seviyede öğrenilen bir C# dili ile çok alımlı otomasyon ve kayıt sistemleri yapabilirsiniz.Vakit öldürmek için küçük mobil oyunlar yapabilirsiniz.Hatta hayatınızı idame ettirmek isterseniz büyük çaplı oyun motorları ve yazılım bilgisi ile oyunlar yapıp satabilirsiniz.Aslına bakılırsa programlama dilleri ile aklınıza gelebilecek hemen hemen her şey yapılabilir.Bu kadar yeteneği olan dillerin bir çok çeşidi vardır.Fakat hepsinin temel mantıkları aynıdır.Bu mantığı kavradığımızda aslında insanların düşünce sisteminden çokta farklı olmadığını görürüz.
 Bu blogu ise yazılımla tanışmak isteyen yada tanışmış ve kendini geliştirmek isteyen dostlarımıza yol göstermek bir nebze yardım etmek için ve en güzeli de programlama dersi alıp örnekleri çözemeyen,delirmelerine ramak kalmış mühendis kardeşlerime yardım etmek için ortaya koyuyorum.
 Sevgilerimle.
 In code we trust...