1. 어플 구조
   - Presentation Logic
   - Business Losic
   - Data Acees Losic
 

1970년대
메인프레임(서버) 안에 모든 3가지 로직이 다들어가있음
사용자는 서버에 접속하여 함
단점 : 사용자가 늘어남에 따라 한계발생

1980년대
C/S(two-tier)
DB서버 (RDBMS)만 있음  사용자는 PC에서  PresentationLosic Data Acees Losic 를 함
가능 이유 PC 성능 향상

1980년대 지나면서
C/S(three-tier)
C/S 에 문제 발생 유지보수 힘듬 업그레이드 힘듬
DB서버 (RDBMS)에다가
Application 서버 에서 business Logic이 들어가서 생김 (업무 처리 서버)
    ex)웹이면 WAS 라고함
PC 쪽에서 브라우저만으로 실행시켜줘 하면 된다.

웹에서 링크를 클릭하고 로딩하고 이런게 너무 불편하다. 사용자와 상호작용이 너무 평이하다

이러한 요구 사항이 요구되게 되고 이러하다가 RIA가 등장



RIA의 전제 조건

1. 페이지 기반 아키텍쳐에서 탈피

2. client server와의 상호작용 및 확장 용이
xml을 이용한 데이터 교환

3. 서버측과 투명한 분리 제공
rpc기술을 이용하여 요청및 응답 데이터 교환

4. 오프라인일 때도 사용 가능


RIA의 이점

 1. Business Managers
  - 링크에서 좀도 빨라지니까 업무처리 증가 생산성 증가
 
 2. IT Organizations
  - 페이지기반의 아키텍쳐의 개선 ->웹서버 로드 감소 네트워크 트래픽 감소
  - 애플리케이션 유지용이 및 개발시간 감소 

 3.End Users
  - 페이지 찾고 로딩하는 시간이 없음
  - 데스크톱과 유사하게 동작

RIA의 기술들

1.Ajax,  Flex,  WPF(Silverlight)...등등

FLEX의 장점

- 강력한 OOP특징을 지원하는 Actionscript3.0사용
- xml기반으로 만들어진 mxml로 사용자 UI를 손쉽게 개발
- HTTP,RPC,웹서비스 등 다양한 서버 연동 기술 제공
- OS및 브라우저 비 호환 문제 해결


Flex 개요

1.1 MXML
  -XML기반의 마크업언어
2. Actionscript
- ui컴포넌트 및 객체 제어
3. FlashPlayer
  -SWF파일 실행 엔진
4. FlexBuilder
5. LiveCycle Data Service

Flex 동작원리

1. 개발자가 SWF파일을 만들어서 서버에 보관 

  사용자는 SWF파일을 받아서 화면에 출력

2. 사용자가 서버에 데이타 요청

  서버에서 DB에 데이터 요청

  받아서 다시 사용자에게 데이타 응답



왜 Flex를 사용하는가?

- 일발적인 어플같이
 
- 보안성

- 유지보수

- 사용자 편의성

'★Programming★ > FLEX' 카테고리의 다른 글

ADOBE FLEX Lesson1  (0) 2010.09.11
HTTPService ?  (0) 2010.09.10
Flex의 개요  (0) 2010.09.10
보안 이슈 이해하기  (0) 2010.09.08
URL ?  (0) 2010.09.08
RPC  (0) 2010.09.08

-HTTP프로토콜을 사용해 특정URL을 호출하여 XML데이터를 전달 받을 수있는 방식으로 WAS를 구성하지 않아도 되며 쉽게 사용할 수 있다.
                     (보안 이슈 참고 해서 보안 이해)

-mx.rpc.http.mxml.HTTPService 패키지에 포함

-HTTPService 인스턴스 .send() 메소드를 이용해 호출

-HTTPService 인스턴스 .lastResult 속성으로 XML 결과값을 참조 할 수 있다.

-event.result 이벤트를 사용해도 XML 결과값을 참조

'★Programming★ > FLEX' 카테고리의 다른 글

