FoRuMBoL - Türkiye'nin En BoL Forumu'na Hoşgeldiniz! Tüm Mesajları Okunmuş Say | Yeni Mesajlar
FoRuMBoL
Bu Alana Reklam Vermek İçin Tıklayın!

Oyunlar Programlar MSN Messenger Windows İşletim Sistemi Webmasterlara Özel Photoshop Komik Resimler ve Videolar PC Donanım ve İnternet Güvenlik Programları Yerli Filmler Hazır Web Sistemleri Uydu Alıcıları Youtube Video Paylaşım Nokia Cep Telefonu İslamiyet
Bu alana reklam vermek için tıklayın
Aylık Sadece 9 YTL
www.siteniz.com
Bu alana reklam vermek için tıklayın
Aylık Sadece 9 YTL
www.siteniz.com
Bu alana reklam vermek için tıklayın
Aylık Sadece 9 YTL
www.siteniz.com
Bu alana reklam vermek için tıklayın
Aylık Sadece 9 YTL
www.siteniz.com
Bu alana reklam vermek için tıklayın
Aylık Sadece 9 YTL
www.siteniz.com
Bu alana reklam vermek için tıklayın
Aylık Sadece 9 YTL
www.siteniz.com

Ayrıntılı Konu Bilgileri
Konu BaşlığıKonu: Nesne Yönelimli Programlama
Cevap SayısıCevap Sayısı: 0 cevap var
Okunma SayısıOkunma Sayısı: 124 defa
Konuyu Görüntüleyenler0 Üye ve 1 Ziyaretçi konuyu incelemekte.

Sayfa: [1]
Seçenekler   Arama
Konu: Nesne Yönelimli Programlama  (Okunma Sayısı 124 defa)
Bu konu henüz derecelendirilmemiş!
Bu konuyu derecelendirmediniz. Derece Seç:
« : Nisan 23, 2008, 07:47:38 pm »
Bayan Üye
*
REP GÜCÜ: 464




Offline Offline

Mesaj Sayısı: 206
Konu Sayısı: 45

Cinsiyet: Bayan

Nerden: :)

Üye ID: 4546


Üyelik Bilgileri

Aktiflik

Uyarı Puanı:

%0
Nesne Yönelimli Programlama

Bu Alana Reklam Vermek İçin Tıklayın!

Nesne Yönelimli Programlama'dan (NYP) bahsedeceğiz.

NYP, bazı uygulama yeteneklerine sahip veri yığınlarının birbirleri ile olan ilişkisine dayanan güçlü bir programlama paradigmasıdır. Zaman içinde ihtiyaçlara bağlı olarak yazılan programların boyutlarının artmasıyla birlikte programlarda hata arama ve veri kontrolleri zorlaşmaya başladı, çünkü 50000 satıra varan bu büyük programlar iteratif paradigmayla oluşturuluyordu. Bu paradigma küçük boyutlu programlar için uygunsa bile büyük veri yapılarının depolama, kontrol ve değiştirilmesi işinde azımsanamayacak zorluklar çıkarıyordu. Ek olarak hata ayıklanması isi oldukca zorlaşmıştı, çünkü bu programlar homojen yapıdaydı ve hatanın bu kadar buyuk homojen bir yapıda tespit edilmesi oldukça güç bir işti. İşte iteratif yöntemin bu dezavantajları 1960'lı yıllarda NYP paradigmasının ortaya çıkmasını sağladı.

İteratif yöntemdeki “tür” tanımına benzer bir şekilde NYP de “sınıf” tanımı mevcuttur. Sınıfı türden ayıran genel özellikleri şunlardır:

