2006 Pearson Education, Inc. All rights reserved. Görsel C# ile Windows Programlama Güz 2009 (2. Hafta)
2006 Pearson Education, Inc. All rights reserved. 2 Bilgisayar Nedir? Bilgisayar ─İnsanoğlundan milyarlarca kez daha hızlı matematiksel işlemler yapar ve lojik kararlar alır. Bilgisayar Programı ─Bir bilgisayarın veri işleyebilmesini sağlayan komutlar kümesidir. Donanım (Hardware) ─ Bir bilgisayar sisteminin fiziksel bileşenleridir. (Örnek: Klavye) Yazılım (Software) ─Bir bilgisayarın çalıştırdığı programlardır. (Örnek: Microsoft Word)
2006 Pearson Education, Inc. All rights reserved. 3 Bilgisayar Organizasyonu Bir bilgisayarın 6 ana bileşeni ─Giriş Birimi (Input Unit) Klavye, fare ─Çıkış Birimi (Output Unit) Monitör, yazıcı, hoparlör ─Bellek (Memory Unit) ─Aritmetik İşlem Birimi (Arithmetic and Logic Unit (ALU)) ─Merkezi İşlem Birimi (Central Processing Unit (CPU)) ─İkincil Depolama Ünitesi (Secondary Storage Unit) Hard disk
2006 Pearson Education, Inc. All rights reserved. 4 Programlama Dilleri Makine Dilleri (Machine Languages) ─Makine bağımlı (Machine-dependent) Assembly Dilleri (Assembly Languages) ─Assemler gerekli Yüksek Seviyeli Diller (High-level Languages) ─Derleyici (compiler) gerekli
2006 Pearson Education, Inc. All rights reserved. 5
6 C# C, C++ ve Java dillerinin birleşimidir denebilir. Çok güçlü bir sınıf kütüphanesine sahiptir.
2006 Pearson Education, Inc. All rights reserved. 7
8 Microsoft Visual Studio 2008 Microsoft firmasının program geliştirme ortamıdır. (Integrated Development Environment (IDE)) Program yazma, derleme, çalıştırma, hata ayıklama
2006 Pearson Education, Inc. All rights reserved. 9 Konsol Uygulaması Program giriş ve çıkışları bir konsol (komut) penceresi üzerinden gerçekleşir.
2006 Pearson Education, Inc. All rights reserved. 10 Welcome1.cs
2006 Pearson Education, Inc. All rights reserved. 11 Açıklayıcı satırlar (Comments) // ile başlar. Programın işleyişine katkıda bulunmazlar. Kodun anlaşılmasını kolaylaştırırlar. Birkaç satıra açıklama yazmak için: /*... */ /* Birkaç satıra açıklama yazmak için kullanabilirsiniz */ 1 // Welcome1.cs 2 // Text-printing application.
2006 Pearson Education, Inc. All rights reserved. 12 using Önceden tanımlanmış (pre-defined) sınıfların kullanılabilmesine imkan verir. Derleyiciye programcının kullanmak istediği sınıfı (class) bulma noktasında yardımcı olur. Sınıflar isim uzayları (namespace) altında organize edilirler.NET’in isim uzayları Framework Class Library (FCL) olarak adlandırılır. 3 using System;
2006 Pearson Education, Inc. All rights reserved. 13 Boş satır Programın daha kolay okunabilmesini ve anlaşılabilmesini sağlar. Boş satırlar derleyici tarafından dikkate alınmazlar. Welcome1 adındaki sınıfın (class) deklarasyonunu gerçekleştirir. Herbir C# programı en azından bir adet kullanıcı tanımlı sınıfa (user- defined class) MUHAKKAK sahip olmalıdır. class anahtar kelimesini müteakip sınıfın adı yazılmalıdır. Sınıflar adlandırılırken herbir kelimenin ilk harfi büyük olmalı ve kelimeler bitişik yazılmalıdır. (Pascal notasyonu) OrnekSinifAdi 4 5 public class Welcome1
2006 Pearson Education, Inc. All rights reserved. 14
2006 Pearson Education, Inc. All rights reserved. 15 Hatırlatma.cs uzantılı program dosyanızın adı ile program içerisinde kullandığınız sınıfınızın adının aynı olmasına dikkat ediniz.
2006 Pearson Education, Inc. All rights reserved. 16 Her sınıfın gövdesi { ile başlar ve } ile biter. 6 { 12 } // end class Welcome1
2006 Pearson Education, Inc. All rights reserved. 17 Hatırlatma Açtığınız her parantezi { hemen kapatırsanız } ve daha sonra parantezler arasına yapmak istediğiniz komutları eklerseniz hata yapma oranınız azalır. Açılan her parantezin muhakkak kapatılması gerektiğini, aksi takdirde programınızın hata vereceğini unutmayınız.
2006 Pearson Education, Inc. All rights reserved. 18 Bütün C# uygulamaları çalışmaya Main fonksiyonunu işleterek başlar. Main fonksiyonu olmayan bir C# uygulaması düşünülemez. Main kelimesinin ilk harfi olan M daima büyük harfle yazılmalıdır. (C#’ın case-sensitive olduğunu unutmayınız.) Main kelimesinden sonra kullanılan normal parantezler bir fonksiyonun (metodun) varlığına işaret eder. Metodlar belirli işler yaparlar ve genelde geriye değer döndürürler. void anahtar kelimesi Main fonksiyonunun geriye hiçbir değer döndürmediğini belirtir. 7 public static void Main(string[ ] args)
2006 Pearson Education, Inc. All rights reserved. 19 Bu satır bir C# deyimidir (statement) ve her C# deyimi MUHAKKAK bir noktalı virgül ; ile sonlanmalıdır. Console.WriteLine metodu konsol penceresine (command window) bilgi yansıtmak için kullanılır. Bu örneğimizde ekrana string dediğimiz ve çift tırnak içerisinde tanımladığımız karakter dizisini basmak amacıyla kullanılmıştır. 10 Console.WriteLine( "Welcome to C# Programming!" );
2006 Pearson Education, Inc. All rights reserved. 20 Hatırlatma Herhangi bir C# deyiminin sonuna noktalı virgül eklemeyi unutmak programımızın hata vermesine neden olur.
2006 Pearson Education, Inc. All rights reserved. 21 Hatırlatma Derleyicinin vereceği bir syntax hatası hata mesajıyla belirtilen satırda olmayabilir. Bu tür durumlarda hata satırından önceki satırları kontrol etmek fayda sağlayabilir.
2006 Pearson Education, Inc. All rights reserved. 22 Partially-typed member Member list Highlighted member Tool tip describes highlighted member Visual C# Express 2008 Programının intelliSense özelliği.
2006 Pearson Education, Inc. All rights reserved. 23 Up arrow Down arrow Parameter Info window Parameter Info penceresi.
2006 Pearson Education, Inc. All rights reserved. 24 Welcome2.cs Çıktı sonrası imleç yerinde kalır. Çıktı sonrası imleç bir alt satırın başına gider. Welcome2.cs programı Welcome1.cs programı ile aynı çıktıyı verir.
2006 Pearson Education, Inc. All rights reserved. 25 Kaçış (Escape) Karakterleri Backslash ( \ ) karakterini takip ederler. Özel bir karakterin çıktısının alınacağına işaret ederler. Yeni Satır (Newline) Karakteri ( \n ) Console.Write ve Console.WriteLine metodları bu kaçış karakterini imleci bir alt satıra götürmek şeklinde yorumlarlar.
2006 Pearson Education, Inc. All rights reserved. 26 Welcome3.cs \n escape sırasının çıktıyı etkilediğine dikkat ediniz.
2006 Pearson Education, Inc. All rights reserved. 27 Bazı Yaygın Escape Sıraları
2006 Pearson Education, Inc. All rights reserved. 28 Welcome4.cs Console.WriteLine formatlanmış veriyi ekrana basar.
2006 Pearson Education, Inc. All rights reserved. 29 Console.Write ve Console.WriteLine Metodlarıyla Çıktının Formatlanması Argümanlar birbirlerinden virgül ile ayrılırlar. Writeline metodunun ilk argümanı formatlanmış stringi ifade eder. {0} ise Writeline metodunun 2. argümanını ekranda temsil eder. 10 Console.WriteLine( “{0}\n{1}”, “Welcome to”, “C# Programming” );
2006 Pearson Education, Inc. All rights reserved. 30 Addition.cs using deklarasyonu gerekli bileşenleri System isim uzayından ithal et. number1, number2 ve sum adlarında ve i nteger veri tipinde 3 değişken deklare et. Bir string olan kullanıcı girişini integer veri tipine çevir ve number1 adlı değişkene ata. Bir string olan kullanıcı girişini integer veri tipine çevir ve number2 adlı değişkene ata. number1 ve number2 değişkenlerini topla ve sonucu sum adlı değişkene ata. Formatlı çıktı olarak toplamı ekranda görüntüle.
2006 Pearson Education, Inc. All rights reserved. 31 Addition adlı sınıfı deklare eder. Dosya adı ile sınıf adının aynı oluşuna dikkat ediniz. Main fonksiyonu tanımlanır. (MUHAKKAK) Değişkenler bellekte bulunan ve değer saklama amacıyla kullanılan ünitelerdir. Her değişken kullanılmadan önce muhakkak tanımlanmalıdır ve bir isimle bir veri tipine sahip olmalıdır. Bir değişken deklarasyonu muhakkak bir noktalı virgül ile sonlanmalıdır. Değişkenlere kullanım maksatlarına uygun isimler verilmelidir. Değişkenlere ilk değer atama işlemi (initialization) deklarasyon anında da yapılabilir, daha sonra da. 5 public class Addition 6 { 8 public static void Main( string[ ] args) 9 {
2006 Pearson Education, Inc. All rights reserved. 32 int veri tipinde (data type) number1, number2 ve sum adlarında 3 değişken deklare edilir. int veri tipi tamsayı değerleri saklamak için kullanılır. (0, -4.97) float, double ve decimal veri tipleri ondalıklı sayı saklamak için kullanılırlar. (12.345) char veri tipi tek bir karakter saklamak için kullanılır. int, float, double, decimal ve char basit veri tipleridir. (built-in) Değişkenlerin kullanım amaçlarını belirtmek için açıklayıcı satırlar (comments ler) eklenebilir. Aynı veri tipine sahip birden fazla değişken birbirlerinden virgülle ayrılarak topluca deklare edilebilir. 10 int number1; // first number to add 11 int number2; // second number to add 12 int sum; // sum int number1, // first number to add number2, // second number to add sum; // sum
2006 Pearson Education, Inc. All rights reserved. 33 Hatırlatma Herbir değişkeni farklı bir satırda deklare etmek açıklayıcı satır eklenmesi işini kolaylaştırır.
2006 Pearson Education, Inc. All rights reserved. 34 Hatırlatma Değişken adları oluşturulurken genel olarak deve notasyonundan (camel notation) faydalanılır. Bu notasyon değişken adlarının ilk kelimesinin ilk karakterini küçük, diğer kelimelerin ilk karakterlerini büyük yapmak şeklinde işletilir. enKucukSayi