ADOBE FLEX Lesson1  (0) 2010.09.11
HTTPService ?  (0) 2010.09.10
Flex의 개요  (0) 2010.09.10
보안 이슈 이해하기  (0) 2010.09.08
URL ?  (0) 2010.09.08
RPC  (0) 2010.09.08
1. Flex란
  - flash 기반의 컴포넌트 프로그래밍이다.

2. Flash의 발전 과정 

  Flash3   -->Flash4   -->Flash5       --->            
                   * Smart Client 등장( 졸라맨, 엽기토끼 등  

 Flash MX     -->          Flash MX 2004 Professional   -->
   * Component 가 나옴, 태그기반의 마크업 언어 만들기 시작.
   * AS(ActionScript)1.0 도입

  Flash8                                  -->Flash9      ->Flash10                        
   * AS2.0 (OOP개념 도입) 도입           *AS3.0 도입
  *   8ball                                         *CS3


3.  Flex  로 개발할 때 주의할 점
* 분석, 설계 단계에서 Flex를 고려해라(html과 똑같은 화면을 만들지 말아라)

  -->RIA 다운 어플리케이션을 만들어라

* 엔터프라이즈 관점에서 Flex를 봐라 (엔터프라이즈에서 무엇이 필요할지)


4. AS1.0, AS2.0, AS 3.0 의 발전과정

*AS2.0에서 부터 OOP개념을 도입함(Class, extend 사용)

 *AS3.0에서는 AS2.0에서의 OOP개념에 대한 기능을  좀 더 추가함(속도가 10배 빨라짐)

5. Flex 런타임 클라이언트

*Adobe AIR :데스크탑 환경에서 필요로 하는 기능 위한 환경. swf 없이도 실행된다.

*Flash player : 웹환경에서  필요로 하는 기능들을 제공한다.(예)보안

*Flasg Light : 모바일 환경에서 필요로 하는 기능들을 제공한다. 예) 진동


6.
AVM(ActionScirpt Virtual Machine)

* 액션스크립트 가상머신(AVM)은 자바가상머신(JVM)이 자바를 실행시키 듯 액션스트립트 프로그램을 실행시키는 모듈로 플래시 플레이어, AIR, 플래시 라이트에 내장되어 있는 소프트웨어 모튤이다.

* AVM는 두가지 버전이 있는데 AS1.0과 AS2.0코드를 실행하기 위한 AVM1과 AS3.0코드를 실행하기 위한 AVM2가 있다. 


7. Flex 와 Flash의 관계와 차이점.
*초창기에는 Flash와 Flex는 비교대상이였다. 하지만 이 둘은 비교 대상이 아니라 협업관계이다
  (flash를 사용하여 Flex를 더 풍부하게 만들  수 있고,또한 flash를 사용하여 Flex를 더 풍부하게 만들  수 있다.)

*Flash는 드로잉툴과 AS을 사용해서 각종도형과 컴포넌트들을  swf을 object로 갖고있는  html로 변환하여 Web Server에 올라간다. (디자이너가 선호)

*Flex는 MXML과 AS를 사용해서 Flash로 만든 컴포넌트들을 swf을 object로 갖고있는  html로 변환하여 Web Server에 올라간다.(개발자가 선호)

8.Flex Compile  - Flex 는 컴파일이 총 세번 이루어진다.

8.1. AS Compile 과 SWF Compile



* AS 프로그램이 Flash 런타입에서 실행되기 전에, AS3.0코드는 플래시 런타임이 이해할 수 있는 액션스크립트바이트 코드로 변환된다.

 * 하지만 바이트 코드는 플래시 런타임에서 혼자 실행 할 수 없고, 그것은 반드시  swf 파일로 감싸져야 한다. swf파일은 바이트코드와 액션스크립트 프로그램이 요구하는 미디어 자산을 포함(embedded Asset)한다.

*액션스크립트 프로그램과 swf파일을 컴파일 할때, 우리는 컴파일러라고 알려진 소프트웨어 모듈을 사용한다.
액션스크립트 코드는 컴파일 하는 컴파일러는 액션스크립트 컴파일러이고, swf파일을 만드는 컴파일러는 swf컴파일러이다.

