Temel Kavramlar. BS-515 Nesneye Yönelik Programlama. Ders #1 (26 Ekim 2009)

Benzer belgeler
İçerik. Temel Kavramlar. Yazılım Geliştirme Aşamaları. Problemi Anlama ve Çözümleme. Biçimsel Gösterim - 1. Nesneye Yönelik Programlama

Java Temel Özellikleri

NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 1. Yrd.Doç.Dr.Hacer Karacan

Java Programlama Giriş

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Görsel Programlama DERS 01. Görsel Programlama - Ders01/ 1

BİLGİSAYAR PROGRAMLAMAYA GİRİŞ

BM-209 Nesne Yönelimli Programlama. Yrd. Doç. Dr. İbrahim Alper Doğru Gazi Üniversitesi Teknoloji Fakültesi Bilgisayar Mühendisliği Bölümü

Java 2 Standart Edition SDK Kurulum ve Java ya Giriş

Swing ve JDBC ile Database Erişimi

İÇERİK 2 Java Kodlaması için Gerekli Programlar JRE, JDK kurulması ve Başlangıç Ayarları Java Kodlamayı Kolaylaştıran IDE ler Java Kod Yapısı İlk Java

Java nedir, nasıl çalışır?

C# nedir,.net Framework nedir?

Java Programlamaya Giriş

BBS515 Nesneye Yönelik Programlama. Ders 1 Zümra Kavafoğlu

ÖZGÜR YAZILIMLAR İLE J2EE

Programlama Dillerinde Kullanılan Veri Tipleri

Android e Giriş. Öğr.Gör. Utku SOBUTAY

Java da Soyutlama ( Abstraction ) ve Çok-biçimlilik ( Polymorphism )

Akıllı telefonlar, avuçiçi bilgisayarlar ile taşınabilir (cep) telefonların özelliklerini birleştiren cihazlardır. Akıllı telefonlar kullanıcıların

Eclipse, Nesneler ve Java 2 Java Nereden Çıktı? 2

MAT213 BİLGİSAYAR PROGRAMLAMA I DERSİ Ders 1: Programlamaya Giriş

Java JDK (Java Development Kit) Kurulumu:

Java. Hakkımızda. Java Eğitimi

4. Bölüm Programlamaya Giriş

NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 10. Yrd.Doç.Dr.Hacer Karacan

Asp.Net Veritabanı İşlemleri

Öğr. Gör. Serkan AKSU 1

Üst Düzey Programlama

Google Web Toolkit ile Öğretim Elemanı Otomasyon Sistemi

JAVA PROGRAMLAMA DİLİ ÖZELLİKLERİ

Üst Düzey Programlama

JAVA RMI ve Hibernate teknolojileri kullanılarak çok amaçlı bir yazılım altyapısı hazırlanması

OMNET Ağ Benzetim Yazılımı (Network Simulation Framework) BİL 372 Bilgisayar Ağları. GYTE - Bilgisayar Mühendisliği Bölümü

Bahar. BM 211 Programlama Dilleri 3 1

Start : Bu method init methodundan hemen sonra çalışır ve applet dosyası yürütülmeye başladığında çalışmaya başlar.

ALGORİTMA VE PROGRAMLAMA I

Altuğ B. Altıntaş

Java diğer programlama dilleri gibi başlı başına bir ürün değildir.

NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 1

İçerik. Temel Kavramlar. Nesne Nedir? 1. Nesne : Örnek. Nesne Nedir? 2. Geçen hafta: Bu hafta: BBS-515 Nesneye Yönelik Programlama

PHP 1. Hafta 1. Sunum

Bilgisayar İşletim Sistemleri BLG 312

Kepware Veritabanı Ürünleri. Teknolojiye Genel Bir Bakış

1.1. Yazılım Geliştirme Süreci

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 10. LINUX OS (Programlama) BİLGİ & İLETİŞİM TEKNOLOJİLERİ GENEL BAKIŞ

BİL 542 Paralel Hesaplama. Dersi Projesi. MPJ Express Java Paralel Programlama

Java 2 Micro Edition (J2ME)

ANKARA ÜNİVERSİTESİ ELMADAĞ MESLEK YÜKSEKOKULU BİLGİSAYAR PROGRAMCILIĞI PROGRAMI DERS İÇERİKLERİ

Java da İstemci Tarafı Uygulamalar

GÖRSEL PROGRAMLAMA - I

