BTP205 – Görsel Programlama Giriş 1 Bugün… • Ders hakkında bilgi • Visual Studio 2013 IDE • Uygulama Oluşturma – Konsol uygulaması – Windows Form uygulaması – ASP.NET Web Sayfası uygulaması • C# ve .NET sistemi 2 Ders Bilgileri 3 Ders Bilgileri Dersi veren Yard. Doç. Dr. Alper BİLGE Ofis numarası 7130 E-posta adresi abilge@anadolu.edu.tr Web sayfası http://ceng.anadolu.edu.tr/abilge/ Ders web sayfası (?) http://ceng.anadolu.edu.tr/ Ders saatleri ve yeri 09:00-13:00, Perşembe Ders kitabı Beginning Microsoft Visual C# 2012, Karli Watson, Christian Nagel et al., Wiley Publishing, 2012. Illustrated C# 2012, Daniel Solis, Apress, 2012. 4 Ders içerikleri Hafta 1 Visual Studio Ultimate 2013 IDE, C# ve .NET sistemi, Konsol uygulaması oluşturma, Windows Form Projesi oluşturma ve ASP.NET Web Sayfası oluşturma Hafta 2-3 Açıklama yazma, Değişkenler, İfadeler, İşleçler (Operatörler), Ad Alanları (namespaces), Akış Kontrolü, İkili İşleçler, Döngüler, Diziler Hafta 4-5 Tip dönüşümleri, Numaralandırma, Yapılar, Diziler, Katar İşleçleri, Fonksiyonlar, Yetkilendirmeler Hafta 6-7 Hata ayıklama, Özel durum idaresi, Nesne tabanlı programlama, Arayüzler, Özellikler Hafta 8-9 Ara Sınav Hafta 10 Koleksiyonlar, Dizinleyiciler, Yineleyiciler, İşleç yüklemesi (Operator overloading), Sıralama, Genelleyiciler, Olaylar Hafta 11-12 Windows Form Uygulamaları: Button, Label, LinkLabel, TextBox, GroupBox, RadioButton, CheckBox 5 Ders içerikleri (devam) Hafta 13 RichTextBox, ListBox, CheckedListBox, ListView, ImageList, TabControl Hafta 14 MenuStrip, ToolStrip, StatusStrip, SDI ve MDI Uygulamaları, Kullanıcı Kontrolleri Final Sınavı 6 Notlandırma • Arasınav: %30, Ödev: %20, Final: %50. • Çan eğrisi uygulanacaktır. • Dönem sonu notunuz %80’den aşağı ise AA alamazsınız, ancak %80’i geçmeniz AA alacağınızın garantisi değildir. • Dönem sonu notunuz %20’den yüksek değilse DD alamazsınız, ancak %20’yi geçmeniz DD alacağınızın garantisi değildir. 7 Derse Devamlılık • Derse devam zorunluluğu vardır. • Dersin teorik kısmı için 3x14=42 saat üzerinden 12.6 saat devamsızlık sınırı, uygulama kısmı için ise 1x14=14 saat üzerinden 4.2 saat devamsızlık sınırı bulunmaktadır. • Dersin web sayfasını takip etmekle yükümlüsünüz. • Duyurular, ödevler ve notlar web sayfası üzerinden duyurulacaktır. 8 Yazılım İhtiyaçları • Bu ders kapsamında, Visual Studio 2013 IDE yazılımına ihtiyacınız olacaktır. • Visual Studio Express 2013 IDE internet üzerinden ücretsiz edinilebilir. 9 Visual C# Ayarları 10 Visual C# Klavye Ayarları • Visual Studio 2013’ü kurduktan sonra, Default Collection of Settings penceresinde Visual C# Settings seçeneğini tıklayınız. • Bu ayarlar C# için klavye komutlarını ve kullanıcı arayüzünü oluşturacaktır. – Çalıştır: Ctrl-F5,Hata ayıklama: F5, Build: Ctrl-Shift-B, vb. • Bu pencereyi atlarsanız, daha sonra Tools menüsünden Import and Export Settings komutunu uygulayarak da yapabilirsiniz. 11 12 13 14 15 Konsol Uygulaması Oluşturma 16 17 18 19 Kodu yazın ve Ctrl-F5’e basın 20 21 Windows Form Uygulaması Oluşturma 22 23 24 Form üzerine bir Label ve bir Button sürükleyip bırakın 25 Button’a çift tıklayın 26 Kodu yazın ve Ctrl-F5’e basın 27 Button’a tıklayın 28 ASP.NET Web Sayfası Oluşturma 29 File -> New -> Project -> ASP.NET Web Forms Application SEÇMEYİN 30 31 Proje adına sağ tıklayın ve Add > Add New Item seçin (ya da: Add -> Web Form) 32 33 Tasarım Görünümü’ne (Design View) geçin 34 Bir Label koyun, Enter’a basın ve bir Button ekleyin 35 Button’a çift tıklayın. 36 Kodu yazın ve Ctrl-F5’e basın 37 Button’a tıklayın 38 39 Sonuç • C# ile birçok tipte uygulama geliştirebilirsiniz. • Windows Form Uygulaması ve ASP.NET Uygulaması birbirine benzerdir. • C# ile ayrıca mobil uygulamalar da geliştirebilirsiniz (sadece Windows Mobil cihazlar için) • Uygulama geliştirirken Visual Studio 2013’ün güçlü IDE’sini kullanabilirsiniz (Visual Studio Express sürümü ücretsizdir). 40 .NET Sistemi (.NET Framework) • Microsoft’un uygulama geliştirme platformu • Birçok işletim sistemi üzerinde çalışabilir – Mono Linux ve Mac OS için – .NET Compact Framework PDA ve akıllı telefonlar için • Birçok uygulama tipini destekler – Windows uygulamaları, web uygulamaları, web servisleri, mobil uygulamalar, vb. • Birçok programlama dilini destekler – C#, C++, Visual Basic, Jscript, COBOL, Java, Delphi, vb. 41 .NET Framework Neler Barındırır • Geliştirilen uygulama dili (C#, VB, vb.) tarafından kullanılan kodların, Nesne Tabanlı Programlama (NTP) tekniklerini kullanarak oluşturulmuş kod kütüphanesi • .NET Common Language Runtime (CLR), .NET uygulamalarını çalıştırır (JRE’ye benzer şekilde) • Yazılan kodlar Common Intermediate Language (CIL) kodlarına derlenir (Java’daki .class dosyalarına benzer şekilde) – CIL kodları işletim sisteminden bağımsızdır • Just-in-time (JIT) compiler CIL kodlarını mevcut işletim sistemi kodlarına derler – JIT derleyici gerek duyulduğunda CIL kodlarını derler 42 Yönetimli Kod (Managed Code) • .NET Sisteminde yazılan kodlar kendinden yönetimlidir • Bu, CLR’nin uygulamanızı, bellek yönetimi, güvenlik yönetimi, vb. durumlar için yönetmesi anlamına gelir • C# ile sadece yönetimli kod yazabilirsiniz • C++ ile hem yönetimli hem de yönetimsiz kod yazabilirsiniz 43 Çöp Toplama (Garbage Collection) • Yönetimsiz kodlamada, programcı belleği kendisi yöneterek, ayrılan bellek alanlarının program sonunda serbest bırakılmasından kendisi sorumludur • Yönetimli kodlamada ise bellek ayrımı ve temizlenmesi CLR tarafından üstlenilir, bu kavrama çöp toplama denir • .NET çöp toplama periyodik olarak kullanılmayan bellek alanlarını temizler 44 C# • C ve C++ dillerinin gelişmiş, evrimleşmiş şeklidir • Sadece .NET platformunda çalışmak üzere Microsoft tarafından geliştirilmiştir • Diğer dillerin en iyi özelliklerini kapsayıp, problemlerini ortadan kaldıracak biçimde tasarlanmıştır 45 Visual Studio 2013 • Güçlü bir bütünleşik geliştirme ortamı (IDE) sunar • Kaynak kodu derlemek için gerekli adımları otomatize eder • Kodu yazarken akıllı biçimde hataları algılar ve doğru yazımı önerir (Intellisense) • Tasarım parçaları (designers) içerir ve arayüz elemanlarını basit sürükle&bırak yöntemiyle eklemeyi mümkün kılar • Başlangıç projeleri (starter projects) içerir • Konuşlama (deployment) olanakları içerir • Hata ayıklama (debugging) olanakları içerir • vb. 46 Visual Studio Sürümleri • • • • Visual Studio Professional Visual Studio Premium Visual Studio Ultimate Visual Studio Express Edition: Ücretsiz, ancak bazı özellikler bulunmaz • Visual C# Express: Sadece C# içerir • Visual Web Developer Express: Sadece web uygulaması araçları içerir 47 Visual Studio Çözümleri • Visual Studio’da çözüm dosyaları (solutions) üretirsiniz • Çözümler projeleri içerir • Çözümler birden fazla proje içerebilir – Bu şekilde paylaşımlı kodlar üzerinde çalışabilirsiniz 48 Araçlar (Toolbox) Tasarımcı (Designer) Çözüm Tarayıcı (Solution Explorer) Özellikler Penceresi (Properties Window) 49 Çözüm (Solution) Project Kaynak Dosyaları (Source Files) Kaynak Kod (Source Code) 50