제4장 예제를 이용한 애니메이션 만들기
4-02. 액션 스크립트(Action Script)의 특징
플래시를 가장 강력한 웹용 저작도구로 만드는 데 일등 공신을 한 요소입니다.
액션은 무비의 개체를 제어하는 각종 명령어의 집합체라고 할 수 있습니다.
스크립트는 액션을 정해진 문법에 맞게 구조화시킨 문장이라고 생각하십시오.
따라서 액션 스크립트는 명령어를 포함하며, 컴퓨터에게 모종의 일을 시키는 명령이라고 표현할 수 있겠습니다.
예를 들어, 무비를 재생 혹은 멈춘다든지, 사운드 제어하기, 드래그, 색칠하기, 개체의 크기 및 투명도 조절 등 헤아릴 수 없을 정도의 많은 결과물들을 액션 스크립트를 통해 구현해낼 수 있습니다.
가. 특징
플래시의 액션 스크립트는 ECMA Script에 기반을 두어 만들어졌습니다. ECMA Script는 우리에게 잘 알려진 브라우저 기반의 스크립트 언어인 자바 스크립의 표준화된 버전입니다.
따라서 플래시 액션 스크립트는 다음과 같은 특징을 갖습니다.
첫째, 객체 지향 언어로 다양한 내장 오브젝트(Object)를 지원함으로써 무비 클립 인스턴스에서 XML에 이르기까지 많은 요소들을 통제하고 가공할 수 있습니다.
둘째, 오브젝트들에 액션스크립트만의 기능을 추가하여 오브젝트를 확장시킬 수 있게 합니다.
셋째, 액션 스크립트는 오브젝트를 정의할 수 있습니다.
나. 액션 스크립트의 발달
플래시 액션 스크립트는 버전 5에서부터 이루어진 향상된 판독 능력과 재사용 능력이 한층 강화되었으며, 버튼과 무비클립, 타임라인에만 적용되던 것에서 MX 버전부터는 위치나 심볼에 영향을 덜 받고 광범위하게 사용할 수 있게 되었습니다. 특히 무비클립에만 붙일 수 있었던 인스턴스 이름을 버튼과 텍스트 박스에도 적용할 수 있습니다.
특히 Call Back 함수라고 불리우는 프레임에서 구현하는 스크립트는 플래시의 응용 범위를 엄청나게 확장시켰다고 할 수 있습니다.
나아가 CS 버전에서는 액션 스크립트 버전 3.0이 출현, 거의 전문적인 프로그래밍 언어 수준까지 확장, 향상되었습니다.
다. 객체(Object) 지향 언어에 사용되는 용어 알아두기
(다소 어렵게 여겨질 지 모르겠습니다만, 이런 것이 있다는 정도는 반드시 기억해야 합니다)
용어 | 기 능 |
클래스(Class) | 새로운 오브젝트를 정의하여 만들어내는 데이터 타입으로, 새로운 클래스를 만들기 위해서는 컨스트럭터 함수를 만들어야 합니다. |
컨스트럭터(Constructor) 또는 컨스트럭터 함수 | 클래스의 속성이나 매서드를 정의하기 위해 사용하는 함수 |
함수(Function) | 매개 변수를 전달하여 특정한 값을 되돌려 받으며, 재사용할 수 있는 코드의 한 묶음. |
식별자(Identifier) | 변수, 속성, 오브젝트, 함수, 메서드를 정의하기 위해 사용되는 이름. 식별자의 첫 문자는 문자, 밑줄(_), 달러표시($)가 되어야 함. |
메서드(Method) | 오브젝트의 행동 양식. 즉, 오브젝트로 하여금 '어떻게 해라'에 해당. |
오브젝트(Object) | 클래스의 인스턴스. 클래스 각각의 인스턴스는 그 클래스의 모든 속성과 메서드를 포함하고 있습니다. 또한 클래스에서 정의되지 않은 부가적인 속성과 메서드들을 포함할 수도 있습니다. |
속성(Property) | 오브젝트가 지니는 속성. |
변수(Variable) | 데이터를 담을 수 있는 공간. |
이것들의 개념을 비유적으로 말해보겠습니다.
사람이라는 클래스를 정의하기 위해 컨스트럭터 함수를 만듭니다.
사람 클래스의 속성은 손, 발, 몸통, 식성, 생김새 등이 있겠지요. 또한 사람 클래스의 메서드는 손을 흔들거나, 주먹을 쥐거나, 걷거나 뛰거나, 찡그리거나 웃게 하는 등의 행동 양식이 있을 것입니다.
사람 클래스의 모든 메서드와 속성을 정의한 후에 이제 어떤 사람 오브젝트를 만들게 됩니다. 새로운 사람 오브젝트를 만든다는 것은 클래스의 인스턴스를 만든다는 말과 같습니다. 클래스로부터 만들어진 각각의 인스턴스는 유일하며, 인스턴스 각가의 속성은 독립적입니다.
다시 말하면 손이라는 오브젝트를 가지고 흔드는 동작, 경례하는 동작 등등을 만들어 낼 수 있다는 것입니다. 이와 같이 오브젝트 자체에 변형을 가하지 않고, 인스턴스의 속성과 매서드를 가진다는 점을 두고 '오브젝트를 확장한다'라고 합니다.
'플래시(Flash) 강좌' 카테고리의 다른 글
4-04. 액션 스크립트 작성법 (0) | 2016.06.28 |
---|---|
4-03. 콜백 함수의 이해 (0) | 2016.06.28 |
제4장 애니메이션 만들기 4-01. 액션 스크립트의 개념 (0) | 2016.06.23 |
3-27. 템플릿을 이용한 이미지 갤러리 만들기 (0) | 2016.06.23 |
3-26. 눈이 내린다 - 심볼 속 심볼 (0) | 2016.06.23 |