Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

JAVA EĞİTİMİ Serdar TÜRKEL

Benzer bir sunumlar


... konulu sunumlar: "JAVA EĞİTİMİ Serdar TÜRKEL"— Sunum transkripti:

1 JAVA EĞİTİMİ Serdar TÜRKEL
EDUTIME JAVA EĞİTİMİ Serdar TÜRKEL

2 NESNE TABANLI PROGRAMLAMA
Veri Soyutlama ve Avantajları Sınıf ve Nesne Kavramı Metot ve Olaylar Kalıcılık ve Yöntemler Kalıtım ve Çoklu Kalıtımlar Çok Biçimlilik

3 NESNE TABANLI PROGRAMLAMAYA GİRİŞ
Nesne Tabanlı Programlama (Object Oriented Programing), bir yazılım tasarlama, ve uygulama yöntemidir. OOP herhangi bir yazlım dilinden bağımsızdır. OOP bir yazılım dili ile ilişkilendirilemez. Sadece OOP destekleyen programlama dilleri vardır. OOP gerçek hayattaki olayları, nesneleri tanımlayarak daha rahat bir analiz ve programlama yapmayı sağlar. Yaklaşım olarak problem çözümü diğer uygulamalara göre daha kolaydır.

4 Problem ? OOP ile problem çözümü diğer tekniklere göre daha kolay ve anlaşılır bir düzen sunar. OOP ile bir yazılım geliştirmeden önce, geliştirilecek yazılımın çözeceği problem doğru bir şekilde tespit edilmelidir. Problem kelimesi sadece, bir ters durum veya olumsuz bir olay olarak algılanmamalıdır. Günlük hayatta her şey bir problem olabilir.

5 Problem ? İnternet üzerinden yapılmak istenilen bir satış işlemi.
Bir oto galeriden araba alınmak istenmesi. Bir ürünün daha iyi tanıtılabilmesi. Bir firmaya ait şubelerin sağlıklı bir şekilde haberleşebilmeleri.

6 OOP Probleme Nasıl Yaklaşır
OOP ile yazılım tasarımı yapılırken, problem, çok yönlü olarak ele alınır. OOP destekli bir yazılım tasarlanırken aşağıdaki basamaklar dikkate alınmalıdır. Veri soyutlama Nesne ve sınıfları belirleme Yapılacak işlemleri belirleme

7 Veri Soyutlama Veri soyutlama aşaması, kendi içinde üç bölümden oluşur. 1. Verilerin toplanması 2. Verilerin ayrıştırılması 3. Verilerin gruplanması

8 Veri Soyutlama Verilerin toplanması
Çözülmek istenilen problem hakkındaki bütün veriler toplanmalıdır. Veriler toplanırken kesinlikle problem ile doğrudan ilişkisine bakılmamalıdır. Sadece verilerin probleme ait olması yeterlidir. Bu işlem gerçekleştirilirken, genellikle beyin fırtınası yöntemi kullanılır.

9 BİR PROBLEMİN ELE ALINMASI
Örnek : Bir müşterinin bir oto galeride araba baktığını ve bir araba almak istediğini düşünelim. Bu işlemlerin yazılım ortamına taşınması planlamaktadır.

10 Nesnelerin ele alınması
Bu işlem gerçekleşirken ortamda bulunan nesneler; Farklı araba modelleri Müşteri satıcı

11 İşlemlerin ele alınması
Bu probleme ait işlemler; Müşteri arabayı seçer Müşteri arabayı beğenirse siparişi verir Müşteri arabanın parasını öder Araba müşteriye gönderilir

12 Verilerin toplanması Probleme ait nesnelere bakarak veriler toplanmaya başlanır. Müşterinin adı Müşterinin soyadı Müşterinin adresi Müşterinin yaşı Müşterinin ehliyet bilgisi Araba modelleri

13 Verilerin toplanması Araba fiyatları Araba cinsi Araba rengi
Silindir hacmi Sunproof Satıcı adı Satıcı soyadı Şirket adı

14 Verilerin toplanması Satıcı sigorta numarası Satıcı şubesi
…. Vb bilgiler toparlanır

15 Verilerin Ayrıştırılması
Toplanan veriler içerisinden yapılacak işlemler doğrultusunda, bazı veriler ayrıştırılır. Örnek : satıcının oturduğu evin yapılacak işlemlerle ilgili bir noktası bulunmamaktadır. Bu nedenle ne kadar satıcıya ait bir bilgi olsa da, bu bilgiyi yapacağımız işlemler için uygulayamayız. Bu basamaktan sonra toplanan veriler yapılacak işlemler doğrultusunda gruplanır.

16 Veri ayrıştırma Özellikler İşlemler Müşteri adı Müşterinin adını al
Müşteri adresi Müşterinin adresini al Alınan arabanın modeli Arabanın modelini al Satıcının ismi Satıcının ismini al Fatura oluştur

17 Veri Soyutlama Veri soyutlama, bir olaya bir varlığa ilişkin özellik ve olayları ayırma ve gruplandırma sürecidir.

18 Veri Soyutlama Veri soyutlamanın avantajları
Problem üzerinde yoğunlaşır Problemin temel özellikleri ve olaylarını tanımlar Gereksiz detayları elememizi sağlar

19 Sınıf (Class) ve Nesne (Object) Kavramı
Sınıf, belirli özelliklere sahip gruplar yada kategoriler olarak tanımlayabiliriz. Çiçekçiler Müşteri Satıcı

20 Sınıf ve Nesne Kavramı Bir sınıf nesnenin özelliklerini ve gerçekleştirdiği olayları tanımlamamızda kullanılır. Örneğin: Bina planı İnsan DNA’sı Silgiyi yapabilmek için kullanılan kalıp

