Bir ders için bazı kod için bir açıklama yazıyorum ve yanlışlıkla kelimeleri kullanarak method
ve function
birbirinin yerine. Geri dönüp ifadeleri düzeltmeye karar verdim, ancak anlayışımda bir delik açtım.
Anladığım kadarıyla, bir altyordam function
bir sınıfın bir örneği üzerinde etki etmezse (etkisi açık girdisi / çıktısıyla sınırlıdır) ve method
bir sınıfın bir örneği üzerinde çalışıyorsa (taşıyabilir onu kirleten yan etkiler ortaya çıkarır).
Bir var burada iyi tartışma konu üzerine. Kabul edilen yanıtın tanımlarına göre, method
bir örnek hiçbir zaman dolaylı olarak iletilmediğinden ve herhangi bir örneğin üyelerine erişimi olmadığından statikin aslında bir işlev olması gerektiğini unutmayın.
Bununla birlikte zihin, statik olmamalıdır methods
aslında fonksiyonlar ?
Tanımlarına göre bir sınıfın belirli örnekleri üzerinde hareket etmezler; sadece ilişki nedeniyle sınıfa "bağlıdırlar". Statik altprogramlara "yöntemler" olarak atıfta bulunan birkaç iyi görünümlü site gördüm ( Oracle , Fredosaurus , ProgrammingSimplified ), bu yüzden ya terminolojiye bakmıyorlar ya da bir şey eksikim (tahminim sonuncusu) .
Doğru ifadeyi kullandığımdan emin olmak istiyorum.
Birisi bunu temizleyebilir mi?