[펌] 프로그램 크기를 줄여보자 1 – 사용하지 않는 클래스는 사용하지 않도록 하자.

원문 : 지돌스타 블로그 http://blog.jidolstar.com/308


말이 좀 어렵다.

가령 이런거다.

        var childIsButton:Boolean = this.getChildAt(0) is mx.controls.Button;

을 했다고 하자.


러니깐 자식 컴포넌트가 Button인지 확인하는 작업인데… 만약 자식이 Button이 아닌 다른 Label, Chart등이
올 수 있다고 하자. 이와 같은 형태로 프로그램을 만들면 Button이 없는 경우에도 버튼이 프로그램상에 포함이 되어진다. 즉,
쓰지 않을 버튼인데 프로그램에 포함되므로 쓸데없이 프로그램 크기가 커질 수 있다.

그럼 이러한 경우에는 어떻게 할까?

바로 getQualifiedClassName()함수를 이용하면 되겠다.

        var child:DisplayObject = getChildAt(0);
        var childClassName:String = getQualifiedClassName(child);
        var childIsButton:Boolean = childClassName == “mx.controls::Button”;


의 경우 getChildAt(0)로 자식을 얻어온 뒤, 이 자식의 Class이름을 얻어온다. 이 클래스가 Label이면
mx.controls::Label 이 될 것이다. 바로 아래를 보자 “mx.controls::Button”으로 비교를 하고 있다.
앞서 말했던 코드와 큰 차이점은 Button이 프로그램상에 포함이 되어 있지 않아도 해당 자식 컴포넌트가 Button인지 확인할 수 있다는 점이다.

이 방법을 이용하면 프로그램을 크기를 줄이는데 큰 역할을 할 수 있을것이다.

참고내용 : http://flexdocs.kr/docs/flex2/docs/00001390.html


QR Code