21 Sınıf ve Nesne Kavramı(cont.)
Müşteri Sınıfı Müşterinin Adı Müşterinin Adresi Aldığı arabanın modeli Arabayı satan satıcının adı Adı al Adresi al Satın alınan arabanın adını modelini al Arabayı satan satıcının adını al Faturayı oluştur

22 Sınıf ve Nesne Kavramı(cont.)
Adam Sınıfı Adı Boy Saç Rengi Yazma Konuşma

23 Sınıf ve Nesne Kavramı(cont.)
Satıcı Sınıfı Adı Satılan Arabanın Sayısı Adı al Satılan arabaların sayısını al Komisyonu hesapla

24 Sınıf ve Nesne Kavramı(cont.)
Nesne, bir sınıfın numunesidir. Ahmet, müşteri sınıfının bir örneğidir Ahmet İstanbul W. Polo Ayşe

25 Sınıf ve Nesne Kavramı(cont.)
Bir nesnenin Öznitelik (Attribute) İşlem (Operation) Yöntem (Method) İleti (Message) Olay (Event)

26 Sınıf ve Nesne Kavramı(cont.)
Öznitelik (Attribute) Bir nesneyi tanımlayan niteliktir Örneğin: Müşteri adı Müşteri adresi Saç rengi Arabanın modeli Arabanın rengi

27 Sınıf ve Nesne Kavramı(cont.)
İşlem (Operation) İşlem, bir nesneden istenebilecek bir servistir. Mesela bir araba daha al işlemini müşteri sınıfından oluşan bir nesne gerçekleştiremez

28 Sınıf ve Nesne Kavramı(cont.)
Yöntem (Metot) Yöntem, istenilen bir eylemin nasıl yerine getirileceğinin belirtilmesidir. Bir işlem istenildiğinde, ne yapılacağını adım adım belirten bir algoritmadır.

29 Sınıf ve Nesne Kavramı(cont.)
İleti (message) Bir işlemin yerine getirilmesi için istektir, bir diğer değişle metodun çağrılmasıdır. Örneğin Müşteri sınıfından oluşturulan objemize mesaj ulaştığında “adı al” metodunu arayacak ve bulunca bunu çalıştıracaktır.

30 Sınıf ve Nesne Kavramı(cont.)
Olay (Event) Bir nesneden diğerine gönderilen uyarıdır. Örneğin Bir butona tıklamak, bir olay oluşturur.

31 Oluşturma(Construction)
Oluşturma, bir nesneyi var etme sürecidir. Oluşturucu (Constructor), özniteliklerin başlangıç değerlerini atar ve gerekli ise, bellekte yer ayırır.

32 Kalıcılık (Persistence)
Kalıcılık, bir nesnenin yaşamındn sonra veri tutabilme yeteneğidir. Kalıcılık bize nesnenin, yeniden başlatıldığında yada yeniden yüklendiğinde bir evvelki çağrımındaki bir evvelki veri yapısı ile başlamasını yada yeniden yüklenmesini sağlar.

33 Kalıcılık (Persistence)
Kalıcılığa örnek olarak Java serialization kullanılarak objeler dosyalara yada veri tabanlarına kaydedebilirler. Bu bir şiirin kalıcı olabilmesi için kağıda yazılmasına benzer.

34 Veri Kapsülleme (Encapsulation)
Kapsulleme, bir nesnenin çalışma detaylarını kullanıcısından saklama işlemdir. Örneğin Müşterinin online bir alışveriş sitesinden ürün alması.

35 Kalıtım(Inheritance)
Öğrenci Sınıfı Çalışan Sınıfı Müşteri Sınıfı Ad Adres 1. Dersin Notu Maaş Alınan arabanın Modeli 2. Dersin Notu Görev Adı al Adresi al Adres al Notları al Maaş al Model al Toplam Notları hesaplar Maaşı Hesapla Fatura Oluştur

36 Kalıtım Kişi Sınıfı Ad Adres Adı al Adres al

37 Kalıtım Kalıtım, bir sınıfa, diğer sınıflarda tanımlanmış öznitelikleri ve işlemleri kendi içinde kullanma şansı verir Bir başka sınıftan miras alan sınıf, alt sınıftır (Subclass). Üst sınıf (Superclass), kalıtımla diğer sınıflara davranışlarını aktaran sınıftır

38 Kalıtım

39 Çoklu Kalıtım (Multiple Inheritance)
Çoklu Kalıtım, alt sınıfın birden fazla sınıftan kalıtım yoluyla oluşmasıdır. Tekli kalıtımda kedi memeli sınıfından türemiş bir alt sınıftır. Çoklu kalıtımda kedi sınıfı aynı zamanda evde beslenen hayvan sınıfından ve memeli sınıfından olusur.

40 Çoklu Kalıtım Dikkat edilmesi gereken nokta, memeli sınıfınında, evde beslenen hayvan sınıfınında “X” diye bir özniteliği olduğunu varsayalım. Ozaman kedi sınıfı hangi “X” özniteliğini kalıtım olarak alacaktır.

41 Çok Biçimlilik (Polymorphism)
Çok biçimlilik, tanımlanan bir işlemin farklı bir biçimde davranmasıdır. Örneğin selam() yöntemimiz, bir Amerikalı karşısında hello cevabını verir, bir Alman karşısında da hallo cevabını dondurur


"JAVA EĞİTİMİ Serdar TÜRKEL" indir ppt

Benzer bir sunumlar


Google Reklamları