Top

예제로 배우는 Adobe 플렉스 2 [리치 인터넷 애플리케이션 제작의 첫 걸음]

  • 지은이옥상훈
  • 감수자김태완, 허광남
  • ISBN : 8989975980
  • 25,000원
  • 2006년 09월 25일 펴냄 (절판)
  • 페이퍼백 | 552쪽 | 190*250mm
  • 시리즈 : 웹 프로페셔널

판매처

  • 현재 이 도서는 구매할 수 없습니다.

책 소개


저자 옥상훈님이 운영하는 플렉스 STUDY GROUP 사이트 바로 가기>>


◆《예제로 배우는 Adobe 플렉스 2》3쇄에 추가된 내용
2006년 9월부터 12월까지 토론방에 독자들이 올린 질문에 저자가 답한 글을 모았습니다.
FAQ PDF로 보기>>


2006년 개발자들이 애타게 기다리고 있던 플렉스 입문서!

플렉스가 세상에 나온 지 3년째 접어들어 가지만 국내 플렉스 개발자들이 참고할 만한 책이 없어 도움말과 외국 사이트를 뒤져가며 공부하고 있는 것이 현실에서, 드디어 플렉스를 빠르고 쉽게 배우고 싶은 개발자를 위한 책이 나왔다. 플렉스의 개념을 설명해주는 예제와 실행결과를 위주로 구성이 되어있기 때문에 예제코드를 실행해보면서 플렉스를 익힐 수 있다. 웹 2.0, 플렉스 빌더 2, 플렉스 문법, 리치 인터넷 UI가이드, 플렉스 데이터 연동, 플렉스 사용자 정의 컴포넌트, 실전 프로젝트 필수 플렉스 샘플코드 등 플렉스 프로젝트에 필요한 기술요소를 중심으로 다루고 있다.


[ 이 책의 구성 ]

2006년 개발자들이 애타게 기다리고 있던 플렉스 입문서가 드디어 출간되었다. 이 책은 플렉스 개발 IDE인 플렉스 빌더를 중심으로 플렉스 실전 프로젝트에서 사용되는 관련 지식들을 단계적으로 설명해줌으로써 플렉스 애플리케이션을 매우 쉽게 개발할 수 있는 방법을 배울 수 있도록 구성되어 있다.
플렉스 실전 프로젝트에서는 UI 기획, 컴포넌트 활용, 액션스크립트, 데이터 연동, 프레임워크 등의 지식들이 필요하다. 1부는 플렉스를 배우기 위한 준비코스로서 플렉스가 나오게 된 기술적 배경과 플렉스를 어떻게 개발하는지를 미리 맛보는 과정이다. 2부에서는 플렉스의 개발툴인 플렉스 빌더와 플렉스 문법 등 코딩 기본기를 비롯하여 플렉스의 화면을 구성하는 방법을 배울 수 있다. 3부에서는 플렉스의 핵심 코스로서 플렉스 컴포넌트의 사용법과 이들을 컨트롤하기 위한 액션스크립트, 플렉스에서 데이터베이스의 데이터를 보여주는 방법 그리고 플렉스 데이터 서비스를 배울 수 있다. 4부에서는 플렉스의 응용 코스로서 플렉스에서 컴포넌트를 확장하거나 플래시의 컴포넌트를 사용하도록 하는 사용자 정의 컴포넌트를 만드는 법과 플렉스 개발을 위한 프레임워크의 사용법을 살펴보고 다양한 실전 예제들을 통해 플렉스 개발에 바로 활용할 수 있도록 구성했다. 또한 플래시 미디어 서버와 플렉스와 연동해서 더욱 강력하고 인터랙티브한 플렉스애플리케이션을 만드는 방법도 배울 수 있다.


[ 이 책의 대상 ]

웹 개발의 경험이 있다면 누구나 이 책의 독자가 될 수 있다. 플렉스라는 스크립트 언어를 이용하여 플래시처럼 인터랙티브하고 역동적인 유저 인터페이스를 만들고자 하는 개발자들에게 필요한 여러 기술들을 배울 수 있다. 특히 다음과 같은 사람들에게 많은 도움이 될 것이다.
- 일반 웹 개발자 (ASP, PHP, JSP 등)
- 플렉스를 배우려는 학생
- 자바 개발자
- 플래시 개발자
- 플래시 웹 디자이너, 웹 기획자


[ 부록 CD 소개 ]

부록 CD에는 플렉스 개발 환경 구축을 위한 플렉스 빌더 2와 플렉스 데이터 서비스 2 설치파일과 본문에서 사용된 예제를 장별로 폴더를 만들어 저장해두었다.

- 플렉스빌더 2 설치 파일 (무료 Flex 2 SDK 포함)
- 플렉스 데이터 서비스 2 설치 파일
- 플렉스 예제 소스코드

저자/역자 소개

옥상훈 (OkGosu.Net)

97년에 한양대 생물학과를 졸업하고 자바개발자로 IT 무림에 입문한 10년 차 IT 맨으로, 한국 자바개발자 협의회(JCO, JavaCommunity.Org)의 회장을 맡고 있으며 월간 마이크로소프트웨어에 오랫동안 자바와 플렉스 관련 글을 꾸준히 기고해왔다. 이미 플래시 MX와 플렉스 버전 1부터 관심을 갖고 공부를 하기 시작했으며, 2005년도부터 플렉스 커뮤니티에서 ‘고수’라는 닉네임을 쓰고 활동하면서 현재는 okgosu.net이라는 플렉스 관련 블로그를 운영하고 있다. 현재 한국어도비 시스템즈에서 플렉스 컨설팅 업무를 담당하고 있다.


[ 저자 서문 ]

