자주 올린다고 했는데, 속도가 더디네요.ㅋㅋ 졸업 시즌이다 보니 친구들 졸업식에 갔다 오게 되고, 오늘은 친형 졸업식에 갔다 왔담니다;; 크헐...... 날씨도 많이 풀리고, 학기가 시작한다고 생각하니;; 머리에 쥐가 날꺼 같은;; 으악!!!!!
오늘은 기초스터디를 하고 있는 것과 이어서 " 사용자 정의 클래스 " 에 대해 간단히 하는 방법을 알아 보고
"내가 만든 클래스를 사용한다" 라는 주제로 시작해 보겠습니다.
우선 5강 동적 생성 부분에서 Linkage 로 객체를 정의 해서 Linkage Properties 창에서 Class 에 이름을 입력을 하는것으로 내가 스테이지에 그린 객체가 클래스로 정의 된다는 것을 알았습니다
(잘 기억 안나시면 http://cafe.naver.com/flashactionscript/12025 되돌아 가보시는것도 좋습니다 )
그럼 내가 클래스를 만들었는데, 그 클래스의 속성을 지정할수 없는가? 이 객체에 속성을 추가해 보고 싶다. 어떻게 해야 될까요?
단순 Frame 액션에서는 어떻게 하는지 감이 오셨을 것입니다. 제가 말하고 있는 건 Linkage 로 Circle 이라는 클래스를 만들었을때, 이 객체를 어떻게 사용하는지는 알겠는데, 속성을 어떻게 추가 할것인가 하는 것입니다.
어떻게 하시겠어요? Frame 액션에서는 이렇게 해 왔습니다.
// circle frame 액션으로 적용
|
지금부터 사용하고자 하는 사용자 정의 클래스는 위의 액션과 똑같은 작용을 합니다. 그런데 구지 클래스로 만들어서 사용하려고 하는가? 우선은 습관이라고 말해 드리고 싶습니다. 단순 100줄도 안되는 액션 코드에서는 자신이 알아 볼수 있다면 frame 액션에 때려 박고, 사용하셔도 상관없습니다. 하지만 코드가 500~ 1000줄 10000줄까지 가면 어떻게 하시겠어요? Ctrl + F 조낸 눌러 가면서 일일이 변수명 확인해서 사용하는게 좋을까요 ? 아님 클래스를 따로 만들어서 관리 하시는게 좋으시겠어요? 선택은 자유지만, 전 필수라고 생각이 됩니다. 그 밖에도 무궁 무진한 장점들이 있으니 절 믿고 따라와 보세욜.
이제 클래스 파일을 만들어 보겠습니다.
메뉴의 File - New - Actionscript File 을 클릭 하세요.
우선은 클래스를 만들기 위한 기본 구조 부터 익히겠습니다.
|
그리고 클래스 파일명은 Document 파일및 fla파일을 저장한 같은 폴더 안에 클래스 이름과 같은 이름으로 저장합니다
(여기 에서는 Circle.as 입니다)
그리고 전 시간에 만들어보았던 Document 클래스를 fla 파일에 연결 시켜 봅시다.
|
// output
생성
그동안 Document 클래스 사용법은 숙지 하셨지요? 기억 안나시면 6강으로...................
그럼 위의 frame 액션으로 추가 시켜 줬던 Circle 에 대한 속성은 어떻게 정의해 줄까요?? 아주 간단합니다.
|
여기서 this 란 Circle 이란 클래스 자기 자신의 의미 합니다. 그러니 자기 자신에게 속성을 추가해 주는것이지요. 정말 간단하죠? 지금까지 as 파일 2 개 fla 파일 1개가 생성되었습니다. function 앞에 public 이나 private 로 정의를 하고 있는데, 우선은 모두 public 으로 해도 무방합니다. 클래스의 개념을 좀더 추가해 주면서 설명하도록 하겠습니다.
어찌 파일이 좀 깔끔해 졌다 라는 것을 느끼고 계신가요?? 이것으로 [Base 강좌] 에서 이론에 대한 부분중 큰 가닥은 잡은것 같습니다. 늘 하는 얘기지만 어렵다고 생각하시는 분들이 많으실꺼라 봄니다. 하지만 이게 3.0 의 아주아주아주 기초중에 기초 라는 점을 알아 두셨으면 좋겠습니다. 앞으로 엄청난 기능을 자랑하는 내장 클래스들과, 우수한 개발자들이 만들어 놓은 클래스를 활용할 수 있게 되기 위해서는 아직 갈길이 많이 남아 있습니다. 기초 부터 탄탄히 라고, 하나하나 스텝을 밟아 가시기 바람니다.
앞으로는 실습을 중심으로 이론을 추가해 나아가면서 Base에 살을 붙여 나가도록 하겠습니다. 수고 하셨습니다.
다음 강에 뵙겠습니다. 안뇽~
역시 틀린 부분이나 질문 거침없는 답글 댓글 부탁드립니다. (해보기는 없습니다;;;;; 아싸! )
'동강의AS3.0 강좌' 카테고리의 다른 글
[Base] 8강 - Timer, Loader 클래스의 사용. (7) | 2008.12.11 |
---|---|
[Base] 6강 - Document Class 로의 진화 (0) | 2008.12.11 |
[Base] 5강 - DisplayObejct 와 객체 동적 생성(2) (9) | 2008.12.11 |