"Yöntem", Nesneye Yönelik Programlamada kullanılan özel bir terimdir. Sözcüğün bu anlamda ne zaman kullanılmaya başladığını ve hangi programlama dili veya nicel öğrenmenin diğer dalıyla bağlantılı olarak bilen var mı?
"Yöntem", Nesneye Yönelik Programlamada kullanılan özel bir terimdir. Sözcüğün bu anlamda ne zaman kullanılmaya başladığını ve hangi programlama dili veya nicel öğrenmenin diğer dalıyla bağlantılı olarak bilen var mı?
Yanıtlar:
Java ve C # , C ++ 'dan Simula'dan alan bir yöntem aldı .
Ve Algol muhtemelen vardı etkisini Simula tarih:
Ayrıca, bir MIT ALGOL sürümü, AED-0, daha sonra "mesajlar", "yöntemler" ve "üye işlevleri" olarak adlandırılanları önceden yapılandırarak, veri yapılarını (o lehçedeki "pleksler") doğrudan prosedürlere bağladı
Orada kesin bir cevap bulmak zordur, ancak yöntem olarak şeylere atıfta bulunmanın ilk dili Simula gibi görünmektedir, ancak bu yanlış veya geriye dönük olabilir. Fonksiyonlar (matematikten) ve prosedürler (matematikten de) programlama dillerinde görüldüğü göz önüne alındığında, anlayabileceğim en iyi şey "Yöntem" in "Metodoloji" için kısa bir form olmasıdır.
Bunların tümü, bir bilgisayar programını oluşturan kodlar ve alt rutinlerdir. OOP tarzı programlama arkasındaki fikir mümkün olduğunca kodu yeniden kullanmak olduğu için "Yöntem" seçildi hayal ediyorum. Böylece, bir prosedürünüz olabilir, ancak bir yöntem işte yeni bir stil olduğunu daha açık hale getirir. Dürüst olmak gerekirse, yöntem işlevlerini çağırdığım biliniyordu ve yöntem adı verilen işlevleri duydum.
void
. C ++ üye işlevleri, sıradan işlevlerle (Simula'nın aksine) çok yakından ilişkilidir - örtük bir this
parametreye sahip olmak ve (muhtemelen) bir çalışma zamanı gönderme mekanizması, uğraştığınız şeyi gerçekten değiştirmez. C'nin ilk olarak fonksiyonları ve prosedürleri aynı şey olarak tedavi edip etmediğini bilmiyorum, ancak Pascal (daha yeni bir dil) function
ve procedure
anahtar kelimeleri var - IIRC olsa da Pascal işlevlerinin yan etkileri olabilir.
Onlarca yıldır bu konuda bilgi arıyordum. Şimdiye kadar tahminim, terimin sayısal fonksiyonun özel alt alanından Simula'ya geldiği, burada bir işlevi uygulamak için belirli algoritmaya (örneğin, bir özdeğer veya herhangi bir şey) genellikle bir yöntem denir . Bunun nedeni , aynı matematiksel işlevi hesaplamak için çeşitli farklı sayısal yöntemlere sahip olmanızdır . OOP'de, yöntem geçersiz kılma nedeniyle, "aynı" işlevi sınıfa uygun şekilde farklı şekilde uygulanmış olabilir - ör. Alan , her ikisi de bir alanı olan Şekiller olan Daire ve Dikdörtgen için farklı şekilde uygulanır. Bu, geleneksel sayısal yöntem kavramının makul bir uzantısı gibi görünmektedir.
OOP tarihinde bu kelimenin etimolojisi hakkında hiçbir şey bilmiyorum. Ama kesinti olmadığını biliyorum (tümden çıkarılabilir). Bunun için daha iyi bir terim (Daha Kesinti Dönemi veya MDT) reaksiyon veya hareket olabilir
REAL BASIC, VBx ve VB.net arka planına sahip programcılar "FUNCTION" ve "SUB" yöntem bildirimlerinin iki türünün farkındadır. BASIC dil ailesi, "FUNCTION" anahtar kelimesi ve "SUB" anahtar kelimesi ile bir işlev bildirmeye izin verir. Bu ikisi arasındaki fark, bir "FUNCTION" öğesinin, "SUB" olarak yalnızca kodu yürüttüğü ancak herhangi bir değer döndürmeyeceği bir değer döndürüp döndürmeyeceğidir. Ancak OO kavramlarının ortaya çıkmasıyla, alt ve fonksiyon terimleri birbirinin yerine yöntem olarak kullanılmaya başlanır.