ソフトウェアの循環的複雑度を計算しようとしていますが、少し混乱しています。私が理解していることは、ソフトウェア全体をカバーするためにテストする必要があるパスの量です。通常、決定を引き起こす if ステートメントとループがあり、そのためパスが増加しますが、以下のコードにはループまたは if ステートメントがないため、複雑さは 1 ですか?
btn_length.addEventListener (MouseEvent.CLICK, LengthFunc);
function LengthFunc (e: MouseEvent):void
{
gotoAndStop (1,"Scene 2");
}
btn_speed.addEventListener (MouseEvent.CLICK, SpeedFunc);
function SpeedFunc (e: MouseEvent):void
{
gotoAndStop (1,"Scene 6");
}
btn_currency.addEventListener (MouseEvent.CLICK, CurrencyFunc);
function CurrencyFunc (e: MouseEvent):void
{
gotoAndStop (1,"Scene 10");
}
btn_weight.addEventListener (MouseEvent.CLICK, WeightFunc);
function WeightFunc (e: MouseEvent):void
{
gotoAndStop (1,"Scene 11");
}
btn_data.addEventListener (MouseEvent.CLICK, dataFunc);
function dataFunc (e: MouseEvent):void
{
gotoAndStop (1,"Scene 16");
}
stop();
また、このクラスの複雑さも1だと思います。
import fl.data.DataProvider;
var dpcurr:DataProvider = new DataProvider();
var fromVal:Number;
var toVal:Number;
var inputValcurr:Number
var resultValcurr:Number;
input_txt.restrict = "0-9\\.\\";
dpcurr.addItem( { label: "EUR, Euro", data: 1.18 });
dpcurr.addItem( { label: "GBP, British Pound", data: 1 });
dpcurr.addItem( { label: "USD, US Dollar", data:1.54});
fromList.dataProvider = dpcurr;
toList.dataProvider = dpcurr;
fromList.addEventListener(Event.CHANGE, calculateResultcurr);
toList.addEventListener(Event.CHANGE, calculateResultcurr);
input_txt.addEventListener(Event.CHANGE, calculateResultcurr);
fromList.selectedIndex = 0;
toList.selectedIndex = 2;
fromVal = fromList.selectedItem.data;
toVal = toList.selectedItem.data;
function calculateResultcurr(e:Event):void{
fromVal = fromList.selectedItem.data;
toVal = toList.selectedItem.data;
inputValcurr = Number(input_txt.text);
resultValcurr = inputValcurr * (fromVal / toVal);
convert_btn.addEventListener(MouseEvent.CLICK, convertcurr);
function convertcurr(evt:MouseEvent):void {
result_txt.text = resultValcurr.toString()}
}
home_btn. addEventListener (MouseEvent. CLICK, homecurr);
function homecurr ( e: MouseEvent ): void {
gotoAndStop (1, "Scene 1" );
}
stop();
私が正しいか間違っているかを教えていただければ幸いです。これは Flash プロジェクトであったため、コードは ActionScript 3 で記述されています。