Back

ⓘ Nesne yönelimli programlama



Nesne yönelimli programlama
                                     

ⓘ Nesne yönelimli programlama

Nesne yönelimli programlama, Her islevin nesneler olarak soyutlandığı bir programlama yaklasımıdır. NYP destekleyen programlama dilleri yüksek seviye diller olarak adlandırılır.

1960lı yılların sonuna doğru ortaya çıkan bu yaklasım, o dönemin yazılım dünyasında beliren bir bunalımın sonucudur. Yazılımların karması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. NYPyi bu soruna karsı bir çözüm haline getiren baslı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 kisinin çalısmasını kolaylastıran kavramları da yazılım literatürüne kazandırmıstır. Sağladığı bu avantajlardan dolayı, NYP günümüzde genis çaplı yazılım projelerinde yaygın olarak kullanılmaktadır.

NYPnin altında yatan birimselliğin ana fikri, her bilgisayar programının izlence, etkilesim içerisinde olan birimler veya nesneler kümesinden olustuğu varsayımıdır. Bu nesnelerin her biri, kendi içerisinde veri isleyebilir, ve diğer nesneler ile çift yönlü veri alısverisinde bulunabilir. Hâlbuki NYPden önce var olan tek yaklasımda Yordamsal programlama, programlar sadece bir komut dizisi veya birer islev fonksiyon kümesi olarak görülmektedirler.

Günümüzde çok çesitli nesne tabanlı programlama dilleri olmasıyla beraber, en popüler diller sınıflar üzerine kurulmuslardır class-based. Bu dillerde nesneler sınıfların birer üyesidir ve nesnelerin tipini de bu sınıflar belirlerler.

En yaygın NYP dillerinden bazıları, Python, C++, Objective-C, Smalltalk, Delphi, Java, Swift, C#, Perl, Ruby ve PHP dir.

Nesne yönelimli programlama dilleri yukarıda adı geçen tüm ögelere sahip olurken, Ada, JavaScript, Visual Basic gibi nesne tabanlı programlama dilleri birkaçından yoksundur, bu dillerin baslıca yoksunluğu kalıtıma sahip olmamalarıdır.

                                     

1. Nesneler ve sınıflar

NYPyi destekleyen programlama dilleri genellikle tekrar kullanım ve genisletilebilirlik açısından, prototipler ve sınıflar seklinde kod kalıtımına sahiptirler ve NYP deki nesneler kimi zaman gerçek dünyada bulunan seylere karsılık gelebilir. Mesela bir grafik programı "kare", "üçgen" ve "yuvarlak" gibi nesnelere sahip olabilir. Bazen nesneler daha soyut seyleri de temsil edebilirler, mesela bir hesap makinesi programı logaritma almanızı ya da metreyi fite çevirmenizi sağlayacak nesnelere sahip olabilir. Iste bu bahsi geçen nesneler belli sınıflar altında bulunurlar, mesela "Kasım" adında bir nesne Aylar sınıfının bir üyesi olabilir ya da "Faktöriyel" olarak isimlendirilmis bir nesne Fonksiyonlar sınıfında yer alıyor olabilir.

                                     

2. Ayrıca bakınız

  • Tasarım sablonları
  • Sarma Bilgisayar Bilimleri
  • Nesne tabanlı programlama dili
  • Soyutlama Bilgisayar Bilimleri
  • CORBA
  • Nesne Yönelimli Çözümleme ve Tasarım
Free and no ads
no need to download or install

Pino - logical board game which is based on tactics and strategy. In general this is a remix of chess, checkers and corners. The game develops imagination, concentration, teaches how to solve tasks, plan their own actions and of course to think logically. It does not matter how much pieces you have, the main thing is how they are placement!

online intellectual game →