플렉스가 세상에 나온 지 아직 2년도 채 안 되었다. 하지만 그 2년을 거치면서 어느덧 플렉스는 이제 2로 버전도 높아졌다. 그러나 웹 2.0의 바람에 힘입어 플렉스 프로젝트들이 서서히 증가함에 따라 플렉스 개발자의 수요도 늘어나고 있다. 하지만 개발자들이 국내에서 플렉스를 배울 수 있는 이렇다 할 책이 없어 어려움을 많이 겪고 있는 상황이다.
이러한 상황에서 이 책은 웹2.0을 위한 사이트를 구축하기 위해 플렉스를 처음 배우려고 하는 개발자들을 위해 나왔다. 이 책은 플렉스의 기초부터 응용, RIA디자인, 데이터연동 등 플렉스 개발을 위한 전반적인 사항들을 하나하나 따라하며 쉽게 익힐 수 있도록 구성했다. 또한 필자가 실제 플렉스 프로젝트에서 겪은 팁과 코드를 포함하여 보다 플렉스 프로젝트를 하는 사람들이 자연스럽게 참조할 수 있도록 하였다.

플래시 vs 플렉스
일반 사람들이 플렉스하면 쉽게 떠올리는 것은 플래시다. 그래서 플렉스를 처음 듣게 되는 사람들은 플래시와 플렉스가 어떻게 다른지 잘 이해하지 못한다. 보통 잘 모르는 사람들에게는 플렉스가 그냥 플래시라고 설명하기도 한다. 플래시와 플렉스는 둘 다 그 결과물이 SWF로 된 플래시화면이고 클라이언트의 웹브라우저에 내장된 플래시플레이어에 의해 구동이 된다는 점에서는 비슷하다. 둘의 가장 큰 차이점은 개발과정에 있다. 플래시는 디자이너가 주로 디자인해서 만들어온 반면 플렉스는 개발자들이 태그와 스크립트를 써서 만드는 것이다. 즉 플렉스는 XML 기반의 MXML 태그와 자바스크립트와 유사한 액션스크립트 태그로 되어있다. 따라서 플렉스는 HTML태그와 자바스크립트를 써본 개발자라면 쉽게 배울 수 있다. 현재 플렉스는 2버전까지 나와있다.

왜 플렉스 2를 배워야 하는가?
이 질문에 대한 답은 이 책을 구입하는 여러분이 더 잘 알 것이다. 그러나 필자가 몇 말씀 드리자면 ‘수년 전에 왜 자바를 배워야 하는가’하는 질문과도 같은 상황이다. 그 당시만 하더라도 자바는 별로 도입한 기업이 없는 상태였지만 지금은 웬만한 대기업의 시스템은 자바기반으로 구축되어 있다. 그래서 한자를 모르면 고문을 해석할 수 없듯이 자바를 모르면 기업의 시스템을 이해하기가 어렵다.
이토록 자바를 전파하게 만든 것은 바로 ‘Write Once Run Anywhere’라는 캐치프레이즈를 가능하게 한 자바가상머신(JVM, Java Virtual Machine)이다. 마찬가지로 어도비에는 ‘Write Once Publish Anywhere’라는 웹2.0의 개념에 맞는 플래시플레이어(이는 JVM처럼 플래시 VM이라 봐도 되겠다)가 있다. 플래시플레이어는 유니버설 클라이언트로서 웹브라우저, 폰, 셋탑박스등 다양한 기기에서 작동하도록 되어있다.
이러한 플래시플레이어에서 작동할 수 있는 개발플랫폼이 바로 플렉스며 이는 서버관련 기술의 중심으로 자리잡고 있다. 그래서 플렉스는 개발관점에서 쉽게 개발하고 유지보수 할 수 있도록 스크립트와 컴포넌트 기반으로 되어있다. 그리고 향후 플래시플레이어에서 플래시뿐 아니라 PDF, HTML 모두를 보여줄 수 있는 버전이 출시예정임을 볼 때 플렉스의 가능성은 무궁무진하다고 해도 과언이 아니다

플렉스 2는 웹 2.0 시대의 새로운 비즈니스를 개척하고 있다.
이미 세계적인 시장조사기관에서 수년 내에 전세계 웹사이트의 60%가 플렉스 같은 리치 인터넷 기술을 적용할 것이라고 예견했다. 이미 국내외의 많은 사이트가 리치 인터넷 기술로서 플렉스를 채택했고 현재 여러 프로젝트가 진행중이다.
여기서 더 나아가 플렉스 2는 단순히 개발자들이 웹UI를 플래시처럼 만들기 위한 스크립트 언어가 아니란 것을 강조하고 싶다. 플렉스 2는 컴포넌트 기반으로 되어있고 무료로 배포되는 플렉스 2 SDK를 이용해 상용화 가능한 컴포넌트를 만들어 낼 수 있다. 이미 플렉스에서 제공하는 컴포넌트의 기능을 개선하거나 새로운 서비스를 제공하는 컴포넌트들을 전문으로 개발하여 판매하거나 컨설팅하는 업체들이 속속들이 생기고 있는 상황이다.
플렉스 2를 공부하다 왜 이런 컴포넌트가 없지 하면서 불평만 하고 넘어 가는 사람과 이것을 새로운 컴포넌트로 만들어 내려는 사람의 차이는 굳이 설명하지 않아도 될 것이다. 조금만 시각을 달리하면 새로운 비즈니스의 세계는 얼마든지 열려있다.


[ 감수의 글 ]

