Yorumlayıcı, kaynak kodu kısım kısım ele alarak doğrudan çalıştırır. Yorumlayıcılar standart bir çalıştırılabilir kod üretmezler. Yorumlama işlemi aşama aşama yapılmadığı için genellikle ilk hatanın bulunduğu yerde programın çalışması kesilir. Derleyicilerin tersine kodun işlenmeyen satırları üzerinden hiç geçilmez ve buralardaki hatalar ile ilgilenilmezler. Yorumlayıcılar genelde kaynak koddan, makine diline anlık olarak dönüşüm yaptıkları için, derleyicilere göre daha yavaş çalışırlar. Ayrıca kodu iyileştirme (optimizasyon) imkanı da çoğu zaman yoktur.
17 Ekim 2016 Pazartesi
Derleyici (Compiler) nedir?
Derleyici, yazılan programın kaynak kodunu okuyup içerisinde mantıksal veya yazınsal hatalar olup olmadığını bulan, bulduğu hataları kullanıcıya göstererek programın düzeltilmesine yardım eden, hata yoksa programın çalıştırılması öncesinde kaynak kodu makine diline çeviren bir yazılımdır.
IDE Nedir? (Integrated Development Environment – Tümleşik Geliştirme Ortamı)
IDE bilgisayar programcılarının hızlı ve rahat bir şekilde program geliştirebilmesini amaçlayan, geliştirme sürecini organize edebilen birçok araç ile birlikte geliştirme sürecinin verimli kullanılmasına katkıda bulunan araçların tamamını içerisinde barındıran bir yazılım türüdür.
Tümleşik geliştirme ortamlarında olması gerekli en temel özellikler aşağıdaki gibidir:
Programlama diline göre sözdizimi renklendirmesi yapabilen kod yazım editörü.
Kod dosyalarının hiyerarşik olarak görülebilmesi amacıyla hazırlanmış gerçek zamanlı bir dizelge.
Tümleşik bir derleyici, yorumlayıcı ve hata ayıklayıcı.
Yazılımın derlenmesi, bağlanması, çalışmaya tümüyle hazır hale gelmesi ve daha birçok ek işi otomatik olarak yapabilmek amacıyla küçük inşa araçları.
En bilinen tümleşik geliştirme ortamları: Eclipse, Microsoft Visual Studio, Code::Blocks, Dev-C++, Anjuta, KDevelop, NetBeans…
Bilgisayarınızda yukarıdaki programlar olmadanda farklı dillerde geliştirilen kodları online olarak çalıştırabilirsiniz. Tek yapmanız gereken aşağıdaki online ide sitesine gidip, hangi dilde kod yazacağınıza karar verip kodları yazmak ve arkasından sitede sağ tarafta görülen yeşil Run tuşuna tıklamak. Yazdığınız kodlarda hata yakso kodlarınız direk o site üzerinden derlenerek çalışacaktır.
Online ide: https://ideone.com/
Programlama Nedir?
Bir programı oluşturabilmek için gerekli komutların belirlenmesi ve uygun biçimde kullanılmasına programlama denir.
Programlama, bir programlama dili kullanılarak yapılır.
Bu programlama dili Java ve C# gibi yüksek seviyede bir dil olabileceği gibi C, Assembly ve bazı durumlarda makine dili de olabilir.
Yazılan kaynak kodu genellikle bir derleyici ve bağlayıcı yardımıyla belirli bir sistemde çalıştırılabilir hale getirilir. Ayrıca kaynak kodu, bir yorumlayıcı yardımıyla derlemeye gerek duyulmadan satır satır çalıştırılabilir.
Programlama aktivitesi genelde “Merhaba Dünya” (Hello World!) programı yazılmasıyla başlar.
Bir programlama dilini öğrenmekteki tek zorluk programlamanın ne olduğunu öğrenmektir. Bundan sonraki aşamalar daha basittir.
Programlama, bir programlama dili kullanılarak yapılır.
Bu programlama dili Java ve C# gibi yüksek seviyede bir dil olabileceği gibi C, Assembly ve bazı durumlarda makine dili de olabilir.
Yazılan kaynak kodu genellikle bir derleyici ve bağlayıcı yardımıyla belirli bir sistemde çalıştırılabilir hale getirilir. Ayrıca kaynak kodu, bir yorumlayıcı yardımıyla derlemeye gerek duyulmadan satır satır çalıştırılabilir.
Programlama aktivitesi genelde “Merhaba Dünya” (Hello World!) programı yazılmasıyla başlar.
Bir programlama dilini öğrenmekteki tek zorluk programlamanın ne olduğunu öğrenmektir. Bundan sonraki aşamalar daha basittir.
Program Nedir?
Var olan bir problemi çözmek amacıyla bilgisayar dili kullanılarak oluşturulmuş anlatımlar (komutlar, kelimeler, aritmetik işlemler, mantıksal işlemler vb.) bütününe «program» denir.
14 Ekim 2016 Cuma
Doğrusal Arama (Linear Search)
Dizinin ilk elemanından başlanarak dizinin her elemanı, arama değeriyle karşılaştırılır. Aranan değer bulunduğunda ilgili dizi elemanının indisi değer olarak döndürülür. Aranan değer bulunamazsa -1 değeri döndürülür, Dizi herhangi bir şekilde sıralanmadığından değer ilk ya da son elemanda bulunabilir. Dolayısıyla, program ortalama olarak, arama değeriyle dizinin elemanlarının yarısını karşılaştırmalıdır.
Dizilerde Arama ve Sıralama Algoritmaları
Arama ve sıralama algoritmaları (search and sort algorithms) programlama ve yazılım geliştirme dünyasında hem akademik hem de endüstri açısından önemli bir yere sahiptirler. Özellikle büyük veri kaynakları ile çalışırken, aradığınız veriye en hızlı şekilde ulaşmanız doğru algoritmayı kullanmanıza bağlıdır.
Dizilerde Arama
Bir dizinin, belli bir arama değerine eşit olan bir değer içerip içermediğine karar vermek gerekebilir.
Dizinin belirli bir elemanını bulma sürecine arama denir.
Ders kapsamında iki tane arama tekniği üzerinde durulacaktır:
Doğrusal Arama (Linear / Sequential Search)
İkili Arama (Binary Search)
Dizilerde Arama
Bir dizinin, belli bir arama değerine eşit olan bir değer içerip içermediğine karar vermek gerekebilir.
Dizinin belirli bir elemanını bulma sürecine arama denir.
Ders kapsamında iki tane arama tekniği üzerinde durulacaktır:
Doğrusal Arama (Linear / Sequential Search)
İkili Arama (Binary Search)
Dizi Kullanımlarında Dikkat Edilmesi Gereken En Önemli Nokta!
Dizi boyunca döngü kullanırken dizi indisi asla 0’ın altına inmemeli ve her zaman dizideki toplam eleman sayısından az olmalıdır (büyüklük-1).
Döngü devam şartının bu aralığın dışındaki elemanlara ulaşılmasını engellediğinden emin olmamız gereklidir.
Dizi sınırlarının dışındaki elemanları kullanmanın yaratacağı hatalar (genelde ciddi hatalardır) sistemden sisteme farklılık gösterir.
Döngü devam şartının bu aralığın dışındaki elemanlara ulaşılmasını engellediğinden emin olmamız gereklidir.
Dizi sınırlarının dışındaki elemanları kullanmanın yaratacağı hatalar (genelde ciddi hatalardır) sistemden sisteme farklılık gösterir.
Dizilere Başlangıç Değeri Verme
Bir dizi, doğal olarak bazı veriler içerecektir. Diziye aynı anda birden fazla değer atanabilir. Bunun için söz konusu değerler { } işaretleri arasında virgül ile ayrılarak yazılırlar.
Örnek:
float kutle[5] = { 8.471, 3.683, 9.107, 4.739, 3.918 };
int maliyet[3] = { 25, 72, 94 };
double a[4] = { 10.0, 5.2, 7.5, 0.0};
Küme parantezleri sonlandırıcı ; karakteri ile bitmektedir. Bir dizinin uzunluğu belirtilmeden de başlangıç değeri atamak mümkündür.
Örnek:
int a[] = { 100, 200, 300, 400 };
float v[] = { 9.8, 11.0, 7.5, 0.0, 12.5};
Derleyici bu şekilde bir atama ile karşılaştığında, küme parantezi içindeki eleman sayısını hesaplar ve dizinin o uzunlukta açıldığını varsayar.
Yukarıdaki örnekte, a dizisinin 4, v dizisinin 5 elemanlı olduğu varsayılır. Dizilere başlangıç değeri atarken, tüm elemanlara değer vermeden de atama yapmak mümkündür.
Örnek:
int sayilar[20] = {0};
Tüm dizi elemanlarına 0 değeri atanır…
int sayilar[20] = {1, 2, 3};
Dizinin ilk 3 elemanına 1, 2 ve 3 değerleri atanır. 4’ten itibaren olan dizi elemanlarına 0 değeri atanır…
Sayısal tipteki dizi elemanlarına 0 değeri, metin tipindeki dizi elemanlarına NULL değeri atanır.
Örnek:
float kutle[5] = { 8.471, 3.683, 9.107, 4.739, 3.918 };
int maliyet[3] = { 25, 72, 94 };
double a[4] = { 10.0, 5.2, 7.5, 0.0};
Küme parantezleri sonlandırıcı ; karakteri ile bitmektedir. Bir dizinin uzunluğu belirtilmeden de başlangıç değeri atamak mümkündür.
Örnek:
int a[] = { 100, 200, 300, 400 };
float v[] = { 9.8, 11.0, 7.5, 0.0, 12.5};
Derleyici bu şekilde bir atama ile karşılaştığında, küme parantezi içindeki eleman sayısını hesaplar ve dizinin o uzunlukta açıldığını varsayar.
Yukarıdaki örnekte, a dizisinin 4, v dizisinin 5 elemanlı olduğu varsayılır. Dizilere başlangıç değeri atarken, tüm elemanlara değer vermeden de atama yapmak mümkündür.
Örnek:
int sayilar[20] = {0};
Tüm dizi elemanlarına 0 değeri atanır…
int sayilar[20] = {1, 2, 3};
Dizinin ilk 3 elemanına 1, 2 ve 3 değerleri atanır. 4’ten itibaren olan dizi elemanlarına 0 değeri atanır…
Sayısal tipteki dizi elemanlarına 0 değeri, metin tipindeki dizi elemanlarına NULL değeri atanır.
Kaydol:
Kayıtlar (Atom)