我正在學習面向方面編程當我嘗試練習一點時,我意識到我在同一方面設計了不同的方法,並開始懷疑這是否是最好的方法,或者如果我應該爲不同的方法創建不同的方面。 我會盡力解釋更多我所做的: 我有2類:何時應該圍繞同一方面採取行動,何時應該創建不同方面?
- 計算器類有幾種方法,屁股加法,乘法,否定,復位等
- AOPmain類。
我創建另一個類(ReturnMessage類)是一個方面,在這種I類創建2種方法 - 你可以在下面的代碼看到)(一種是在的一半施加在計算器類中找到的方法,以及在同一類中的其他方法的第二種 - 計算器)。 我的問題是:在一個方面編寫幾個方法來與其他方法進行交互,是否是一個好的做法,或者爲它創建不同的方面會更好? 這裏是我的方面的代碼:
@Aspect
public class ReturnMessage {
//the joinPoint is used to get the method names and args.
@Before("execution(public void *(double))")
public void returningMessage(JoinPoint jp) {
String method = jp.getSignature().getName();
double value = (Double) jp.getArgs()[0];
System.out.println("Going to "+method+" "+value);
}
@Before("@annotation(lala)")
public void returnMsg2(MyAnnotation lala) { //<-- should I create another aspect to put this method?
System.out.println(lala.msg());
}
}
我相信這將是有趣的,不僅對我,但計算器的所有用戶誰也開始在AOP編程,所以我希望你們要pacient。
我完全困惑哪些類正在被建議,哪些類是方面你所說的「在一個方面編寫幾個方法來與其他方法交互」中的「交互」。也許你可以用名字而不是說一個班級,其他班級,另一個班級等 –
「這是一個很好的做法......」問題最常回答「有時」。如果你想要什麼時候做x而不是y,你應該問「我應該什麼時候做x而不是y?」會回答「什麼時候應該有一個團隊 - 行動到同一個方面,什麼時候應該創造不同的方面?」和你目前的問題一樣有用嗎? –
是@MikeSamuel,我會以你的筆記爲例。對不起,我問我的方式,我同意你的看法。 SO的質量需要保持高水平,但你不同意人。 – periback2