퀴즈를 하나 내보겠다. SI 프로젝트에서 초기에 가장 천대 받으며 막바지에는 공수가 가장 많이 들어가는 것이 있이 뭘까? 이것은 첫 인상 하나로 갑의 마음을 단번에 사로 잡거나 싸늘하게 얼게 만들어버릴 수도 있으며, 유지 보수할 때는 품이 많이 들어가서 난감한 상황을 조장한다. 짐작이 가는가? 정답은 바로 뷰(View)이다. 뷰는 화면을 제어하는 역할만 담당하는 것이 바람직하지만, 대부분 프로젝트에서는 이 뷰로 인해 아키텍처가 변경되는 경우도 종종 발생한다. 조금 더 화려한 UI를 제공하기 위하여 X인터넷 제품을 사용할 경우에 이런 현상의 비율은 급증하게 된다.
이런 의미에서 플렉스의 위력은 정말 대단하다. 플렉스는 뷰만을 전담하고, 표준 통신 방식을 완벽하게 지원한다. 또한 플랫폼 호환성과 브라우저 호환성을 보장한다. 이러한 특징과 함께 플렉스의 컴포넌트 관리 방식과 생산성을 고려해 보면 조만간 웹 2.0 시대의 주요 구현기술로 급부상할 것이라고 생각한다. 플렉스 기술이 나온 것은 사용자의 필요에 의해서였다. 플래시 액션스크립트의 단순 노가다성 작업을 개선해서 애니메이션 효과들을 쉽게 컨트롤할 수 있는 컴포넌트 기반으로 업그레이드한 것이 플렉스이다. 플렉스는 플래시와 많이 다르다. 대표적인 차이점을 꼽자면, 타임라인과 그리기 도구들이 없다. 하지만 웹에서 보여지는 산출물은 swf 파일로서 근본이 플래시인지라 플래시플레이어 위에서 플레이된다. 때문에 플래시에 대한 지식은 플렉스 개발에 많은 도움이 될 것이다. 포토샵과 드림위버의 차이 정도가 플래시와 플렉스의 차이 정도랄까.
최근 플렉스와 Ajax는 최신 웹 기술 중에서 가장 많은 스포트라이트를 받고 있다. 개인적으로 농담 반 진담 반으로 플렉스는 부자를 위한 기술이고, Ajax는 평범한 웹 개발자를 위한 기술이라고 얘기하곤 한다. Ajax가 통념적인 웹 기술의 한계를 넘어서서 기발한 화면 동작으로 세간의 이목을 끌었다면, 플렉스는 완전하게 갖춘 세트 위에서 우아하게 움직이는 세련미로 눈길을 끈다. 비슷한 시기에 경쟁적으로 등장한 이 두 기술이 대결할 것인지, 협력할 것인지, 아니면 서로 완전히 다른 길을 갈 것인지는 예측하기 힘들다. 하지만 플렉스는 차세대 웹 개발의 현장에서 우위를 선점하려면 반드시 익혀야 할 기술이라고 단언할 수는 있다.

하지만 기술이 대중적인 인기를 얻고 발전하기 위해서는 입문서부터 고급 활용서까지 다양한 레퍼런스가 필요하다. 국내에는 아직 플렉스를 주제로 한 책이 없는 상황에서 『예제로 배우는 Adobe 플렉스 2』의 발간 소식은 너무나 반가운 소식이었다. 예제를 통해 플렉스의 기본 기능을 습득할 수 있는 형식은 기술을 처음 보급하는 차원에서 가장 적합한 형태라고 생각한다. 이 책의 장점은 기본 예제를 통해서 플렉스와 플렉스 빌더의 세세한 기능을 설명하고 플렉스 기본에 충실하고 있다는 점이다.
어도비 코리아에서 플렉스 컨설턴트로 활동하고 있는 저자는 자신의 많은 고민과 현장 경험에서 우러나온 내용을 바탕으로 단지 코드 하나 더 소개하는 얕은 수준이 아니라 플렉스로 뭔가를 보여주고자 하는 넓은 시각에서 책을 집필했다. 기술적인 욕심을 버리고 기본 예제 중심의 기술서를 만드는 과정은 매우 지루하고 고된 작업이었을 것이다. 이 작업을 끝까지 마무리한 저자의 용기와 노력에 박수를 보내고 싶다. 부디 『예제로 배우는 Adobe 플렉스 2』가 미래 고급 플렉스 개발자들의 시작점이 되었으면 하는 바람이다. 플렉스를 배워보고 싶다고 말하는 주위 개발자들에게 이제는 할말이 생긴 것 같다. 이 책과 함께 플렉스의 세계에 흠뻑 빠져들기를 바란다.

[ 감수자 소개 ]

허광남
okjsp.pe.kr 운영자. 프로그램을 만들며 생계를 유지하는 일에서 인생의 희로애락을 느끼고 산다. 현재는 GS홈쇼핑 EC 정보팀에서 과장으로 오버하며 살고 있다. 간간히 okjsp 사이트를 통해서 동시대 개발자들과 사는 얘기와 정보를 공유하고 있다.

김태완
프로자바(pro-java.com)의 운영자와 JCO(javacommunity.org)의 운영위원으로 활동하고 있다. 오픈소스 기반 RAD와 오픈소스를 이용한 수익모델에 관심이 많다. 현재 대우정보시스템에 재직 중이다.

목차

