Sunuyu indir
Sunum yükleniyor. Lütfen bekleyiniz
1
NİŞANTAŞI ÜNİVERSİTESİ
NESNEye yönelİk PROGRAMLAMA JAVA PROGRAMLAMA DİLİ, nesne tabanlı programlama, javanın yapısı, verİ yapıları NİŞANTAŞI ÜNİVERSİTESİ © İktisadi, İdari ve Sosyal Bilimler Fakültesi iisbf.nisantasi.edu.tr
2
JAVA PROGRAMLAMA DİLİ Java Sun Microsystems tarafından geliştirilmiş bir nesne tabanlı programlama dilidir. Ağ ortamı ve yazılımın platform bağımsız çalışması düşünülerek geliştirilmiştir. Bu nedenle, diğer dillerden farklı olarak Java’nın kendisi de bir platformdur.
3
TÜMLEŞİK GELİŞTİRME ORTAMLARI
Java uygulamalarını Notepad ve benzeri editörlerde yazabileceğimiz gibi, görsel arayüze sahip tümleşik geliştirme ortamlarını da kullanabiliriz. Eclipse Platform (free platform) Java Builder (BORLAND) Net Bean (SUN) Visual Age (IBM)
4
JAVA DİLİ İLE GELİŞTİRİLEBİLECEK UYGULAMALAR
Grafiksel Kullanıcı Arayüzü (Graphical User Interface: GUI) uygulamaları Applet’ler Dağıtılmış Bileşenler (EJB, RMI, CORBA, vb.) Web Tabanlı Uygulamalar (Servlet, JSP, vb.) Veritabanı erişimli uygulamalar Cep telefonu ve akıllı kart uygulamaları
5
Java PLATFORMLARI Standart Java Enterprise Java
Gömülü cihazlar için Java
6
Java NASIL ÇALIŞIR? Java kodları Notepad gibi basit bir editörde yazılır ve .java uzantısı ile kaydedilir. Bu haliyle kodlar metin halindedir. Metin halindeki kodların çalışması için derlenmeleri gerekmektedir. Bunun için J2SE - SDK (Java 2 Platform Standart Edition - Software Development Kit) yüklenmiş olması gerekir. J2SE’de derlenen kodlar, .class uzantılı hale gelir. Bu haliyle kodlar ikili kod şeklindedir.
7
Java NASIL ÇALIŞIR? Derlenen kodlar, çalıştırılmak için Java Virtual Machine (JVM) adı verilen ortama yüklenir. JVM, J2SE.nin içinde bulunmaktadır. Derlenen dosya çalıştırıldığında, kodlardan istenilen işlemler gerçekleştirilir; uygulama çalışmış olur.
8
Java NASIL ÇALIŞIR?
9
Java NASIL ÇALIŞIR? Derlenen kodlar çalıştırılmak üzere JVM’e yüklenirken; sınıflar yüklenir, byte kodların kontrolü yapılır ve yorumlama başlar. JVM, Java dilinin işletim sistemi tarafından anlaşılmasını sağlar. Bu sayede, Java ile yazılan bir program herhangi bir işletim sisteminde çalışır hale gelir. JVM yüklü olmayan işletim sistemlerinde, Java kodları çalışamaz. Günümüzde bazı tarayıcılar JVM destekli olarak geliştirilmiştir.
10
Java NASIL ÇALIŞIR? İşletim sistemine göre, kullanılan JVM türü de değişebilir.
11
YAPISAL PROGRAMlama Yapısal programlama dillerinde, veriler ve metotlar ayrı ayrı tutulur. Veriler veri yapılarına gönderilir; kod blokları metotlara ve/veya fonksiyonlara gönderilir. Yapısal programlama geliştirmede, fonksiyonlara bağımlılık ve kodları takip etme zorluğu gibi dezavantajlar ortaya çıkar. Yapısal programlama geliştirme sürecinde: - fonksiyonlar belirlenir - fonksiyonlar arasındaki ilişkiler belirlenir - fonksiyonların özellikleri belirlenir
12
YAPISAL PROGRAMlama
13
YAPISAL PROGRAMlama Önceki slayttaki örnekte, çok bilinen bir oyun olan tuğla oyununa ait yazılımın yapısal bir dille geliştirilmesi için tasarlama sürecine ait plan yer almaktadır. Her kutu, belli bir fonksiyonu işaret eder. Kutular arası oklar, fonksiyonlar arasındaki ilişkileri temsil eder. Fonksiyonlar, özellikleri belirlenmiş olan işlemlerdir.
14
Nesne TabanlI PROGRAMLAMA
Nesne yönelimli programlama geliştirmenin en önemli özelliği, nesnelerin kullanımıdır. Görselleştirilebilen, kavramsallaştırılabilen veya modellenebilen her şey nesne olabilir. Nesneler, veri ve metotlar içerir. Veri, bir sınıfın sahip olduğu özelliklerdir. Metot ise, bir sınıfın sahip olduğu işlemlerdir.
15
Nesne TabanlI PROGRAMLAMA
Nesneler belirli özellikler taşırlar ve ortak özelliklerine göre sınıflandırılırlar. Sınıflandırılmış bir nesne grubunun özelliklerini taşıyan nesne şablonuna “sınıf”denir. Başka bir deyişle sınıf, belirli özelliklere sahip olan nesneler için bir şablondur. Her sınıf, kendisine ait olan verileri ve metotları tanımlar. Bir sınıfa ait olan özellikleri taşıyan belirli tipte bir nesnesi, o sınıfın bir örneği olarak adlandırılır.
16
Nesne TabanlI PROGRAMLAMA
Nesne yönelimli programlama geliştirme sürecinde: - nesneler belirlenir - nesneler arasındaki ilişkiler belirlenir - nesnelerin özellikleri belirlenir
17
Nesne TabanlI PROGRAMLAMA
18
Nesne TabanlI PROGRAMLAMA
Önceki slayttaki, yine tuğla oyununa ait yazılımın bu kez nesne yönelimli bir dille geliştirilmesi için tasarlama sürecine ait plan yer almaktadır. Her elips, belli bir nesneyi işaret eder. Elipsler arası oklar, nesneler arasındaki ilişkileri temsil eder. Nesneler, özellikleri belirlenmiş sınıflara ait olan örneklerdir.
19
JAVA’NIN YAPISI Nesne Yönelimlidir
Gerçek hayattaki nesneler, Java’da temsil edilebilir. örnek: öğrenci, ders, öğretmen, not Platform Bağımsızdır Java programları platformdan bağımsızdır. Java derleyicisi, kaynak kodu byte kod komutlarına çevirir. byte kod komutları, Java Virtual Machine (JVM) tarafından yürütülür. JVM, özel bir yazılımdır. Bilgisayarın işletim sistemi ile kendi üzerinde çalışan Java uygulaması arasında bir katman olarak yerini alır.
20
JAVA’NIN YAPISI Taşınabilirdir
Java “Bir kere yaz, her yerde çalıştır.” ilkesine %100 uyar. Java, bir tamsayının boyut ve aritmetik davranışını kendisi belirler; bu işi çalıştığı makineye/işletim sistemine bırakmaz.
21
JAVA’NIN YAPISI Dağıtıktır Java TCP/IP ağ yeteneklerine sahiptir.
örnek: HTTP, soket, vb. RMI (Remote Method Invocation) ve EJBs (Enterprise Java Beans) kullanarak, bir JVM’deki nesneler, diğer bir JVM’deki nesnelerle haberleşebilir. CORBA kullanarak, Java nesneleri başka nesnelerle haberleşebilir.
22
JAVA’NIN YAPISI Çok Kanallı (Multi-Threaded) Yapıdadır
Java, kanalları yönetme yeteneğine sahiptir. Çeşitli görevler, bir Java uygulamasında eş zamanlı olarak çalışabilir. Bazı eşzamanlı erişim kontrolleri dile gömülmüştür. Java, eşzamanlı erişimi kütüphane seviyesinde değil, dil seviyesinde yapar.
23
JAVA’NIN YAPISI Sıkı Kurallı (Strongly-Typed) bir dildir
Bir ifadenin tipi, derleme zamanında belirlenebilir. Bu şekilde, derleyici hataları bildirebilir. - Java’da gönderilen ve alınan her parametrenin bir tipi olmalıdır. - Tanımlanan her değişkenin bir tipi olmalıdır.
24
JAVA’NIN YAPISI Hafıza Kullanımı Java, açık olarak işaretçi kullanmaz.
Java, hafızada yer ayırma ve ayrılan yerleri kaldırmayı otomatik olarak yapar. Java, otomatik çöp toplama (garbage collection) yapar.
25
JAVA’NIN YAPISI Derlenir ve Yorumlanır JVM’de özel yorumlayıcı vardır.
- Runtime’da, sınıflar yüklenir. - JVM’deki yorumlayıcı, derlenmiş byte kod komutlarını makine komutlarına çevirir. - Kodlar çalıştırılır. Java destekli tarayıcılar, Java uygulamaları çalışacak şekilde bir Java yorumlayıcısı da içerirler.
26
JAVA’NIN YAPISI
27
JAVA’NIN YAPISI Dinamiktir
JVM, nesnenin tipine göre runtime’da hangi kodların çalışacağına karar verir. Java, runtime’a kadar bir uygulamayı oluşturan modülleri birleştirmez. Bu şekilde, kütüphaneler istenildiğinde yükseltilebilir (upgrade) veya değiştirilebilir.
28
Java KAYNAK KODUNUN YAPISI
Sınıfın bütün öğeleri sınıf bloku içinde tanımlanır, Sınıfın, sadece paket (package) bilgisi ile koduna dahil edeceği (import) diğer yapıların ifadeleri sınıf dışında tanımlanır. En yaygın sınıf niteleyicisi public’tir ve sınıfa her yerden erişilebileceğini ifade eder. Her public sınıf, kendi ismini taşıyan ve .java uzantısına sahip olan bir dosyada yer almalıdır. Dolayısıyla her .java kaynak kodu dosyasında en fazla bir tane public sınıf olabilir.
29
BaSİT BİR JAVA PROGRAMI
Ekrana “Merhaba” yazdıran Java Programı:
30
Anahtar KELİMELER (Keywords)
* Kullanılmamaktadır ama ayrılmış (reserved) kelimedir. ** 1.2’de eklenmiştir, *** 1.4’de eklenmiştir, **** 5.0’da eklenmiştir, null, true ve false kelimeleri de ayrılmış Java sabitleridir
31
BÜYÜK-Küçük Harf AyrIMI
Java, küçük-büyük harf ayrımına sahiptir: Dilde, nerede küçük harf nerede büyük harf kullanılması gerektiği, genel olarak kodlama geleneği (code conventions) denen belgelerde ifade edilirler. Java’cılar da, kendisine uydukları çok detaylı bir kodlama geleneğine sahiptirler.
32
YORUM SATIRI Java’da 3 farklı yorum yapısı vardır:
"//" bulunduğu yerden itibaren satırı yorum yapar. "/* */“ birden fazla satırı blok olarak yorum yapar. "/** */“ birden fazla satırı Javadoc yorumu yapar. ÖDEV 1: Javadoc nedir? Ne için kullanılır?
33
İsİMLENDİRME KURALLARI
Java’da da isimlendirme kuralları şunlardır: Anahtar ve ayrılmış kelimeler isim olarak kullanılamaz. İsimler, bir rakam ile başlayamaz ama sonraki karakterlerde rakam içerebilir. İsimler, “ ’ . , ; : ! ? / \ - | gibi noktalama işaretlerini içeremez ama "_" kullanılabilir. İsimler "$", "€", "¢", "¥" ya da "£" gibi bir para birimi sembolleri ile başlayabilir.
34
İsİMLENDİRME KURALLARI
Programcılar, olabildiğince anlamlı isimler kullanmalıdırlar: Bakıldığında ne işe yaradığı hakkında olabildiğince çok bilgi veren isim kullanmak Java’cılar için bir gelenektir. Java’da isimlerin uzunluklarında bir sınır yoktur. İsimlerde büyük-küçük harf ayrımı vardır. Java karakterleri Unicode olduğundan Türkçe, Çince,İbranice, Rusça vb. dillerindeki harfler de kullanılabilir. ÖDEV 2: Java’da kullanılan kodlama (isimlendirme) gelenekleri nelerdir? Detaylı olarak açıklayınız.
35
VERİ TİPLERİ Temel veri tiplerinin nesne olmadığı ve mesaj gönderemediği unutulmamalıdır. Ancak, temel veri tipleri nesneler içinde yer alabilir.
36
VERİ TİPLERİ Veri tiplerini değişken tanımlarken kullanırız ve java’da tip-güvenli(type-safe) bir dil olduğu için değişken oluştururken mutlaka veri tipini belirtmek zorundayız. Java’da veri tipleri 3′e ayrılır. Bunlar ; - İlkel(Primitif) veri tipleri - Referans tipler - Null Veri tipi
37
VERİ TİPLERİ Eski programlama dillerinde veri tipleri ait oldukları programlama diline gömülü(built-in- types) öğelerdi, her bir veri tipi bir anahtar sözcük ile belirtilirdi. Ama Java gibi nesneye yönelimli programlama dillerinde veri tiplerinin hepsi bir sınıftır ancak çok sık kullanıldıkları için Java bazı veri tiplerine ayrıcalık tanır bu türden veri tiplerine temel(primitif) veri tipleri denir. Java dili bu veri tiplerine onlara ait nesneler yaratılmaksızın kullanılmasına olanak sağlar.
38
İlKEL (PRIMITIF) VERİ TİPLERİ
Java dilinde ki ilkel veri tipleri aşağıdaki gibidir diyebiliriz ; Tamsayılar Ondalıklı Sayılar Karakterler Mantıksal tipler
39
İlKEL (PRIMITIF) VERİ TİPLERİ
40
TAMSAYILAR Bellekte tuttukları alana göre 5 çeşit tamsayılar için kullanabileceğimiz ilkel veri tipi vardır.Bunlar ; char byte short int long NOT : long ilkel veri tipinde bir değişken tanımlayıp buna da değer atarken değere litarelini(l) atamamız gerekir. Örneğin: TUGAY ÖDEV
41
TAMSAYILAR char ilkel veri tipi unicode karakter setinde karakterlere karşılık gelen işaretsiz tamsayı değerine sahip olduğundan dolayı bu veri tipine sahip değişkenlerle çeşitli aritmetik işlemler ve büyüktür küçüktür gibi karşılaştırmalar yapılabilir. NOT :char ilkel veri tipinde bir değişken tanımlayıp buna da değer atarken değeri tek tırnak(‘) içinde atamamız gerekir. Örneğin: NOT :String ilkel(primitif) veri tipi değildir, String karakter kümelerini(katarlarını) tutmak için tasarlanmış bir sınıftır.
42
OndalIklI SayIlar Bellekte tuttukları alana göre 2 çeşit ondalıklı sayılar (gerçel sayılar) için kullanabileceğimiz ilkel veri tipi vardır.Bunlar ; float : Sayıların ondalık kısmı için 7 haneye kadar duyarlılıkta olabilir. NOT : float veri tipinde bir değişken tanımlayıp buna da değer atarken değere litarelini(f) atamamız gerekir. Örneğin: Double : Sayıların ondalık kısmı için 17 haneye kadar duyarlılıkta olabilir. NOT :double veri tipinde bir değişken tanımlayıp buna da değer atarken değere litarelini(d) atamamız gerekir.
43
MantIksal VERİ TİPİ boolean basit mantıksal tiptir.
Değeri doğru ya da yanlış olan doğruluk durumunu ifade etmede kullanılır. Mantıksal değişkenler sadece true ya da false değerlerini alabilirler.
44
ÖRNEK PROGRAM
45
KayNAKlar Yrd. Doç. Dr. Hilmi Küçük, Nesneye Yönelik Programlama, JAVA, Ders Notları donusumleri/
Benzer bir sunumlar
© 2024 SlidePlayer.biz.tr Inc.
All rights reserved.