8.2  JIT Compile (Just In-Time)
액션스크립트 프로그램이 실행될 때, Flex 런타임은 액션스크립트 바이트 코드를 그 운용체제의 네이티브 코드로 변환해서 실행한다.

네이트브 코드로 변환하면 프로그램에는 바이트코드 대신 네이티브 코드가 저장된다. 다음에 다시 실행할 때는 이미 변환되어 있는

네이티브 코드를 실행함으로 바이트코드를 해석해서 실행하지 않아도 된다.


9. JSP와 Flex 의 다른점

9.1.jsp 일 경우 요청 순서

사용자 삽입 이미지

















- 로그인 page가 jsp 파일을 요청하면 web서버가 받아서 WAS에 넘긴다.
- WAS는 요청한 jsp파일을 servlet으로 변환한다.

9.2 Flex일 경우

사용자 삽입 이미지






















- 로그인 page가 mxml파일을 요청하면, web서버 받아서 WAS로 넘기고
 -WAS는 요청이 jsp파일이 아니므로 요청을 Flex서버로 넘긴다.
 -Flex서버는 mxml 파일을  엑션스크립트를 엑션스트립트 Class로 바꾼다, (엑션스트립트 Class는 바이트코드로 변환됨)


10. 플랙스에 사용되는 기술들

* J2EE : 플렉스는 자바 애플리케이션 서버에서 작동되며, 나중에는 닷넷 플랫폼에서도 작동되도록 지원할 것이다.

* XML : XML 문법을 따르는 MXML 파일 형식으로 코드를 저장하고, 'mx'라는 XML 네임스페이스를 사용한다.

*  DOM 레벨 3 이벤트 모델 : 플렉스의 이벤트 모델이 쓰는 것으로 DOM 트리 구조를 통해 이벤트를 전달하는 방식이다.

*  ECMAScript/자바스크립트 : 플렉스에서는 이와 유사한 액션스크립트를 적용했다.

* 웹 서비스 : 플렉스 애플리케이션은 HTTP 통신뿐 아니라 XML 통신 프로토콜인 SOAP 메시지로 데이터를 송수신할 수 있다.

*  CSS : MXML 스타일은 이를 기초로 한다.

* 자바 객체 지원 : MXML 태그는 자바빈즈를 비롯한 일반 자바 객체를 사용할 수 있다.

* SWF : 플렉스는 공인된 플래시 파일 포맷인 SWF 파일로 컴파일된다.

* SVG(Scalable Vector Graphics) : 플렉스는 벡터 형식의 그래픽 표준인 SVG를 따른다.

'★Programming★ > FLEX' 카테고리의 다른 글

ADOBE FLEX Lesson1  (0) 2010.09.11
HTTPService ?  (0) 2010.09.10
Flex의 개요  (0) 2010.09.10
보안 이슈 이해하기  (0) 2010.09.08
URL ?  (0) 2010.09.08
RPC  (0) 2010.09.08
플렉스는 플래시 플레이어의 보안 샌드박스 제약(Security sandbax restrictions)에 영향을 받는다.

이것은 어떤 도메인의 어플리케이션이 다른 도메인으로 부터 데이터를 로드하는 것을 방지하는 것을 뜻한다,

예를 들어 www,mysite,com 에서 www,yoursite,com 의 데이터로 자동적인 접근을 가능하게 하기 위해서

cross-domain 정책파일(cross-domain policy file)을 사용해야 한다,

crossdomain.xml로 이름 붙여진 파일은 어떤 도메인이 플래시 플레이어 리소스에 접근할수 있는지를 명시하며

이파일은 SWF 파일이 호출하는 웹서버의 루트에 배치된다.

www.cnn.com/crossdomain.xml 을 체크하여 cnn이 누구에세 그들의 콘텐트를 플래시 플래이어로 배급하는지 보자.

'★Programming★ > FLEX' 카테고리의 다른 글

HTTPService ?  (0) 2010.09.10
Flex의 개요  (0) 2010.09.10
보안 이슈 이해하기  (0) 2010.09.08
URL ?  (0) 2010.09.08
RPC  (0) 2010.09.08
이벤트 헨들링  (0) 2010.09.07
Uniform Resouce Locator