목차
  • 제1부 플렉스 2 준비 코스
  • 1장 리치 인터넷 애플리케이션의 표준, 플렉스
    • 1.1 리치 인터넷 애플리케이션의 등장
    • 1.2 플렉스의 탄생
      • 1.2.1 플렉스란?
      • 1.2.2 플렉스와 플래시
    • 1.3 플렉스의 역사
      • 1.3.1 플렉스 1
      • 1.3.2 플렉스 1.5
    • 1.4 웹의 역사를 다시 쓰는 플렉스 2
      • 1.4.1 플렉스 2의 구성
      • 1.4.2 왜 플렉스 2인가?
      • 1.4.3 웹 2.0을 위한 플렉스 2
    • 1.5 요약
  • 2장 플렉스 개발 맛보기
    • 2.1 플렉스 개발환경 구축
      • 2.1.1 플렉스 개발환경 구축시 체크할
      • 2.1.2 실습을 위한 환경설정
      • 2.1.3 플렉스 빌더 2 설치
      • 2.1.4 플렉스 데이터 서비스 2 설치
      • 2.1.5 기존 WAS에 플렉스 데이터 서비스 2 설치하기
      • 2.1.6 플렉스 2 SDK 설치
      • 2.1.7 플렉스 2 SDK 사용법
      • 2.1.8 플렉스 차팅 2 설치
    • 2.2 Hello Flex! 79
      • 2.2.1 플렉스 프로젝트 생성
      • 2.2.2 화면 구성
      • 2.2.3 HelloFlex 실행
    • 2.3 요약
  • 제2부 플렉스 2 기초 코스
  • 3장 플렉스 빌더 2: 플렉스 2를 위한 최적의 개발툴
    • 3.1 플렉스 빌더 2 인터페이스 구성
      • 3.1.1 워크벤치
      • 3.1.2 퍼스펙티브
      • 3.1.3 뷰
      • 3.1.4 에디터
    • 3.2 플렉스 빌더를 이용한 개발
      • 3.2.1 Flex Development 퍼스펙티브
      • 3.2.2 네비게이터 뷰를 이용한 파일과 프로젝트 관리
        • 3.2.2.1 프로젝트 관리
        • 3.2.2.2 프로젝트 내의 리소스 관리
        • 3.2.2.3 프로젝트 속성 관리
      • 3.2.3 MXML 에디터를 이용한 플렉스 화면 디자인
      • 3.2.4 스테이트 뷰를 이용한 화면 전환
      • 3.2.5 프로퍼티 뷰를 이용한 플렉스 컴포넌트 속성 관리
      • 3.2.6 아웃라인 뷰를 이용한 플렉스 컴포넌트 중첩 관계 보기
      • 3.2.7 컴포넌트 뷰를 이용한 컴포넌트 리스트 보기
      • 3.2.8 프러블럼 뷰를 이용한 에러 코드 수정
    • 3.3 플렉스 디버깅
      • 3.3.1 Flex Debugging 퍼스펙티브
      • 3.3.2 디버그 뷰
      • 3.3.3 콘솔 뷰
      • 3.3.4 브레이크포인트 뷰
      • 3.3.5 베리어블 뷰
      • 3.3.6 익스프레션 뷰
    • 3.4 요약
  • 4장 MXML을 이용한 플렉스 컴포넌트 사용
    • 4.1 플렉스 기본 문법
      • 4.1.1 MXML의 기본 문법
      • 4.1.2 XML의 개념 이해
    • 4.2 MXML과 플렉스 컴포넌트의 관계 이해
    • 4.3 플렉스 컴포넌트의 기본
      • 4.3.1 컨트롤 컴포넌트
        • 4.3.1.1 Button
        • 4.3.1.2 LinkButton
        • 4.3.1.3 CheckBox
        • 4.3.1.4 RadioButton
        • 4.3.1.5 RadioButtonGroup
        • 4.3.1.6 ColorPicker
        • 4.3.1.7 DateChooser
        • 4.3.1.8 DateField
        • 4.3.1.9 HSlider/VSlider
        • 4.3.1.10 NumericStepper
        • 4.3.1.11 Label
        • 4.3.1.12 Text
        • 4.3.1.13 TextArea
        • 4.3.1.14 TextInput
        • 4.3.1.15 RichTextEditor
        • 4.3.1.16 Image
        • 4.3.1.17 SWFLoader
        • 4.3.1.18 ProgressBar
        • 4.3.1.19 VideoDisplay
      • 4.3.2 데이터를 함께 보여주는 컨트롤
        • 4.3.2.1 데이터 바인딩
        • 4.3.2.2 ComboBox
        • 4.3.2.3 Tree
        • 4.3.2.4 List
        • 4.3.2.5 TileList
        • 4.3.2.6 HorizontalList
        • 4.3.2.7 DataGrid
      • 4.3.3 데이터 모델
        • 4.3.3.1 배열 데이터의 표현
        • 4.3.3.2 XML 데이터의 표현
      • 4.3.4 레이아웃 컨테이너
        • 4.3.4.1 네비게이터 컨테이너
      • 4.3.5 차트 컴포넌트
        • 4.3.5.1 데이터 보는 방법에 따른 차트의 종류에 대한
        • 4.3.5.2 차트 속성에 대한 이해
        • 4.3.5.3 차트가 사용할 데이터 구조의 이해
    • 4.4 요약
  • 5장 액션스크립트 3.0
    • 5.1 액션스크립트 소개
      • 5.1.1 액션스크립트의 버전
      • 5.1.2 액션스크립트 3.0의 특징
    • 5.2 MXML에서 액션스크립트의 사용
    • 5.3 액션스크립트의 문법
    • 5.4 클래스 선언
      • 5.4.1 패키지 선언
      • 5.4.2 클래스의 정의
      • 5.4.3 클래스 변수 종류: 인스턴스, 로컬, 스태틱
      • 5.4.4 클래스 생성자
      • 5.4.5 클래스의 확장
    • 5.5 액션스크립트 연산자
    • 5.6 이벤트 처리
      • 5.6.1 시스템에서 발생하는 이벤트
      • 5.6.2 사용자의 동작과 관련된 이벤트
      • 5.6.3 이벤트 객체
    • 5.7 액션스크립트 실전 예제
      • 5.7.1 키보드 이벤트 처리 예제
      • 5.7.2 단축키 처리 예제
      • 5.7.3 Click 이벤트 및 MenuEvent 처리 예제(계산기)
      • 5.7.4 Mouse 이벤트 처리 예제(달력)
    • 5.8 요약
  • 제3부 플렉스 2 핵심 코스
  • 6장 RIA를 위한 플렉스 스타일
    • 6.1 플렉스 화면 구성 가이드
      • 6.1.1 플렉스 화면 구성 원칙
      • 6.1.2 플렉스 화면을 구성할 때 피해야 할 요소
    • 6.2 플렉스 화면 구성 작업
      • 6.2.1 화면 크기 정하기
        • 6.2.1.1 Size 속성 설정
        • 6.2.1.2 Layout Constraints 속성 설정
      • 6.2.2 화면 분할
        • 6.2.2.1 수직/수평으로 화면을 분리할 때:
        • 6.2.2.2 컴포넌트 레이아웃에 따른 사이즈 결정 원리
        • 6.2.2.3 가로 세로로 들어갈 컴포넌트들을 나열해서 보여줄 때:
        • 6.2.2.4 기타 컨테이너
        • 6.2.2.5 컨테이너 속성 설정을 통한 레이아웃 설정
      • 6.2.3 적절한 컨트롤의 사용
      • 6.2.4 화면 전환
    • 6.3 이펙트의 활용
      • 6.3.1 어떤 경우에 이펙트를 줄 것인가?
      • 6.3.2 어떤 이펙트를 줄 것인가?
      • 6.3.3 적용하는 이펙트의 속성을 어떻게 변화시킬까?
        • 6.3.3.1 이펙트의 속성 시작값과 종료값의 변화
        • 6.3.3.2 이펙트가 플레이되는 시간: duration
        • 6.3.3.3 이펙트 적용 수치 변화: easingFunction
        • 6.3.3.4 이펙트 적용 대상: target, targets
        • 6.3.3.5 컴포지트 이펙트
    • 6.4 플렉스 스타일
      • 6.4.1 스타일과 프로퍼티
      • 6.4.2 컴포넌트 공통 스타일
        • 6.4.2.1 폰트 관련 스타일
        • 6.4.2.2 외부 간격 스타일
        • 6.4.2.3 내부 내용간 간격 설정 스타일
        • 6.4.2.4 내부 컴포넌트들 간의 간격 설정
      • 6.4.3 컨트롤 계열에 적용 가능한 스타일
        • 6.4.3.1 아이콘 설정 관련 스타일
        • 6.4.3.2 스킨 설정 관련 스타일
        • 6.4.3.3 컴포넌트 내부 글자 설정 관련 스타일
      • 6.4.4 컨테이너 계열에 적용 가능한 스타일
        • 6.4.4.1 배경 설정 관련 스타일
        • 6.4.4.2 테두리 설정 관련 스타일
      • 6.4.5 스타일 상속
      • 6.4.6 스타일 적용
        • 6.4.6.1 MXML 태그에서 스타일 정의
        • 6.4.6.2 CSS에서 스타일 정의
        • 6.4.6.3 액션스크립트에서 스타일 정의
        • 6.4.6.4 getStyle()과 setStyle() 메소드
    • 6.5 플렉스 프로젝트별 스타일 구현 방안
      • 6.5.1 플렉스 프로젝트별 스타일 접근 방향
      • 6.5.2 플렉스 스타일의 일괄 정의 방법: 테마
      • 6.5.3 플렉스 애플리케이션에 테마 적용 방법
    • 6.6 요약
  • 7장 플렉스 데이터 연동
    • 7.1 플렉스 데이터 연동 개요
      • 7.1.1 플렉스 데이터 연동 원리
        • 7.1.1.1 플렉스가 제공하는 데이터 연동 방법
        • 7.1.1.2 플렉스의 데이터 통신 방식 비교
        • 7.1.1.3 HTTP서비스 방식
        • 7.1.1.4 웹서비스 방식
        • 7.1.1.5 RemoteObject 방식
        • 7.1.1.6 데이터 서비스 방식
    • 7.2 HTTP서비스
      • 7.2.1 HTTP서비스의 API 개요
      • 7.2.2 XML 데이터를 HTTP서비스로 연결하기
      • 7.2.3 crossdomain.xml
      • 7.2.4 result 이벤트와 fault 이벤트에 대한 핸들러
      • 7.2.5 DB쿼리 결과를 XML로 리턴하는 JSP와 연동
      • 7.2.6 JSP 프로그램에 파라미터 전송하기
      • 7.2.7 Named HTTP서비스
        • 7.2.7.1 config 파일 설정
        • 7.2.7.2 Named HTTP서비스의 예제
      • 7.2.8 액션스크립트를 이용한 HTTP서비스 호출
    • 7.3 웹서비스
      • 7.3.1 웹서비스의 API 개요
      • 7.3.2 자바 웹서비스의 호출 예제
      • 7.3.3 액션스크립트를 이용한 웹서비스의 호출 예제
      • 7.3.4 닷넷 웹서비스의 호출 예제
    • 7.4 RemoteObject
      • 7.4.1 RemoteObject의 API 개요
      • 7.4.2 RemoteObject의 기본 예제
      • 7.4.3 RemoteObject를 사용하는 플렉스 애플리케이션 작성
      • 7.4.4 다중 메소드 RemoteObject의 사용 예제
        • 7.4.4.1 RemoteObject 사용 환경 설정
        • 7.4.4.2 다중 메소드를 호출하는 RemoteObject 플렉스 애플리케이션 작성
      • 7.4.5 액션스크립트를 이용한 RemoteObject의 사용 예제
    • 7.5 메시지 서비스
      • 7.5.1 메시지 서비스의 API 개요
        • 7.5.1.1 Producer
        • 7.5.1.2 Consumer
      • 7.5.2 메시지 서비스를 이용한 채팅 예제 구현
        • 7.5.2.1 메시지 서비스 구현을 위한 환경 설정
        • 7.5.2.2 메시지 서비스를 이용한 플렉스 채팅 애플리케이션 작성
      • 7.5.3 메시지 서비스를 이용한 실시간 모니터링 예제 구현
        • 7.5.3.1 데이터를 공급하는 자바빈즈 구현
        • 7.5.3.2 Feed 클래스 컨트롤을 위한 RemoteObject 설정
        • 7.5.3.3 메시지 서비스에서 사용할 RTMP 채널 설정
        • 7.5.3.4 모니터링을 위한 플렉스 애플리케이션 작성
    • 7.6 데이터 관리 서비스
      • 7.6.1 DataService의 API 개요
      • 7.6.2 DataService를 이용한 데이터 동기화 예제 구현
        • 7.6.2.1 MemberDAO 클래스 작성
        • 7.6.2.2 MemberAssembler 클래스 작성
        • 7.6.2.3 MemberAssembler 클래스에 대한 destination 설정
        • 7.6.2.4 DataService를 사용하는 플렉스 애플리케이션 작성
    • 7.7 요약
  • 제4부 플렉스 2 응용 코스
  • 8장 플렉스 커스텀 컴포넌트
    • 8.1 커스텀 컴포넌트 개요
      • 8.1.1 커스텀 컴포넌트란?
      • 8.1.2 커스텀 컴포넌트를 만드는 이유
      • 8.1.3 상용 커스텀 컴포넌트
      • 8.1.4 컴포넌트화와 코딩 철학
    • 8.2 MXML 컴포넌트
      • 8.2.1 MXML 컴포넌트의 개요
      • 8.2.2 기본 컴포넌트를 확장한 MXML 컴포넌트 만들기
        • 8.2.2.1 프로젝트 생성
        • 8.2.2.2 폴더 생성
        • 8.2.2.3 MXML 컴포넌트 정의 패널 열기
        • 8.2.2.4 MXML 컴포넌트의 속성과 함수 정의
        • 8.2.2.5 메인 애플리케이션에서 MXML 컴포넌트의 사용
      • 8.2.3 사용자 정의 이벤트를 이용하는 MXML 컴포넌트 만들기 8.2.3.1 사용자 정의 이벤트의 의의
        • 8.2.3.2 사용자 정의 이벤트 발생시키기
        • 8.2.3.3 사용자 정의 이벤트 만들기
    • 8.3 액션스크립트 컴포넌트
      • 8.3.1 액션스크립트 컴포넌트의 개요
      • 8.3.2 액션스크립트 컴포넌트 만들기
        • 8.3.2.1 액션스크립트 프로젝트 생성
    • 8.4 SWC 컴포넌트
      • 8.4.1 SWC 컴포넌트의 개요
      • 8.4.2 SWC 컴포넌트 만들기
        • 8.4.2.1 프로젝트 기본 정보 정의
        • 8.4.2.2 액션스크립트 클래스 정의
        • 8.4.2.3 액션스크립트 클래스 수정
        • 8.4.2.4 액션스크립트 클래스를 SWC 컴포넌트에 포함
      • 8.4.3 다른 프로젝트에서 SWC 컴포넌트 사용하기
    • 8.5 플렉스 빌더 컴포넌트 뷰 바꾸기
      • 8.5.1 플렉스 빌더 컴포넌트 뷰 설정의 필요성
      • 8.5.2 플렉스 빌더 컴포넌트 뷰 설정 파일
      • 8.5.3 커스텀 컴포넌트의 아이콘 설정
    • 8.6 요약
  • 9장 플렉스 실전 프로젝트 팁
    • 9.1 플렉스 프로젝트 노하우
      • 9.1.1 플렉스 프로젝트 특성의 이해
        • 9.1.1.1 베스트 유저 인터페이스의 3요소
        • 9.1.1.2 플렉스 프로젝트의 유형
        • 9.1.1.3 플렉스 프로젝트 태스크
      • 9.1.2 플렉스 프로젝트 팀원의 구성
        • 9.1.2.1 플렉스 프로젝트 역할 정의
        • 9.1.2.2 플렉스 프로젝트 업무영역의 중첩성
    • 9.2 플렉스 프레임웍
      • 9.2.1 프레임웍의 필요성
      • 9.2.2 캔곰 프레임웍의 구성
      • 9.2.3 캔곰 프레임웍의 작동원리
      • 9.2.4 캔곰 프레임웍의 구현
        • 9.2.4.1 캔곰 프로젝트 생성
        • 9.2.4.2 캔곰 폴더 만들기
      • 9.2.5 캔곰 프레임웍 예제 작동
    • 9.3 에디트플러스에서 플렉스 개발 환경 구축
    • 9.4 플렉스 개발 관련 에러 메시지와 해결 방법
    • 9.5 플렉스 참고 자료
      • 9.5.1 플렉스 참고 예제
      • 9.5.2 플렉스 관련 즐겨찾기 정리

