2010-10-15 8 views

Répondre

10

Scala est comme java, si vous voulez dire par exemple AOP de printemps comme je suis sûr que les annotations fonctionnent soit en scala ou en java. D'autre part, le fait que Scala ait des fermetures (et Java ne le fait pas) rend l'AOP moins intéressant.

+4

Absolument parfait. L'AOP est conçu pour cacher les préoccupations transversales. C'est beaucoup plus pratique dans Scala avec des fonctions d'ordre supérieur et des conversions implicites. – Synesso

6

En fait, la Scala IDE pour Eclipse utilise les aspects (parce que le JDT assume Java):

De Scala Support in Eclipse - Monkey-patching the JDT for fun and profit?, p16 par Miles Sabin

AspectJ et Aspects Equinox

  • Une collection d'aspects est effectivement un patch
  • AspectJ a été utilisé pour moderniser les fonctionnalités d'extensibilité souhaitées au JDT et les exposer via l'API publique
  • La modification clé:
    • La CompilationUnit du JDT est le point d'entrée à son modèle interne, mais il suppose la source Java
    • un aspect peut transformer son constructeur en une méthode de fabrication

Donc, la réponse est Oui, c'est possible. Je suis d'accord avec Pablo sur le fait que c'est moins attrayant qu'en Java.