BİL-142 Bilgisayar Programlama II

JAVA PLATFORMU. Dil ve Platform 3 Temel Özellikler 7 Uygulama Alanları 20 Temel Araçlar 24 JDK Kurulum ve Kullanılması 26

Temel Kavramlar BBS-515 Nesneye Yönelik Programlama

Veritabanı Dersi. Teoriden Pratiğe. Çağıltay N.E., Tokdemir G. Veritabanı Sistemleri Dersi -Bölüm XXV: Web'den Erişim Çağıltay, N., Tokdemir, G.

Öğr.Gör. Gökhan TURAN Gölhisar Meslek Yüksekokulu

ASP.NET TEMELLERİ. Öğr. Gör. Emine TUNÇEL Kırklareli Üniversitesi Pınarhisar Meslek Yüksekokulu

Windows 10 için Java JDK 8 ve NetBeans IDE 8.2 Kurulumu Detaylı Anlatım

Java Dersi. Altuğ Bilgin Altıntaş

Program Nedir? Program, bir problemin çözümü için herhangi bir programlama dilinin kuralları ile oluşturulmuş komut kümesidir.

Üst Düzey Programlama

Veritabanı. Ders 2 VERİTABANI

Tekir (Ön Muhasebe Yazılımı)

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi

BİL BİLGİSAYAR PROGRAMLAMA (JAVA)

Bilgisayarda Programlama. Temel Kavramlar

PROGRAMLAMA DERSİ 1. İNTERNET

Script. Statik Sayfa. Dinamik Sayfa. Dinamik Web Sitelerinin Avantajları. İçerik Yönetim Sistemi. PHP Nedir? Avantajları.

BİH 605 Bilgi Teknolojisi Bahar Dönemi 2015

Hafta 7 C Programlama Diline Giriş ve C Derleyicisi

Java ile OpenGL e Giriş. NetBeans IDE si üzerinden kurulum

SELÇUK ÜNİVERSİTESİ SEYDİŞEHİR MESLEK YÜKSEKOKULU BİLGİSAYAR TEKNOLOJİLERİ BÖLÜMÜ BİLGİSAYAR PROGRAMCILIĞI PROGRAMI DERS DAĞILIM ÇİZELGESİ (2010)

PROGRAMLAMA TEMELLERİ

Özgür Yazılımlarla Web Programlama. Özlem Özgöbek

Yükleme kılavuzu Fiery Extended Applications 4.2 ile Command WorkStation 5.6

ÖZET. Anahtar kelimeler: Programlama Dili Olarak Java, Java Dilini Tanıyalım, Nedir Bu Java?, Java Sanal Makinesi Nedir?

Tarih Saat Modül Adı Öğretim Üyesi. 01/05/2018 Salı 3 Bilgisayar Bilimlerine Giriş Doç. Dr. Hacer Karacan

Turquaz. Açık kodlu muhasebe yazılımı Turquaz Proje Grubu

Kurulum ve Başlangıç Kılavuzu. DataPage için

ĐSTEMCĐ SUNUCU SĐSTEMLER DERSĐ FĐNAL ÇALIŞMASI SORULAR YANITLAR

Java da İşleçler, Ders #3 (4 Kasım 2009)

PROGRAMLAMAYA GİRİŞ. Öğr. Gör. Ayhan KOÇ. Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay.

İçerik. Java da İşleçler, İşleçler. Aritmetik İşleçler - 1. Aritmetik İşleçler - 2. Geçen ders: Bu ders: BS-515 Nesneye Yönelik Programlama

Bİ L 131 Hafta 2. 1) Bilgisayara Java SE Development Kit 7 kurulması

Giriş. Prof.Dr. Bahadır AKTUĞ JFM212 Python ile Mühendislik Uygulamaları. *Kaynakça bölümünde verilen kaynaklardan derlenmiştir.

Java. ile Nesneye Yönelik Programlama

VERİ TABANI SİSTEMLERİ

Dr. Fatih AY Tel: fatihay@fatihay.net

Temel Bilgisayar (Basic Computer) Yazılım (Software)

Programlama Yazılımı ile Web Sitesi Oluşturma

Java EE 5 Teknolojileri Jboss Seam

Yazılım Nedir? 2. Yazılımın Tarihçesi 3. Yazılım Grupları 4 Sistem Yazılımları 4 Kullanıcı Yazılımları 5. Yazılımın Önemi 6