관련 블로그 글

"예제로 배우는 플렉스" 스터디그룹 문이 열렸습니다!

사용자 삽입 이미지

예제로 배우는 Adobe 플렉스』저자 옥상훈님이 "예제로 배우는 플렉스 STUDY GROUP" 사이트를 열었습니다. 개정판이 나온 뒤로 절판된 『예제로 배우는 Adobe 플렉스 2』를 펴낼 2년 전부터 독자들을 위한 사이트를 만들겠다고 공언하셨는데, 드디어 여러분께 선을 보이게 됐습니다.

저희 도서정보페이지 메뉴에도 토론방 코너가 있어서 책을 읽은 독자 여러분의 질문을 받아 답변을 해드렸습니다. 저희 책 중에 유례가 없을 정도로 많은 질문이 올라왔고 저자 옥상훈님께서도 성의껏 답변을 올려주셨습니다. 허나 사람이 하는 일인지라 간혹 저자분의 사정이나 일정에 따라 조금 늦게 답변이 올라오기도 했는데 조금 불편함을 토로하는 독자분도 계셨습니다. 만에 하나, 조금 불만족스러우셨더라도 많은 양해를 바라며 그간 토론방을 이용해주신 독자분들께 감사의 말씀을 올립니다.

토론방 기능은 책을 읽은 독자들이 저자나 역자에게 질문을 올리고 답변을 구하는 과정을 원활히 제공해드리기 위해서 만들었습니다. 대부분 책을 읽으면서 부족한 부분이나 보충질문, 궁금한 점에 대해 질문을 받곤 하는데 때로는 책 내용을 넘어선 전체적인 개발 프로세스 등에 대한 질문을 받는 경우도 있어 최대한 성실히 답해드리기는 하지만, 그런 경우에는 답변을 제공해드리기가 쉽지 않으니 될 수 있으면 책에 국한된 내용을 올려주시면 감사하겠습니다.

