Yani ... Biraz araştırma yapıyorum. Aşağıda ilgilenenler için küçük bir tarih dersi var. :) Sadece cevapla ilgileniyorsanız, alttaki sonuca atlayın.
1967 :
İlk nesne yönelimli programlama dili olan SIMULA 67 , anahtar kelimeleri sınıf , nesne , referans ile arama, değere göre arama ve sanal olarak tanımlar .
SIMULA'nın miras sistemi, farklı bir ad, birleştirme (ve daha sonra önek olarak bilinir) tarafından biliniyordu ; üst tür kodların kopyalanıp alt türlerin koduyla "birleştirildiği" gerçeğine atıfta bulundu. Daha sonra başka bir miras sistemi ortaya çıktı, delegasyon , burada çağrılar doğru tipe atıfla delege edildi.
Sanal, büyük olasılıkla bir sanal yöntem tablosu kullanarak doğru uygulamaya çağrı göndermek için yapılması gereken işlemi ifade eder . Sabit / somut bir uygulamaya kıyasla sanaldır.
1971 :
Niklaus Wirth, Kademeli Arıtma olarak tanımlanan bir konsept hakkında yazıyor . Temel olarak, bir programın genişletilebilecek kısmi çözümlere nasıl bölüneceğini açıklar.
1974 :
Bu SikkeIerin terim buldum erken kağıdıdır soyut veri türlerini tarafından Barbara Liskov .
Soyut bir veri türü, tamamen bu nesneler üzerinde mevcut olan işlemlerle karakterize edilen bir soyut nesne sınıfını tanımlar. Bu, soyut bir türün, o tür için karakterizasyon işlemleri tanımlanarak tanımlanabileceği anlamına gelir. Bir programcı soyut bir veri nesnesini kullandığında, yalnızca o nesnenin sergilediği davranışla ilgilenir, ancak bu davranışın bir uygulama yoluyla nasıl elde edildiğine dair herhangi bir ayrıntıyla ilgilenmez.
Bu makale aynı zamanda şimdi arayüz olarak bildiğimiz şeyi belirten bir işlem kümesini de tanımlamaktadır .
İlginç bilimsel terminoloji (1996 tarihli makale):
Kalıtım : nesnelerin veya sınıfların davranış veya verileri paylaşabileceği daha düşük düzeyli bir mekanizma.
Alt tipleme : kavramsal uzmanlığı ifade eder. Arayüz kalıtım olarak da adlandırılan belirli bir kalıtım biçimi .
Soyutlama ilkeleri : İlgili alanın daha iyi anlaşılmasını sağlamak için bir uygulama alanı hakkındaki bilgimizi, soyutlamaların sıralaması hiyerarşik sıralarına göre düzenleme süreci.
Kısmen uygulanan soyutlamalar : tanımları bilerek eksik kalan soyutlamalar.
Soyut sınıflar : Nesne yönelimli sistemlerde kısmen uygulanan bir sınıf için özel terim .
Sınırsız kalıtım : İşlemlerin alt sınıflarda yeniden tanımlanmasını (veya hatta kaldırılmasını) sağlar.
Katı kalıtım : Davranışsal olarak uyumlu kalıtım.
Sonuç :
Soyut sınıf , nesne yönelimli sistemlerde kullanılan en genel terimdir. Öyle görünüyor saf dışı saf sanal fonksiyonlar sadece C ++ kaynaklanmaktadır. Örneğin, Stroustrup ile yapılan bu röportaj , terimleri icat ettiğini gösteriyor. Bilimsel makaleler daha genel terminoloji kullanır.
Sanal , kullanımının yaygın olmasına neden olan SIMULA'dan kaynaklanır, ancak genel bir terim değildir. Uygulama ayrıntılarını zaten tanımlar. Kalıtım türleri açısından konuşmak daha uygundur. Varsayılan olarak sanal olmayan , varsayılan olarak katı mirasa karşılık gelirken , varsayılan olarak sanal olmayan sınırsız mirasa karşılık gelir .
Wikipedia girişini ayarlamak isteyen var mı? :)