Nesne Yönelimli Programlama
Nesne yönelimli programlama (NYP), (İngilizce:Object Oriented Programming) özetle bir bilgisayar programlama yaklaşımıdır. Günümüzde pekçok çağdaş programlama dili tarafından desteklenmektedir.
1960'lı yılların sonuna doğru ortaya çıkan bu yaklaşım, o dönemin yazılım dünyasında beliren bir bunalımın sonucudur. Yazılımların karmaşıklığı ve boyutları sürekli artıyor, ancak belli bir nitelik düzeyi korumak için gereken bakımın maliyeti zaman ve çaba olarak daha da hızlı artıyordu. NYP'yi bu soruna karşı bir çözüm haline getiren başlıca özelliği, yazılımda birimselliği (modularity) benimsemesidir. NYP ayrıca, bilgi gizleme (information hiding), veri soyutlama (data abstraction), çok biçimlilik (polymorphism) ve kalıtım (inheritance) gibi yazılımın bakımını ve aynı yazılım üzerinde birden fazla kişinin çalışmasını kolaylaştıran kavramları da yazılım literatürüne kazandırmıştır. Sağladığı bu avantajlardan dolayı, NYP günümüzde geniş çaplı yazılım projelerinde yaygın olarak kullanılmaktadır.
NYP'nın altında yatan birimselliğin ana fikri, her bilgisayar programının (izlence), etkileşim içerisinde olan birimler veya nesneler kümesinden oluştuğu varsayımıdır. Bu nesnelerin her biri, kendi içerisinde veri işleyebilir, ve diğer nesneler ile çift yönlü veri alışverişinde bulunabilir. Hâlbuki NYP'den önce var olan tek yaklaşımda (Yordamsal programlama), programlar sadece bir komut dizisi veya birer işlev (fonksiyon) kümesi olarak görülmektediler.
Nesne yönelimli programlama dilleri yukarıda adı geçen tüm öğelere sahip olurken, Visual Basic gibi nesne tabanlı programlama dilleri birkaçından yoksundur.
Konu başlıkları |
Tasarım Şablonları [değiştir]
Nesneye yönelik tasarım esnasında bazı sorunlara sıkça rastlanır. Bu sık rastlanan sorunlara karşı yaygın olarak kabul edilmiş çözümler de mevcuttur. Bu çözümlere tasarım Şablonları denir (İngilizce - Design patterns). Bu alanda en çok tanınmış kaynak, Erich Gamma, Richard Helm, Ralph Johnson ve John Vlissides tarafından yazılmış Design Patterns: Elements of Reusable Object-Oriented Software adlı, en sık kullanılan 23 tasarım şablonu içeren kitaptır. Bu tasarım şablonları Oluşturucu Tasarım Şablonları, Yapısal Tasarım Şablonları, Davranışsal Tasarım Şablonları olmak üzere üç kategoriye ayrılır.
Oluşturucu Tasarım Şablonları [değiştir]
Teklik(Singleton) Tasarım Şablonu
Fabrika(Factory) Tasarım Şablonu
Soyut Fabrika(Abstract Factory) Tasarım Şablonu
İnşaatcı (Builder) Tasarım Şablonu
Prototip(Prototype) Tasarım Şablonu
Yapısal Tasarım Şablonları [değiştir]
Adaptör(Adapter) Tasarım Şablonu
Vekil(Proxy) Tasarım Şablonu
Köprü (Bridge) Tasarım Şablonu
Cephe(Façade) Tasarım Şablonu
Dekoratör (Decorator) Tasarım Şablonu
Kompozit (Composite) Tasarım Şablonu
Sinek Siklet (Flyweight) Tasarım Şablonu
Davranışsal Tasarım Şablonları [değiştir]
Strateji (Strategy) Tasarım Şablonu
Durum (State) Tasarım Şablonu
Yineleyici (Iterator) Tasarım Şablonu
Memento Tasarım Şablonu
Observer Tasarım Şablonu
Sorumluluk Zinciri(Chain of Responsibility) Tasarım Şablonu
Ziyaretçi(Visitor) Tasarım Şablonu
Şablon (Template) Tasarım Şablonu
Komut (Command) Tasarım Şablonu
Aracı (Mediator Tasarım Şablonu)
Tarihçe [değiştir]
Ayrıca bakınız [değiştir]
- Nesne tabanlı programlama dili
- Nesne Yönelimli Çözümleme ve Tasarım
- CORBA
- Soyutlama (Bilgisayar Bilimleri)
- Sarma (Bilgisayar Bilimleri)
- Tasarım Şablonları
Dış bağlantılar [değiştir]
- İTÜ Ninova Açık Ders Malzemeleri, Nesne Yönelimli Programlama
- Actionscript ve Nesne Yönelimli Programlama (OOP) (Türkçe)
|
||||||||||||||||||||||||||||||||||||||||||||