역서의 경우에도 최근엔 역자분들의 해당 기술에 대한 이해도도 월등히 높고 성실하고 이해도 높은 번역서를 추구하기에 저희가 미처 관리하기 힘들 정도로 많은 질문이 올라옵니다. 하지만 대체로 저서에 대해서 질문이 올라오는 경우가 많구요. 『스트럿츠2 프로그래밍』의 저자 현철주님이 운영하시는 "아첸 자바 커뮤니티"에서도 자바 스터디 코너에 스트럿츠 2 책 오탈자 및 질문, 정보를 제공하는 게시판을 제공하고 있습니다.

플렉스 스터디 그룹의 공지글을 읽어보시면 아시겠지만 앞으로 이 사이트에서는 책에 대한 질문을 올리고 답변을 받거나, 책 후기를 쓰거나, 내용 추가 건의를 할 수도 있습니다. 저자분도 앞으로 교재에 대한 강좌, RIA 구축사례를 소개하고 자료실에서 다양한 액션스크립트 예제, 플렉스 컴포넌트 자료, AIR 위젯자료 등을 공유할 예정이라고 하니 많은 기대를 바랍니다. 한 가지 재미있는 메뉴가 눈에 띄는데요. 개발자 영어특강이라고, 지금은 Hello World! 정도의 간단한 예문이 올라와 있지만 앞으로 재미있는 글이 많이 올라올 거라 저도 기대해봅니다. 어디까지나 "기초부터 공유하자"는 취지이니 영어의 달인들께서는 재미있는 내용이 있으면 팁을 날려주시구요.

