Apprendre la programmation fonctionnelle pour Kotlin ?
C’est difficile de répondre à cette question.
Apprendre la programmation fonctionnelle et ses concepts : oui, clairement c’est une très bonne idée. Ca t’ouvrira des perspectives de modélisation, et d’une façon générale, en saisir les concepts fondateurs te fera du bien.
Apprendre Kotlin : pourquoi pas.
Apprendre Kotlin pour faire du fonctionnel : bof. C’est vraiment pas ce qui se fait de mieux dans le domaine. Ca a le mérite d’exister, de proposer certains concepts hérités des langages fonctionnels, mais c’est malheureusement trompeur. Tu n’auras qu’une vision limitée de la programmation fonctionnelle à travers Kotlin. Le seul avantage fonctionnel qu’on pourrait lui trouver, c’est de traiter les fonctions "as first class citizen". Et donc de pouvoir les manipuler. Par exemple, on pourrait retrouver dans ce repo des concepts plus poussés, comme l’application partielle de fonction. Un concept très présent en Haskell, Elm, ou Scala (Scala fait la différence entre "partially applied" et "partial function", il est très intéressant de comprendre la distinction) par exemple. Et qui peut se révéler très puissant à l’usage.
Apprendre le fonctionnel pour faire du Kotlin : c’est suffisant mais probablement pas nécessaire. Tu vas utiliser des concepts fonctionnels en Kotlin, mais tu pourrais très bien faire sans. Et pour le coup c’est dommage, parce que tu risques "d’écrire du Java" pour schématiser.
Je ne peux que te conseiller d’utiliser Kotlin en remplacement de Java si tu en as l’occasion, parce que la quantité de sucre que le langage apporte, son orientation "plus fonctionnelle" (sans être purement fonctionnel) est très pratique à l’usage.
Par contre, si tu souhaites apprendre la programmation fonctionnelle, dans ce qu’elle a de plus puissant, certainement que Kotlin n’est pas le meilleur choix. Va plutôt chercher du côté de Haskell, F#, Elixir, Elm, Clojure, etc.