웹문서의 각종 서비스를 제공하는 서버들에 있는 파일의 위치를 표시하는 표준을 말한다.

다양한 서비스를 제공하는 수많은 서버들로부터 필요한 정보를 획득하기 위해 이들의 위치를 표시하는 체계가 필요한데

이를 위해 URL이 사용된다.

일반적인 신텍스는

프로토콜://정보를 가진 컴퓨터이름/디렉토리이름/파일네임

으로 구성

'★Programming★ > FLEX' 카테고리의 다른 글

Flex의 개요  (0) 2010.09.10
보안 이슈 이해하기  (0) 2010.09.08
URL ?  (0) 2010.09.08
RPC  (0) 2010.09.08
이벤트 헨들링  (0) 2010.09.07
컨트롤 사용시 주의 사항  (0) 2010.09.01


일반적으로 프로시저 콜이란 한 컴퓨터 내에서 어떤 프로시져를 호출하고 수행하는 것을 말한다.

프로시저콜에서는 필요한 인수들을 넘겨주고 계산된결과를 받는다.

이러한 인수(파라미터)전달의 물리적인 구조는 언어나 시스템에 따라 조금씩 그형태가 다르다.

RPC(Remote Procedure Call)이란 다른컴퓨터에 있는 프로시저를 호출하는 기능을 말한다.

이 개념은 분산처리에서 중요한 개념으로 자주 도입된다. 하나의 작업을 여러개의 작은 단위로 나누어서 여러 컴퓨터에 작업을

수행하게 해야 한다면 실행의 효율이 증가할 수 잇을 것이다.


 

'★Programming★ > FLEX' 카테고리의 다른 글

보안 이슈 이해하기  (0) 2010.09.08
URL ?  (0) 2010.09.08
RPC  (0) 2010.09.08
이벤트 헨들링  (0) 2010.09.07
컨트롤 사용시 주의 사항  (0) 2010.09.01
입문시 기본 문법 공부  (0) 2010.09.01
플레스는 이벤트 기반 프로그램 모델을 사용한다.

1.사용자 이벤트 2.시스템이벤트 로 나누어진다.

개발자는 이벤트를 처리하고 어떤일이 발생해야 하는지를 코딩한다,



플렉스는 이벤트가 디스패치 될 때마다 이벤트 객체를 생성한다.

이객체는 발생하는 이벤트에 관한 정보를 가지고 있다.


사용자 정의 액션스크립트

[Bindable]
이 것을 패키지 밑에 적어주면 클래스의 모든 프로퍼티가 바인딩 될수 있다는 것을 뜻한다.

'★Programming★ > FLEX' 카테고리의 다른 글

URL ?  (0) 2010.09.08
RPC  (0) 2010.09.08
이벤트 헨들링  (0) 2010.09.07
컨트롤 사용시 주의 사항  (0) 2010.09.01
입문시 기본 문법 공부  (0) 2010.09.01
시작하기-유의사항만.  (0) 2010.09.01
1. Image컨트롤 사용시

source="../milk.jpg"   이런 속성이 있는데 이속성에 @Embed 라는 걸 달이주면

source="@Embed('../milk.jpg')" 라고 달아주면 몇가지 이익이 있다,

첫번쨰로 어플리케이션 구동시 이미지가 디스플레이 되는걸 기다리지 않늗다.

두번째로 적절한 이미지가 SWF파일에 포함되어 정확하게 디스플레이되어 오프라인 어플개발시 유용하다.

하지만 단점은 SWF 파일의 사이즈를 상당이 증가시킨다,


'★Programming★ > FLEX' 카테고리의 다른 글

RPC  (0) 2010.09.08
이벤트 헨들링  (0) 2010.09.07
컨트롤 사용시 주의 사항  (0) 2010.09.01
입문시 기본 문법 공부  (0) 2010.09.01
시작하기-유의사항만.  (0) 2010.09.01
FLEX 개발환경 구축  (0) 2010.08.31
1 xml문서이 구성요소
  1) xml선언부
  2) xml 요쇼와 속성
  3) 주석
  4) 처리 지시문