[##_1L|1003542164.jpg|width="80" height="80" alt="사용자 삽입 이미지"|_##]좋은 사이트 만들어 책을 읽는 독자분께 만족스런 A/S를 제공해드리고자 열심히 운영하겠다는 저자 옥상훈님께 감사와 응원을 함께 전합니다. "저자님, 우리 이제 더 잘 되겠죠?"^^ 에이콘도 A/S에 늘 앞장서는 출판사로서 늘 독자분과 함께하겠습니다. 몸값을 올린다는 호언에 힘입어서인지 출간된 지 얼마 되지 않은『새로 보는 프로그래밍 언어』가 벌써부터 독자분들의 뜨거운 사랑을 받고 있습니다. 저자 민병호님의 말로는 이 책은 내맘대로 디지털틱한 책인지라 99%를 이해하셨어도 100%를 이해하기 전까지는 몸값 올라가지 않는 거라고 하시네요. 믿거나 말거나 말입니다요. 하지만 저희 에이콘 못 믿으시는 건 아니죠? 쿨럭;

어쨌든, "예플(예쁘기 그지없는?? 플렉스 책) 스터디 그룹"에 독자 여러분의 많은 성원 바라겠습니다. "하루에 글 하나씩" 올리기 원칙을 세우셨다고 하니 잘 지키시나 지켜봐드리자구요~ ^^/

▶▷▶▷ 예제로 배우는 플렉스 스터디 그룹으로 바로가기

CC

크리에이티브 커먼즈 라이센스 이 저작물은 크리에이티브 커먼즈 코리아 저작자표시 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.

플렉스 증쇄 자축! 박수, 짝짝짝..

지난 해 9월 말에 출간한 『예제로 배우는 Adobe 플렉스 2』의 증쇄를 찍었습니다.
초판인쇄 분량도 통상적인 기본 인쇄수량보다 많았으니, 넉 달 남짓한 짧은 기간 동안 많은 분이 사보시고 호평도 주신 덕분에 좋은 결과 얻을 수 있었던 것 같습니다.

이번 판 저자 소개 페이지에는 얼마전에 득남한 저자 옥상훈님과 귀여운 붕어빵 아들의 사진으로 바꿔 넣었습니다. :)


몇 가지 오류 사항도 수정했고, 또한 '플렉스 빌더, 데이터 연동, 플렉스 2.0.1 버전, 아폴로, 우리 책'과 관련해 독자분들이 저희 도서 정보 페이지 "토론방"에 올려주신 많은 문의사항과 저자의 답변 등을 한데 모아 책 뒷부분에 추가해서 실었습니다. 혹여 초판을 사신 열혈 독자분들이 서운해하실까봐 팬 서비스(!)의 일환으로 PDF로 만들어 도서 정보 페이지에 올려두었으니 참고해 보시기 바랍니다.
올라오는 질문마다 정성껏 답변 해주시는 저자 OkGosu님, 감사합니다! (한턱 쏘세요~) ㅎㅎ

CC

크리에이티브 커먼즈 라이센스 이 저작물은 크리에이티브 커먼즈 코리아 저작자표시 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.

『예제로 배우는 플렉스 2』 날개를 달다~!
한국은 플렉스에 열광하고 있다!

『Programming Flex 2』가 플렉스 2 애플리케이션 개발에 관한 첫 책이란 글을 쓴 적이 있는데, 내 말이 틀린 것 같다. 첫 번째 플렉스 2 책은 이미 출간된 것 같으니... 것도 한국어로 된 책이다.

한국에 있는 플렉스 커뮤니티에 대해 좋은 이야기를 많이 들어왔는데, 언젠가 꼭 한번 가보고 싶다.


mannu라는 블로거가 저희 플렉스 책에 대해서 쓴 글이 있더군요.
너무 쉬운 영어라 한글로 옮긴 점 양해해주시고 원문을 보아주세요~ ^^;

아마도 네이버 FlexComponent 카페 회원님들의 폭넓은 교류 덕분에 플렉스 2 책이 날개를 단 게 아닐까 싶네요. 감사합니다. ^-^

여하튼 상쾌한 아침, 기분 좋은 소식이었습니다.
CC

크리에이티브 커먼즈 라이센스 이 저작물은 크리에이티브 커먼즈 코리아 저작자표시 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.

플렉스 책 드디어 두 손에!

우여곡절 많던 플렉스 책이 드디어 도착했습니다. 따끈따끈한 책 개봉합니다.