Bölüm 24. Java Ağ Uygulamaları 24.1 Java Appletleri. Bir Applet in Yaşam Döngüsü:

JAVA PROGRAMLAMAYA GİRİŞ

BMS-302 İleri Web Programlama. İş Parçacığı (Thread) ve Soket (Socket) Programlama

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

IDE4DB Veritabanı Geliştirme Platformu Bitirme Projesi Sunumu

PROGRAMLAMA DİLLERİ. Programlama Dilleri Programlama Dillerinin Önemi Dilleri Sınıflandırılması Anlambilim BNF Notasyonu Kontrol Deyimleri

5. PROGRAMLA DİLLERİ. 5.1 Giriş

Transkript:

Temel Kavramlar BS-515 Nesneye Yönelik Programlama Dr. Ayça Tarhan Ders #1 (26 Ekim 2009)

İçerikç Nesneye yönelik programlama Ne demektir, nasıl ortaya çıkmıştır? Nesneye yönelik dil olarak JAVA ve ilişkili kavramlar Basit bir Java programı -2- BBS-515-DN01 / 2

Nesneye Yönelik Programlama

Yazılım Geliştirme ş Aşamalarış Analiz Tasarım Kodlama ( Programlama ) Test -4- BBS-515-DN01 / 4

Problemi Anlama ve Çözümleme Problem alanı 1 Kavramsal gösterim 2 Biçimsel gösterim 3 Çözüm alanı Programlama -5- BBS-515-DN01 / 5

Biçimsel Gösterim - 1 Algoritma, biçimsel gösterime temel olan kavramlardan biridir. Herhangi bir işi yapmak veya bir problemi çözmek için sırasıyla uygulanan adımlar dizisine algoritma denir. Örnek-1: Verilen bir sayının karesini bulan algoritma (doğal dil ile) Sayıyı al. Sayının karesini hesapla. Sonucu bildir. Örnek-2: İki sayıdan büyük olanı bulan algoritma (doğal dil ile) Birinci sayıyı al. İkinci sayıyı al. Sayıları karşılaştır: Birinci sayı ikinciden büyük mü? Evet ise birinci sayı büyüktür. Hayır ise ikinci sayı büyüktür. Büyük sayıyı bildir. -6- BBS-515-DN01 / 6

Biçimsel Gösterim - 2 Çözüme götürecek her algoritma, aşağıdaki özellikleri göstermelidir: Algoritma adımları işletme sırasını yönlendirmelidir. Her algoritma adımı yapılabilir olmalıdır. Örnek: Tüm pozitif doğal sayıların bir listesini yapın (yapılabilir değil) Her algoritma adımı net olmalıdır. Herkes tarafından aynı şekilde işletilebilmelidir. Her algoritma, sonlu sayıda adım içermelidir. Algoritma nasıl temsil edilir? Algoritma ve algoritma temsili birbiriyle ilişkili ancak farklı kavramlardır. Örnek: hikaye ve kitap arasındaki ilişki Hikaye soyut ve kavramsaldır; kitap ise hikayenin fiziksel temsilidir. Bir algoritma, iyi i tanımlı öğelerle l temsil edilir. Akış çizeneği ( flowchart ) Kaba-kod ( pseudocode ) -7- BBS-515-DN01 / 7

İyi y Tanımlı Öğelerğ Örnek algoritma: Origami kağıttan ğ kuş ş yapmak -8- BBS-515-DN01 / 8

Örnek Algoritma Temsili: Akış Çizeneği ğ veya Kabakod -9- BBS-515-DN01 / 9

Programlama Program (bilgisayar programı): Bilgisayar tarafından işletilecek görevi veya görev setini tanımlayan komut dizisidir. Aslında program da bir çeşit biçimsel gösterimdir. Farklı olarak, bilgisayar tarafından işletilebilecek türde bir biçimsel gösterimdir. Programlama: Analizi (kavramsal gösterimi) ve tasarımı (biçimsel gösterimi) tamamlanmış bir problemin, bilgisayar tarafından işletilebilecek kaynak kodunu yazma işidir. Yazma işi bir programlama dili ile yapılır (C, Java, vb.). -10- BBS-515-DN01 / 10

Nesneye Yönelik Ne Demek? -11- BBS-515-DN01 / 11