Veri yapısı homojen değil heterojendir.
“Kendine ait” yöntemleri vardır. Bunlar dış yordamlar tarafından çağrılamaz.
Hafızada herhangi bir sınıf türünden bir yer ayırdığımız zaman, ayrılan bu yer artık "nesne" olmuş olur. (Kurduğumuz analojide "değişken"e denk geliyor) Nesneler "sınıf" tanımında yer alan bütün özelliklere sahiptir. Şimdi, sınıf ile nesnenin iliskisine dair bir benzetme yapalım. Mesela; "otomobil" sınıfı tanımlayalım. Bir otomobile ait olabilecek renk, marka, model, katedilen km gibi özellikler otomobil sınıfının veri kısmını oluştururlar. Uygulama kısmına bakacak olursak, bu kısmı, otomobilin ""dinamik"" özellikleri şekillendirir. Bu uygulamalar 'kaçınılmaz' olarak otomobilin veri kısmında bir takım degişikliklere sebep olabilecektir, en azından biz böyle olmasını bekleriz. Örneğin; bir otomobil ilerleyebilir, geri gelebilir, sağa dönebilir veya sola dönebilir; bununla ilintili olarak otomobil sınıfının icinde ilerle() uygulamamız olduğunu varsayalım. Bu otomobil ilerledikçe katettiği km'si artacağından bu uygulama veri kısmındaki katedilen km verisini değiştirecektir. Aynı bu durumda olduğu gibi otomobilin modeli yıl geçtikçe arttırılacaktır. Bu benzetme üzerinden devam edecek olursak, buraya bazı özelliklerin eklenmesi gerektiğini farkedeceksiniz. Bu özellikleri NYP mantığının 3 temel özelliği altında inceleyelim:
Linklerin Görülmesine İzin Verilmiyor
Linki Görebilmek İçin Üye Ol veya Giriş Yap


1.Depolama (Encapsulation): Bu özellik nesnenin istenilen kısmına, istenilen biçimlerde ulaşmayı sağlar. Bir otomobil nesnesinin kmsini sadece kendi ilerle() yordamı değiştirebilir. Bir otomobilin ilerlemesi başka bir otomobilin kmsini etkileyemez. Bu özellik her otomobil için geçerlidir. Ayrıca depolama özelliği bilginin dış yordamlar tarafından ulaşılmasını engeller. Bu özelliği güvenlik için önemlidir.

2.Miras (Inheritance): Bu özellik benzer sınıfların birbirinden üretilebilmesini sağlar. Mesela taşıt sınıfımız olsun. Bu taşıt sınıfından yukarıda bahsettiğim otomobil sınıfını üretebiliriz, zira “her” taşıtın bir markası veya kmsi vardır. Bu özellikler türetilen sınıfa geçebilir. Fakat türettiğimiz sınıfta genel sınıfta bulunmayan özellikler olmayabilir. Mesela ek olarak kamyon sınıfını türetelim. Bu sınıfın “yük kapasitesi” gibi genel sınıfta ve diğer otomobil sınıfında olmayan kendine ait özellikleri olacaktır. Miras özelliği buna benzer uygulamalarda yardımcı olur.

3.Çok Biçimlilik (Polymorphism): Bu özellik nesne uygulamalarında programcıya sade ve daha kolay anlaşılır bir arayüz sağlar. Bunun çıkış noktası ise "aynı metodolojiye" sahip nesne uygulamalarının olmasıdır. Mesela; kamyon sınıfı da ilerleme özelliğine sahip olduğundan, kamyon sınıfının içinde ilerle() uygulaması da olması işimizi kolaylaştıracaktır. İşte çok biçimlilik bunu yapabilmemizi sağlar.
Yukarıda bahsettiğim özellikleriyle birlikte NYP mantığının daha birçok özelliği mevcut. NYP'nin büyük programların daha kolay bir şekilde oluşturulması, veri yapılarını daha kontrollü ve güvenilir biçimde depolanması, veri yapılarının daha kolay bicimde manipüle edilmesi ve erişimi, sade bir arayüz sağladığından hataların tespitinde kolaylık sağlaması, gibi özellikleri bu paradigmanın günümüzün çoğu uygulamasında kaçınılmaz çözüm olduğunu gösteriyor.


Logged
Linklerin Görülmesine İzin Verilmiyor
Linki Görebilmek İçin Üye Ol veya Giriş Yap




Bu Alana Reklam Vermek İçin Tıklayın!
Tags:
Sayfa: [1]
GoogleTagged

 
Gitmek istediğiniz yer:  



FoRuMBoL | Powered by SMF.
© 2007-2008, Lewis Media. All Rights Reserved.
  FoRuMBoL Arama Motoru FoRuMBoL RSS Alexa Toolbar


| "İnsanların en hayırlısı, insanlara faydalı olandır." Hz.Muhammed (s.a.v) | | Sitemiz en iyi ile 1024x768 çözünürlükte görüntülenmektedir. |

 
Hoşgeldiniz!
Hala Üye değilmisiniz?
Üye olmak çok kolay ve ücretsiz!
Üye olmak için tıklayın