PROGRAMLAMAYA GİRİŞ Öğr. Gör. Ayhan KOÇ Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay., 2007 Algoritma ve Programlamaya Giriş, Ebubekir YAŞAR, Murathan Yay., 2011 Örneklerle Algoritma ve C# Programlama, Erhan ARI, Seçkin Yayıncılık, 2014 Ders İçeriği (YÖK, 2006) Algoritmaya giriş, akış şemaları ile problem çözme, çalışma zamanı ve kompleksite kavramları, sıralama algoritmaları, özyineleme ve ikili ağaç gösterimleri, indirgeme bağlantıları, veri yapılarında ikili arama teknikleri, matrisler ve matrisler üzerine işlemler. Programlama dillerinde temel kavramlar: Atom, nesne, ifade, deyim, bildirim, tanımlama, sabit kavramları ve uygulamaları. Sayı sistemleri, fonksiyonlar, başlık dosyalarının kullanımı. Faaliyet alanı ve ömür. Global ve local (yerel) değişkenler. Operatörler: Aritmetik, mantıksal, karşılaştırma, gösterici (Pointer), bitsel ve diğer operatörler. Kontrol deyimleri (if, if/else) ve iç içe kullanımları. Döngü deyimleri (while, do/while, for); Sonsuz döngü kavramı ve kullanım alanları; İç içe döngüler. Programlama dilinde verimlilik ve okunabilirlik. Programlama dilinin standart fonksiyonları ve bu fonksiyonların oluşturulması. Tür dönüşümleri. Rasgele sayı üretimi ve kullanım alanları. Diziler ve dizilerle ilgili algoritmalar. Dosya işlemleri. 1
Ders Bilgileri Teori Uygulama Kredi ACTS 3 2 4 8 Değerlendirme Vize % 40 Final % 60 Devamsızlık 14 Hafta % 20 15 saat Programcılık? 4 2
Programcılık 5 Bilgisayar nedir? En kısa şekilde bilgisayar bilgi işleyen makine olarak tanımlanabilir. Verilen giriş değerlerini, belirtilen yöntemlerle işleyerek istenilen sonuçları üreten kompleks bir elektronik sistemdir. 6 3
Program nedir? Problemin çözümüne yönelik gerekli işlem adımlarını sırasıyla işlemciye yaptıran kod bloklarına program denir. (Bu kodlar işlemciye tanımlı kodlardır. ) Bunların belirli bir mantıkla, problemleri çözebilecek şekilde sıralanması ile oluşan kod blokları programın yapısını oluşturmaktadır. 7 Program nedir? Program; giriş değerlerini kullanarak istenilen çıkış değerlerinin elde edilebilmesi için bilgisayara iletilen komutlar dizisidir. Bilgisayar Veri Program İnsan Sonuç İnsanla bilgisayar arasındaki iletişim aracıdır. 8 4
Programlama Dili Programlama dili; programcı ile bilgisayar arasındaki iletişimi sağlayan bir araç olup programların yazımında kullanılan bir oluşumdur. 9 Programlama Dili Türleri Makine dili : Bir ve sıfırların bir araya gelmesi ile oluşur. Hangi işlemci için yazılmışsa o işlemci ile uyumlu çalışır. Düşük seviyeli diller: Makine dillerini içerir ve sembolik kodlardan oluşur. Assembly kod yazmak için donanım bilgisi gerekir. http://www.enginkuzu.org/assembly01.php Orta seviyeli diller: Assembly diline göre program geliştirmek biraz daha kolaydır ve donanıma bağlı değildir. C, C++ Yüksek seviyeli diller: Konuşma diline yakın dilleri içerir. Program yazılması kolaylıkla öğrenilebilir. 10 5
**Hatırlatma** Yüksek seviyeli dillerde yazılan programların çalışabilmesi için makine diline dönüştürülmesi gerekmektedir. Bu dönüşümü sağlayan yazılımlara da derleyici denir. Not: C# programlama dilinin derleyicisi csc.exe dir. 11 Visual Basic Microsoft un az zamanda çok iş başarmak isteyen az tecrübeli programcıları hedefleyerek piyasaya sürdüğü, dünyanın en popüler dillerinden biridir. 12 6
Delphi Pascal dilinin Windows ortamında görselleştiril hali olarak tanımlanabilir. 13 Java C++ ile ciddi benzerlikler gösterdiği için, birçok programcı tarafından kolay bir şekilde öğrenile bilmektedir. 14 7
C #.Net in desteklediği diller arasında programcıların en severek kullandığı dil olma özelliğine sahip. C++ ın bir sonraki kuşağı olarak anılsa da, yapı itibariyle Java ile ciddi benzerlikler göstermekte. 15.NET üzerinde C++, C#, Java, Visual Basic gibi dillerin imla kurallarıyla uygulama geliştirilebilen bir platformdur. 16 8
.Net Framework C# programları, ortak dil çalışma zamanı modülü (CLR) olarak adlandırılan sanal yürütme sisteminin ve birleştirilmiş sınıf kitaplıkları kümesinin dahil olduğu, Windows'un tümleşik bir bileşeni olan.net Framework üzerinde çalışır. CLR, Microsoft'un ortak dil altyapısının (CLI) kurumsal uygulamasına yönelik, diller ve kitaplıkların birlikte sorunsuz çalıştığı yürütme ve geliştirme ortamları oluşturmak için temel olan uluslararası bir standart uygulamasıdır. https://msdn.microsoft.com/tr-tr/library/ 9