title: Guice vs AspectJ
body: <p>I was working with GUice some months ago and now when I return to it, I find I have to reread the Guice documentation and examples to understand what I did with my code.</p>
  
  <p>However, when I look at AspectJ it is all too intuitive. It is an intuitive extension of the Java language. I feel I can sit down and write AspectJ code immediately already.</p>
  
  <p>Therefore, I am tempted to abandon my pursuit of Guice and go with AspectJ. Especially the fact that Spring is generating AspectJ code.</p>
  
  <p>What features of Guice are there above AspectJ that should discourage me from abandoning Guice?</p>
  
  <p>Why wouldn't Google abandon Guice and use AspectJ instead?</p>
  
  <p>Vice Versa, What are the features of AspectJ that would encourage me to abandon Guice, besides the intuitiveness of it?</p>
  
  <p>If I may be allowed to "weave" in a question here, what is precluding Java language from being merged with AspectJ or provide similar "aspects" in a future version of Java?</p>
  
  <p><strong>Note</strong>: <em>to trigger happy delete-azillas, I realise this question may be too general - but if I knew what further specifics to ask, then I would not even need to ask but just google/bing for what I know that I don't know. As you can see, my Guice knowledge has degraded so badly that I don't even recognise my own handwriting</em>.</p>