簡體   English   中英

使用反射API測量類的位置穩定性

[英]Measure the Positional stability of a Class using reflection api

作為大學項目的一部分,我們需要“創建一個Java應用程序,該應用程序使用反射來分析任意Java應用程序存檔(JAR),並在其對象圖中計算每個組件類的位置穩定性。回想一下,位置穩定性( I)的類型可以通過計算進入和離開該類型的依賴項的數量來度量:“。

我們需要測量每個類及其組件的傳出和傳入耦合,然后計算穩定性。

我對如何計算傳入和傳出耦合有些困惑。 這是我到目前為止所做的

 for (int i = 0; i < cls.size(); i++) {

        Class cla = cls.getMyClass(i);

        Class[] interfaces = cla.getInterfaces();

        for(Class inter : interfaces){

            efferentCoup++;
        }

        Constructor[] cons = cla.getConstructors();
        Class[] conParams;

        for(Constructor c: cons){

            conParams = c.getParameterTypes();

            for(Class par: conParams){

                efferentCoup++;
            }

        }

        Field[] fields = cla.getFields();

        for(Field fie: fields ){
            efferentCoup++;
        }
}
  • 傳入耦合 :-衡量有多少其他類使用特定類。

要計算此值,您需要對所有程序包進行內部檢查並每次都增加計數器,即已引用該特定類。

  • 傳出耦合 :-衡量特定類使用了多少個不同的類

要計算此值,您需要對特定的類進行自省,並查看它所引用的其他幾個類。

理想情況下,步驟1應該足以計算兩個耦合。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM