Gerçekten dile ve işleve bağlı olduğunu düşünüyorum. C ve c ++ derleyicileri birçok işlevi satır içine alabilirken, bu Python veya Java için geçerli değildir.
Java için belirli ayrıntıları bilmiyor olsam da (her yöntemin sanal olduğu, ancak belgeleri daha iyi kontrol etmenizi öneririm), Python'da satır içi olmadığından, kuyruk özyineleme optimizasyonu ve işlev çağrıları oldukça pahalı olduğundan eminim.
Python işlevleri temel olarak yürütülebilir nesnelerdir (ve bir nesne örneğini işlev yapmak için call () yöntemini de tanımlayabilirsiniz ). Bu, onları çağırırken oldukça fazla yük olduğu anlamına gelir ...
FAKAT
fonksiyonların içindeki değişkenleri tanımladığınızda, yorumlayıcı bayt kodundaki normal LOAD komutu yerine LOADFAST kullanır ve kodunuzu daha hızlı hale getirir ...
Başka bir şey, çağrılabilir bir nesne tanımladığınızda, notlama gibi kalıpların mümkün olması ve hesaplamanızı çok daha hızlı bir şekilde hızlandırabilmesidir (daha fazla bellek kullanma pahasına). Temelde her zaman bir değiş tokuş. İşlev çağrıları maliyeti de parametrelere bağlıdır, çünkü yığın üzerinde gerçekte ne kadar şey kopyalamanız gerektiğini belirlerler (bu nedenle c / c ++ 'da yapılar gibi büyük parametreleri değere göre işaretçilerle / referansla geçirmek yaygın bir uygulamadır).
Sorunuzun pratikte stackexchange'te tamamen yanıtlanamayacak kadar geniş olduğunu düşünüyorum.
Yapmanızı önerdiğim, bir dil ile başlamak ve işlev çağrılarının o dil tarafından nasıl uygulandığını anlamak için gelişmiş belgeleri incelemek.
Bu süreçte ne kadar şey öğreneceğinize şaşıracaksınız.
Belirli bir sorununuz varsa, ölçümler / profil oluşturma ve hava durumuna karar verme bir işlev oluşturmak veya eşdeğer kodu kopyalamak / yapıştırmak daha iyidir.
daha spesifik bir soru sorarsanız, daha spesifik bir cevap almak daha kolay olur diye düşünüyorum.