노무현 대통령 배너

고수들은 가르쳐주지 않는 AS3.0 입문

순환문과 인스턴스네임 다시 생각해보기

by on 8.27, 2010, under 고수들은 가르쳐주지 않는 AS3.0 입문

순환문만 있다면 수백만번의 반복 노가다도 문제 없다.

부제: AS2.0의 인스턴스 네이밍 습관을 AS3.0에서 바꿔보자.

액션스크립트로 처음 개발언어에 입문한 사람들에게 순환문은 마법과도 같은 생산성을 의미합니다. 스테이지와 타임라인에 드로잉 툴로 이것저것 그려내고 모션 트윈이나 쉐이프 트윈 노가다를 하던때가 매우 미개하게 느껴질 만큼 그 위력은 대단하게 느껴지죠.

액션스크립트에서 사용할 수 있는 순환문에는 while, do .. while, for, for .. in, for each .. in 의 다섯가지 입니다.[01] 앞의 세 가지 순환문은 각기 형태가 다르게 보이지만 조건이 true 일 동안 계속 실행된다는 원리나 동작 방식이 동일하고, 뒤의 두 가지 순환문은 객체의 모든 변수(또는 객체가 가진 자식 객체)에 개별적으로 접근할 수 있는 특징을 가지고 있습니다.

다섯 가지의 순환문이 있음에도 불구하고 뭔가 코드에 관여하여 컨트롤 할 수 있는 부분이 많아 보여서 일까요? 대부분의 초보 개발자들은 for 순환문만 주구장창 사용합니다. 그것도 조건을 조회하는데 i++ 와 같이 정수 i 값을 증가하거나 감소하는 방식만 사용하죠.

(계속 읽기…)

  1. for each .. in 순환문은 AS3.0에서 추가되었으므로 AS2.0에서는 사용하지 못합니다. []
33개의 댓글 :, , , more...

액션스크립트 초보를 위한 코딩 기본 규칙, 네이밍, 이것만은 지키자.

by on 5.21, 2010, under 고수들은 가르쳐주지 않는 AS3.0 입문

요즘도 만드는지는 모르겠지만, 이소룡과 성룡이 전성기였던 시절 쿵푸를 소재로 한 영화들을 보면 대략 이런 스토리가 진행됩니다. 집안이 원수들에게 유린당하고 주인공만 홀로 남게 되었는데, (우연한) 기회에 절정고수의 무술 사부님을 만나, 혹독한 수련을 받은 후, 하산하여 원수를 갚는다. 라는 이야기죠. 쿵푸영화들의 절반 이상은 항상 이런식이었는데도 질리지도 않고 계속 비슷한 스토리의 영화가 나왔던것 같습니다.

영화의 전개 부분에는 사부님으로부터 배우는 혹독한 수련과정이 나오는데, 이 수련과정 또한 매우 스테레오타입인지라 마당쓸기, 물 길어오기, 빨래하기, 밥하기와 같은 허드렛 일을 열심히 했는데, 애초부터 책 같은 형태의 궁극의 비기(秘記) 따위는 없었고… 일견 쓸모 없어보였던 잡일이 알고보니 나중에 다 피가되고 살이되는 거였더라~ 라는 이야기 구성과 설정 또한 항상 같습니다.

오늘 다뤄볼 이야기는 이런 허드렛일과 비슷하고 기본 소양이 되는 그런 이야기 입니다. 코딩을 하다보면 이게 변수인지 파라미터인지 함수명인지 그것도 아니면 클래스명인지 알 수 없는 경험을 하고계신 분들이 있을겁니다.
변수도, 이게 전역변수인지 지역변수인지, 전역변수라면 public 인지 protected 인지 private 인지 구분하고 싶은데 맨 위까지 스크롤 했다가 다시 내려오는걸 반복했다가는 코딩하다가 금방 지쳐 쓰러지겠죠.

(계속 읽기…)

8개의 댓글 :, , , , , , , , , , , , , , , , , more...

AS3.0 클래스의 상속(extends)구조에서 상위, 하위 클래스의 메서드 호출방법

by on 4.02, 2010, under 고수들은 가르쳐주지 않는 AS3.0 입문

자, 여기서는 부모 객체, 자식 객체가 아닌 상위 클래스, 하위 클래스로 제목을 잡았습니다. “부모 클래스, 자식 클래스로 표현해도 되는것 아니야?” 하는 의문을 가진 분들이 계실것 같습니다만, 적절하지 않습니다. 부모 클래스가 아닌 상위 클래스 또는 수퍼 클래스(super class)로, 자식 클래스가 아닌 하위 클래스 또는 서브 클래스(sub class)로 말해야 합니다.

클래스와 객체는 엄연히 다르죠. 클래스는 설계도일 뿐 입니다. 이 설계도(Class)를 이용해서 무언가를 만들면, 그것이 바로 객체(Object) 입니다. 그러므로 상위 클래스든 하위 클래스든 상속 체인과는 상관없이 이 설계도를 가지고는 부모 객체를 만들수도 있고 자식 객체를 만들수도 있죠. 이 당연한 사실을 이제 막 액션스크립트에 입문한 초보 개발자들은 깨닫지 못하는 경우가 많습니다.

실제 예를 들어보면 명확해집니다. DisplayObject 구조 상속 체인상으로 MovieClip 은 Sprite 를 상속했지만, 실제 우리는 MovieClip 클래스로 만든 객체를 부모 객체로, Sprite 클래스로 만든 객체를 자식 객체로 만들수 있는것과 같습니다.

어쨌든 부모, 자식 부모, 자식이라는 용어가 객체에서 사용되는것처럼 클래스에서 사용되는 경우가 있기 때문에 초보 분들이 혼동을 일으키는 것입니다. 여기서는 혼동을 줄이기 위해 상위 클래스, 하위 클래스로 지칭하겠습니다.
(계속 읽기…)

2개의 댓글 :, , , , , , more...

Looking for something?

Use the form below to search the site:

Still not finding what you're looking for? Drop a comment on a post or contact us so we can take care of it!

Meta