estoy viendo Runar Bjarnason present Functional Programming for Beginners, a las 14:45 y se define un método:Funciones vs métodos en Scala
def isDivisibleBy(k: Int): Int => Boolean = i => i % k == 0
y una función:
val isEven = isDivisibleBy(2)
¿Cuáles son los pros y los contras de la definición isEven
como una función en lugar de un método?
He leído Scala Functions vs Methods, así como Difference between method and function in Scala, y entiendo las diferencias semánticas, pero me pregunto si hay alguna razón más profunda en este caso ¿por qué función podría o no podría ser preferible al uso de un método:
def isEven = isDivisibleBy(2)
Sólo pensar en ello en el equivalente Java (las funciones vs. Métodos hace un buen trabajo de ese Scala) y cómo encaja en el tiempo de ejecución. Esa es una buena parte de la razón de un enfoque sobre el otro. También tenga en cuenta que el alcance de 'def' es importante ya que no es el mismo en todas partes (es solo un" método "- detalles de implementación aparte - a nivel de clase). –