웹 2.0 식 뒷표지 디자인..

화사한 내지. 아리따운 그녀 니콜 키드만이 돋보이는군요. ^^

(여기서 미스코리아 당선소감식 멘트 한마디 잊을 수 없네요.)
내 일처럼 산파역할을 톡톡히 해준 M사의 정아무개님, 일사천리로 상황정리해주신 어도비 공라경부장님.
그 많은 시간 동안 가장 고생 많이 하신 주인공 옥상훈님, ('든 사람은 몰라도 난 사람은 안다'고.. 책 마감 때마다 느끼는 거지만 안 오시니 사무실이 많이 허전하네요.) 도원결의하여 감동적인 우애를 보여준 OK 패밀리 허광남님, 김태완님. 그리고 우리 에이콘 식구들. 모두 감사합니다. 고생 많으셨습니다. 오늘 '리눅스 문제 분석과 해결' 마감일입니다. 오늘은 밤까지 상시 대기 모드이니, 축하해주실 분들 서슴없이 찾아오세요.

무엇보다도 많은 성원 보내주신 독자 여러분께 감사하며 앞으로도 많이 사랑해주시기 바랍니다.  열심히 노력했지만 더러 흠도 있을 것입니다. 미흡한 점이 있다면 언제든지 따끔한 일침 감사히 받겠습니다.

CC

크리에이티브 커먼즈 라이센스 이 저작물은 크리에이티브 커먼즈 코리아 저작자표시 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.

[예제로 배우는 플렉스 2]뜨거운 반응 속에 예약판매중!
예제로 배우는 플렉스 2-리치 인터넷 애플리케이션의 첫 걸음』는 플래시는 어느 정도 알고 있는 플렉스 초보 개발자들을 위한 입문서입니다. 하나씩 간단한 예제를 따라 해보면서 플렉스 2에 대한 개념을 파악하고 RIA를 제작하는 기틀을 마련할 수 있게 하기 위함이 가장 큰 목적입니다. 무엇보다도 어도비 플렉스 컨설턴트인 옥상훈님이 강연하고 잡지에 기고해왔던 모든 내용이 녹아 있는 책입니다.

9월 15일 출간 예정인 『예제로 배우는 플렉스 2』는 현재 교보문고, YES24, 강컴, 인터파크 4개 서점에서 절찬리에 예약판매중입니다. 그동안 갈증을 느껴왔던 분야의 책이어서 그런지 독자분들의 열기가 후끈 달아오르고 있습니다. 그만큼 저자분과 저희 편집팀의 어깨가 더욱 무거워집니다.

어느 작업이든 100% 만족을 할 수는 없을 겁니다. 저희 책에서도 약간의 보완할 내용이 있어서 어제, 아니 오늘 새벽4시까지 감수자인 kenu님과 okcode님, 저자 옥상훈님과 열띤 편집 회의를 거쳐, 독자분들께 죄송스럽지만 출간일을 1주일 정도 연기하기로 결정했습니다. 이미 예약판매를 하신 독자분들께 다시 한번 죄송하다는 말씀을 드리며, 좋은 책을 만들기 위함이니 이 점 양해해주시면 정말 감사하겠습니다. 출간 예정일은 9월 22일로 잡아 두었습니다만 인터넷 서점에서는 25일 정도에 발송이 될 예정이며, 자세한 일정은 블로그를 통해 다시 알려드리겠습니다.

아, 그건 그렇고 2주동안의 강행군을 거쳐 출간연기를 하게 되니 게임회사 이야기의 만화 한 컷이 떠오르는군요. 사실 게임회사 이야기가 그토록 인기를 얻은 건 비단 게임회사만의 이야기가 아니었기 때문일 겁니다. ㅡ.ㅡ

CC

크리에이티브 커먼즈 라이센스 이 저작물은 크리에이티브 커먼즈 코리아 저작자표시 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.

도서 오류 신고

도서 오류 신고

에이콘출판사에 관심을 가져 주셔서 고맙습니다. 도서의 오탈자 정보를 알려주시면 다음 개정판 인쇄 시 반영하겠습니다.

오탈자 정보는 다음과 같이 입력해 주시면 됩니다.

(예시) p.100 아래에서 3행 : '몇일'동안 -> 며칠동안

정오표

[ p4 2행 ]
공수가 가장 많이 들어가는 것이 있이 뭘까?
→ 공수가 가장 많이 들어가는 것이 뭘까?

[ p63 표 2-4 ]
다섯 번째 항목 '소프트웨어 다운로드 경로' URL 끝의 '소프트웨어 설치정보'가 삭제돼야 합니다.

[ p130 예제 3-1 12행 ]
12: change="mx.controls.Alert.show('My Flex!')">
→ 12: change="showMsg.Alert.show('My Flex!')">

[ p152 그림 3-96 교체 ]


[ p179 코드 12행 ]
maxYeay="2100" → maxYear="2100"

[ p199 예제 4-9 아래에서 5행 ]
변수 baindableVar와 → 변수 bindableVar

[ p223 ■ 항목 중 1행 ]
수평(Horizontal) 방향 배치 : HBox, HDvidedBox → 수평(Horizontal) 방향 배치 : HBox, HDividedBox

[ p252 마지막 행 ]
플렉스의 모든 컴포넌트는 Sprite라는 클래스를 기초가 되는 만들어졌다.
→ 플렉스의 모든 컴포넌트는 Sprite라는 클래스를 기초로 만들어졌다.

[ p371 표 7-1 아래로 5-6행 ]
전자 → 후자
후자 → 전자

[ 부록 CD 4장 예제 파일 ]
예제 4-8의 예제 파일이 없습니다.
CODE4_8은 예제 4-9, CODE4_9는 예제 4-10, ... , CODE4_22는 예제 4-23의 예제 파일입니다.

▶ 예제 4-8의 예제 파일은 위의 다운로드 버튼을 클릭하시면 다운 받으실 수 있습니다.