Programlama Türleri Yapısal programlama ( structured programming ) Programlama birimleri: işlev ( function ) ), yapı ( struct ) struct) 1970 ler ve 1980 ler Yapısal programlama dilleri: Fortran, C, Ada, Nesneye yönelik programlama ( object-oriented programming ) Programlama birimi: nesne ( object ) 1990 lar ve sonrası Nesneye yönelik programlama dilleri: Smalltalk, C++, Java Kesite yönelik ( aspect-oriented ) programlama Bileşene yönelik ( component-oriented ) programlama -12- BBS-515-DN01 / 12

Nesneye Yönelik Programlama Programın temel öğeleri nesnelerdir. Nesneler genellikle, problem alanında var olan soyut veya somut varlıkların karşılığı olarak kodlanır. Programın işleyişi nesnelere ve aralarındaki iletişime dayalıdır. Nesneye yönelik programlama: Daha esnek ve daha modüler programlar oluşturmayı sağlar. Mevcut programlar daha kolay güncellenebilir ve genişletilebilir. Bakım yapılabilirlik ( maintainability ) Özellikle geniş kapsamlı yazılım geliştirme için avantaj sağlar. -13- BBS-515-DN01 / 13

Nesne İyi tanımlı bir kapsamı ve kimliği olan, belirli bir durum ve davranışı içeren, soyut veya somut varlıktır. Nesne gerçek dünyadaki somut bir varlığı ğ temsil edebilir. Televizyon, motor, vb. Nesne tamamen kavramsal bir varlığı ğ temsil edebilir. Banka hesabı, vb. Her nesnenin gerçekleştirdiği belirli bir rolü veya sorumluluğu vardır. Bir nesne diğerinden mesaj alabilir veya diğerine mesaj gönderebilir. -14- BBS-515-DN01 / 14

Yapısal Yöntem - Örnek Müşteri İşlemleri Para Çekme Para Yatırma Miktar Sorgulama İşlev ( function ) -15- BBS-515-DN01 / 15

Nesneye Yönelik Yöntem - Örnek Müşteri Hesabı miktar paraçek ParaYatır miktarsorgula Nesne ( object ) -16- BBS-515-DN01 / 16

Nesne Yönelik Programlama Modeli Nesneler arasındaki işbirliğini tanımlar. :Nesne2 2.istek2() 3.istek3() :Nesne-1 :Nesne3 1.istek1() -17- BBS-515-DN01 / 17

Nesneye Yönelik Dil Olarak JAVA ve İlişkili Kavramlar

JAVA Programlama Dili Java, Sun Microsystems mühendislerinden James Gosling tarafından 1990 ların başında geliştirilmeye başlanmış; Açık kodlu, Nesneye yönelik, Platformdan bağımsız, Yüksek performanslı, Çok görevli, Yüksek seviyeli, Adım adım işletilen (yorumlanan - interpreted ) bir dildir. -19- BBS-515-DN01 / 19

Java 1.0, 1995. JDK ( Java Development Kit ) 1.1.4, 1997. J2SE 1.2 ( Java2 Standard Edition ), 1998. J2SE 1.3, 2000. J2SE 1.4.0, 2002. J2SE 5.0 (1.5.0), 2004 Java SE 6 ( Standard Edition ) (1.6.0), 2006. Java SE 7 (1.7.0). Henüz resmen yayınlanmadı, geliştirme devam ediyor. Deneme amaçlı kullanıma açık. https://jdk7.dev.java.net/ JAVA Tarihçesi -20- BBS-515-DN01 / 20

Platform bağımsız JAVA Temel Özellikleri Kaynak programları çeşitli bilgisayar sistemlerinde derlenip çalıştırılabilen diller taşınabilir ( portable ) olarak nitelendirilir. Java ile yazılmış programlar, her donanım/işletim sistemi platformunda benzer şekilde çalıştırılabilir. l Bir kez yaz ve her yerde çalıştır ( write once, run anywhere ) Otomatik çöp toplama ( garbage collection ) Dinamik bellek yönetimi: Java'da bir nesne oluşturulduktan sonra o nesne ile işiniz ş bittiğinde ğ hiçbir şey yyapmanız gerekmez. Akıllı bir biçimde, kullanılmayan bellek bölümleri belirli aralıklarla ya da tetiklenen yordamlarla otomatik olarak temizlenir ve sisteme iade edilir. Açık kaynak Sun, Kasım 2006 da Java bileşenlerini, GNU General Public Licence altında açık kaynak olarak yayınladı. -21- BBS-515-DN01 / 21