저번에 선언부는 한번 공부해 보았고

요번에는 나머지를 공부해 본다.

3)주석은 <!-- 주석 --> 이런것이 주석이고

4)처리지시문은 <?nameprocessor 처리지시문?>

이런 형태로 문서의 데이터가 현재 어떠한 작업을 진행하고 있다는 것을 지시해준다,


네임스페이스를 가질 수 있다.

선언부 같은 곳에서 볼수있는 xmlns라는 것은 틔namespace를 줄인말인데

선언부에서 뒤에 보면 xmlns:mx="http://www.daum.net"이라고 입력되면 mx라는 네임스페이스를 정의한것이다,

즉 앞에 <mx:Application~~~~~~

할때 mx는 네임스페이스를 나타내는 것이라고 할수있다.

다음으로 CDATA에 대해 보겟다,

이것은 Character DATA를 의미한다.

이게 먼지 찾아보니까 ""라던가<>라던가 하는 이미 사용하고 있는 기호를 포함한 문자열을 사용하고자 할때

"",<>같은거는 Escape문자라고 해서 몇몇 문자를 정의 내리고 있는데 이거는 해석을 해서

원래대로 복원하여 ""<>같은 거를 사용할 수 있도록 해주지만

이러한것을 사용하지 않고 CDATA 섹션안에 존재하는 문자열은 데이터로 취급하는 것이다.

주로 플레시에서는 액션스크립트를 작성하는 용도로 자주 이용한다.

'★Programming★ > FLEX' 카테고리의 다른 글

RPC  (0) 2010.09.08
이벤트 헨들링  (0) 2010.09.07
컨트롤 사용시 주의 사항  (0) 2010.09.01
입문시 기본 문법 공부  (0) 2010.09.01
시작하기-유의사항만.  (0) 2010.09.01
FLEX 개발환경 구축  (0) 2010.08.31
1.소스모드로 보는 거 먼저
 
1-1    <?xml version="1.0" encoding="utf-8"?>

코드의 첫줄은 도큐먼트 포맷 선언 부분이다, 반드시 xml문서 첫줄에 기입되어야 한다.

버전번호와 인코딩 방식을 기술한다, 인코딩이란 문자코드를 컴퓨터가 이해할수 있는 코드 형태로 만들어 주는 것을 말한다.

utf-8은 유니코드 인코딩방식이고 xml권고안은 이방식으로 할것을 기본으로 한다. 하지만 euc-kr 방식으로 해도 무관하다.


1-2    <mx:Application xmls:mx=http://www.adobe.com/2006/mxml layout="absolute">

이말은 http://www.adobe.com/2006/mxml 라는 공간에서 mx라는 이름으로 네임스페이스를 사용한다.

여기에 들어가도 아무것도 없습니닼ㅋㅋ

그럼 이게 먼말인가 하면 flex-config.xml이라는 파일을 열어보며 mxml_mainfest.xml이라는 곳으로 연결하라고 한다.

이게 머하는 곳이냐면 이곳에는 시스템이 사용하는 클래스들이 있는데 즉.플렉스에서 사용하는 클래스들을 지정하는 것이다.

mx:Application은 응용프로그램 하나당 한개의 태그를 사용할 수 있다.

두번쨰로 layout="absolute" 는 애플리케이션 페이지가 자식페이지와 콘텐트를 어떻게 레이아웃을 할 것인가 를 정한다.


2 빌더의 Run을 누르면 어떤 일이 일어 나는가,

첫번째 , xml태그가  액션스크립트로 변환되고

두번쨰 , 액션 스크립트가 SWF 파일로 변환되고

이파일은 브라우저의 Flash Player로 보내진다.



'★Programming★ > FLEX' 카테고리의 다른 글

RPC  (0) 2010.09.08
이벤트 헨들링  (0) 2010.09.07
컨트롤 사용시 주의 사항  (0) 2010.09.01
입문시 기본 문법 공부  (0) 2010.09.01
시작하기-유의사항만.  (0) 2010.09.01
FLEX 개발환경 구축  (0) 2010.08.31

+ Recent posts