Java Çalıştırma Ortamı ( Java Runtime Environment JRE) Java uygulamalarının bilgisayar üzerinde koşturulmasını sağlayan yazılımdır. Java uygulamaları günümüzde özellikle Internet sayfalarında oldukça yaygın olarak kullanılmaktadır. Kullanıcılar Java Çalıştırma Ortamınının son sürümünü java.com internet sayfasından yükleyebilir (http://java.com/en/download/help/testvm.xml) Java Çalıştırma Ortamı iki kısımdan oluşur: Java Sanal Makinesi ( Java Virtual Machine - JVM) Uygulama Programlama Arayüzü ü ( Application Programming Interface API) Bir dizi standart kütüphane sağlar. JVM ve API birbiriyle tutarlıdır ve bu yüzden JRE altında birleştirilmiştir. JRE nin Java uygulamalarını çalıştıran sanal bir bilgisayar olduğunu düşünürsek; ş JVM işlemci, ş API kullanıcı arayüzü olarak isimlendirilebilir. -22- BBS-515-DN01 / 22

Java Sanal Makinesi ( Java Virtual Machine JVM) Sanal makineyi bir yönden bir tür hayali mikroişlemci gibi düşünebiliriz. Gerçek tüm mikroişlemciler (Intel Pentium, AMD Athlon, Sun Sparc, vs.) belirli bir grup komutu işlemek üzere tasarlanmıştır. Bu komutlara işlemcinin komut kümesi adı verilir. Tüm programlar çalışabilmek için önce bu komut kümesine dönüştürülür, daha sonra işlemci bu komutları sıra ile sayısal işlemci komutlarına dönüştürüp işletir. Java Sanal Makinesi de baytkod komut kümesini tıpkı işlemci gibi, adım adım işletir. Java bu nedenle, yorumlanan ( interpreted ) bir dil olarak adlandırılır. -23- BBS-515-DN01 / 23

Uygulama Programlama Arayüzü ( Application Programming g Interface API) Java API, Java yazılımlarında kullanılan yazılım kütüphanelerine genel olarak verilen isimdir. Java API ile disk, grafik, ağ, veri tabanı, güvenlik gibi yüzlerce konuda kullanıcılara erişim imkanı sunulur. Java API, J2SDK nın ( Java2 Software Development Kit ) bir parçasıdır. Sun, farklı uygulama ortamlarını desteklemek için, farklı API lar tanımlamıştır: Java Platform, Micro Edition (Java ME): Avuçiçi aygıtlar gibi kısıtlı kaynağa sahip ortamlar için Java Platform, Standard Edition (Java SE): Masaüstü bilgisayarlar ve iş istasyonları için Java Platform, Enterprise Edition (Java EE): Geniş dağıtık sistemler ve web sunucuları için -24- BBS-515-DN01 / 24

Java Geliştirme Seti ( Java Development Kit JDK) Java geliştiricilerine programlama araçlarını sunan geliştirme setidir. Aşağıdaki bileşenlerden oluşur: javac: Kaynak kodu Java baytkoduna çeviren derleyicidir. Anında derleme ( just-in-time ti compile JIT): Baytkodu sanal makinenin i kurulu olduğu ğ gerçek sistemin diline derleme yaparak anında dönüştürür. jar: Kaynak kodla ilişkili kütüphaneleri tek bir.jar dosyasına paketleyen arşivleyicidir. javadoc: Kaynak kod açıklamalarından otomatik olarak dokümantasyon üreten bileşendir. jdb: Hata ayıklayıcıdır ( debugger ). Yukarıdakilere ek olarak, API nin kullanımını anlatan geniş bir örnek seti bulunmaktadır. -25- BBS-515-DN01 / 25

Java Nasıl Çalışır? ş Bir Java programı şu şekilde geliştirilir: Programcı Java kodunu yazar. Bu kod Java derleyicisi ile derlenir. Sonuçta baytkod ( btyecode ) adı verilen bir tür makine kodu ortaya çıkar. Platform bağımsızlığını sağlayan şey baytkoddur; çünkü bir kere baytkod oluştuktan ş sonra program, sanal makine içeren tüm işletim ş sistemlerinde çalışabilir. ş Bu baytkod Java Sanal Makinesi ( JVM ) tarafından adım adım işletilir. -26- BBS-515-DN01 / 26

İstemci Tarafı ( Applet ) İstemci tarafı ( applet ), uzaktaki sistem üzerinden indirilip Internet tarayıcı üzerinde çalıştırılabilien Java uygulamalarına verilen isimdir. Applet ler ler sisteme zarar veremeyecek bir şekilde tasarlanmıştır ve bugün özellikle oyun sitelerinde halen yaygın olarak kullanılmaktadır. İçerisinde applet olan bir sayfayı açmaya çalıştığınızda tarayıcınız otomatik olarak Java Sanal Makinesini çalıştırarak ekranın applet e ayrılan bölümünde ü uygulamanın koşturulmasını sağlar. -27- BBS-515-DN01 / 27

Sunucu Tarafı ( Servlet ) Sunucu tarafı ( servlet ), istemcilerden gelen taleplere yanıt veren Java uygulamalarına verilen isimdir. Örnek: HTTP taleplerine HTML sayfalarıyla yanıt verme Servlet, sunucu tarafında çalışan ş ve arayüzü olmayan bir applet gibi de düşünülebilir. Servlet teknolojisi, web sunucuların işlevselliğini genişleten ve mevcut iş sistemlerine ulaşmayı sağlayan basit ve tutarlı bir mekanizma sunar. -28- BBS-515-DN01 / 28

Java Sunucu Sayfası ( JavaServer Page JSP) Web istemcilerinden gelen HTTP taleplerine; HTML, XML, vb. olarak dinamik şekilde yanıt üreten, sunucu tarafı Java bileşenleridir. Bir HTML, XML, vb. sayfasına Java kodunu gömer. Bir Java Sunucu Sayfası ( JSP ) ilk defa ulaşıldığında servlet olarak derlenir ve bu servlet ilgili yanıtı üretir. -29- BBS-515-DN01 / 29

Java Kütüphaneleri Temel kütüphaneler: Liste, sözlük, ağaç, küme, vb. veri yapılarını gerçekleştirme XML işleme Güvenlik Dış sistemlerle iletişimi sağlayan kütüphaneler: Veritabanı iletişimi için Java Database Connectivity (JDBC) API Arama ve keşif işlemleri için Java Naming and Directory Interface (JNDI) Dağıtık uygulama geliştirme için Remote Method Invocation (RMI) ve Common Object Request Broker Architecture (CORBA) Kullanıcı arayüzü kütüphaneleri: AWT Swing Ses işleme API -30- BBS-515-DN01 / 30

AWT ve Swing AWT ( Abstract Window Toolkit ), Java nın platform-bağımsız pencere, grafik ve kullanıcı-arayüzü arayüzü araç-setidir. AWT, J2SE 1.2 ile birlikte, Swing araç-seti altına taşınmıştır. Swing, Java SE platformu için grafik kullanıcı arayüzü kütüphanesi olarak tanımlanmaktadır. AWT ye göre daha gelişmiş grafik kullanıcı arayüzü bileşenlerini sağlar. -31- BBS-515-DN01 / 31

Java Veritabanı Bağlantısı ( Java Database Connectivity JDBC) Bir istemcinin veritabanına erişimini sağlayan API bileşenidir. Veritabanı sorgulama ve güncelleme için yöntemler içerir. İlişkisel veritabanı sistemleri için hazırlanmıştır. JDBC API, ODBC destekleyen herhangi bir veritabanına erişimi sağlayan özelliği de içerir. Bu özellik Java kodu ile yazılmamıştır ve kapalı kaynaktır. -32- BBS-515-DN01 / 32

JavaScript Web sayfalarında dinamik içerik sağlamak ya da kullanıcıyla iletişim kurmak için kullanılan bir dildir. Önceleri sadece Netscape tarayıcıları üstünde çalışan JavaScript, artık tüm yaygın Internet tarayıcıları tarafından desteklenmektedir. Ad benzerliğine rağmen Java ile ilişkili değildir. Yaygın yanlışlardan biri JavaScript'in basitleştirilmiş Java olarak tanımlanmasıdır. -33- BBS-515-DN01 / 33

Basit Bir Java Programı

/** Basit Bir Java Programı * MerhabaDunyaProg sınıfı, konsola Merhaba Dünya yazdıran * basit bir programı gerçekleştirir. */ class MerhabaDunyaProg { } public static void main (String[] args) { } System.out.println ( Merhaba Dünya! ); // konsola yazdır. -35- BBS-515-DN01 / 35

main() Yordamı Her Java programı bir main () yordamı içermek zorundadır. public static void main (String[] args) public sözcüğü, main() yordamının her nesne tarafından çağrılabileceğini gösterir. static sözcüğü, main() yordamının nesneye değil, sınıfa ait olduğunu gösterir. void sözcüğü, ğ main() yordamının herhangi bir değer ğ döndürmediğini ğ gösterir. -36- BBS-515-DN01 / 36

Java kaynak kodları, basit bir metin editörde yazılır. Java Programı 1 Tüm program bir sınıf tanımı içine yerleştirilir. class MerhabaDunyaProg {. } Java kaynak kodu.java java uzantısı ile saklanır. MerhabaDunyaProg.java -37- BBS-515-DN01 / 37

Java Programı 2 Bir java programını derlemek için; javac MerhabaDunyaProg.java Java programı derleyiciden hatasız geçerse aşağıdaki dosya oluşur. MerhabaDunyaProg.class Derlenen Java programını koşturmak için; java MerhabaDunyaProg <Konsol çıktısı:> Merhaba Dünya! -38- BBS-515-DN01 / 38

JDK 6 ile birlikte NetBeans IDE Yüklemek İçin.. ç (1) http://java.sun.com/javase/downloads/index.jsp sayfasından JDK 6 Update 16 with NetBeans 6.7.1 1 için Download düğmesine basın. Yüklenen sayfada aşağıdakileri seçip Continue düğmesine basın. -39- BBS-515-DN01 / 39

JDK 6 ile birlikte NetBeans IDE Yüklemek İçin.. ç (2) Çıkan aşağıdaki sayfada, jdk-6u16-nb-6_7_1-windows-ml.exe dosyasını kaydedin veya çalıştırın (bunun için dosyanın üzerine tıklamanız yeterlidir). Bu dosyaya doğrudan dersin sayfasından da ulaşabilirsiniz. Makinenize kaydederseniz, yükleme için dosyayı yine de çalıştırmanız gerekir. -40- BBS-515-DN01 / 40

JDK 6 ile birlikte NetBeans IDE Yüklemek İçin.. ç (3) jdk-6u16-nb-6_7_1-windows-ml.exe dosyasını çalıştırarak yüklemeyi tamamlandığınızda; C:\Program Files\NetBeans 6.7.1 dizinine NetBeans IDE yüklenir. C:\Program Files\Java\jdk160 Files\Java\jdk1.6.0_16 16 dizinine JDK 6 yüklenir. C:\Program Files\Java\jdk1.6.0_16\bin dizini altında programlarınızı yazıp derleyerek çalıştırabilirsiniz. ş -41- BBS-515-DN01 / 41

Ödev - 1 Kullandığınız sisteme JDK 6 ile birlikte NetBeans IDE yükleyin. MerhabaDunyaProg.java dosyasını örnekteki gibi oluşturarak programı JDK 6 ile derleyin ve çalıştırın. C:\Program Files\Java\jdk1.6.0_16\bin dizini altında programlarınızı yazıp çalıştırabilirsiniz. Oluşan MerhabaDunyaProg.java ve MerhabaDunyaProg.class dosyalarını zipleyerek, dersin eğitmenine e-posta ile gönderin. Teslim için i son tarih: 1K 1.Kasım.2009 Pazar 24:00 E-posta adresi: atarhan@hacettepe.edu.tr Yukarıda yazdığınız programı, NetBeans IDE içinde yeni bir proje açarak, bu ortamda da oluşturun ş ve çalıştırın. ş -42- BBS-515-DN01 / 42

Ders Kaynakları Hakkında Ders notlarına ulaşım: http://web.cs.hacettepe.edu.tr/~atarhan/bbs515.htm Referans kitaplar: The Java Language Specification, 2nd Ed., James Gosling et.al., Addison- Wesley, 2000. Elektronik hali için ders sayfasına bakın. How to Think Like a Computer Scientist i Java Version, Allen B. Downey, Version 4.1, (April 23) 2008. Elektronik hali için ders sayfasına bakın. UML for Java Programmers, Robert Cecil Martin, Prentice Hall, 2002. Elektronik hali için ders sayfasına bakın. The Java Handbook, Patrick Naughton, McGraw-Hill, 1996. JDBC Database Access with Java, G.Hamilton et.al., Addison-Wesley, 1997. Java AWT Reference, John Zukowski, O Reilly, 1997. http://www.oreilly.com/catalog/javawt/book/index.html -43- BBS-515-DN01 / 43