-

오늘 교육이 있었던걸 메모하자

1. 안드로이드는 임베디드 디바이스 전용으로 만들어 졌다.

안드로이드 플렛폼 의 네가지

①OS
os는 다들 알고 있는 오페레이팅 시스템이다.

-아이폰은 Ios

-위도우폰은 요즘에 나온 윈도우모바일7

-안드로이드는 리눅스가 OS이다,

이러한 이유는 안드로이드가  OpenSource라는 점 때문이란다.


위의 그림의 제일 하단의 리눅스 커널을 보면 리눅스커널에는 GPL과 APL이 있는데

GPL은 오픈되어있지만 사용하여 수정한뒤 다시 오픈을 반드시 해야만 하는 것이다

APL은 그냥 오픈이란다. 자세한 것은 더 찾아 봐야 겠다.

아무튼 이렇고 이러한 커널의 역할은 크게 네가지로 분류된다.

1) Process

프로세스는 리눅스 프로세스와 안드로이드 어플리케이션 프로세스가 있다.

2)메모리 (멀티프로세서를 사용하므로 스케줄러와 + 전원관리)등을 메모리 관리에 사용

*프로세스 강제 종료 기능이 있다는 중요한 기능!!

3)보안

안드로이드에서는 탈옥이 아니라 루틴이라는 용어를 사용하는데 이것은

루트의 권한을 획득하여 사용하는 것을 말한다.

4)디바이스 관리

위의 그림을 보면 알겟지만 디바이스 드라이버를 많이 관리하는 것을 볼 수있다.

②Middle Ware

 두번째는 미들웨어이다. 이것은 거의 C로 되어있고 간혹 C++로 도 되어있다.

Java는 하드웨어를 바로 직접적으로 사용을 할수없다 어찌 말하면  JVM때문이라고 할 수있겟다.

c/c++로 구성된 library를 사용하는데

내가 관심이 있는 OpenGL|ES

안드로이드 DB인 SQLite

웹브라우저 엔진인 WebKit

C표준 라이브러리 함수인 libc

등 이것들은 다 확장자 *.so를 가진 것이다.

* .so는 Linux에서 동작이 가능한 공유 라이브러리라고 알면 되겟다.

안드로이드 런다임

은 Dalvix VM과 Core library로 되어있다.

달빅은 안드로이드를 위한 가상머신으로 구글에서 직접 JVM과는 별개로 만든것이다.

달빅은 어플리케이션이 실행될때 어플리케이션하나에 하나의 인스턴스를 만들어 들어간다.

(JVM은 하나로 여러개를 하지만)

예)로 들면 터치를 했는데 그게 커널단에서 받아오고 우리는 그걸 미들웨어(라이브러리)를 통해서

제어하는데 그것은 c/c++이기 때문에

java인 런타임에서 쓸려고 core library에서 가능하도록

JIN(java native interface)가 있다.

Native Server

suface flinger -> 화면처리 쪽

③Application Framework

위의 그림을 보면 설명의 모든것을 알수 있을 것이다.

세번쨰로 프레임워크는 이제부터는 java로 구성되어있다.

Activity manager

하나의 화면을 관리하는 것

Notification Manager

사용자에게 알림메세지 같은 것을 관리(문자, 베터리부족)

Location Manager

GPS같은 위치

resource Manager

문자열, 파일, 이미지, 등 리소스 관리

contant provider

DB를 공유, 파일을 공유

view System

화면


④Application

두가지 종류로 분류

-Key Application

안드로이드 플렛폼에 내장되어있는,

제조사에서 처음부터 내장되어 나오는 것

-download Application

사용자가 다운로드한 것



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

안드로이드의 개괄적 이해  (0) 2010.10.17

Papervision 에서 주로 사용되는 카메라 속성들입니다.

Field Of View

 - 카메라의 시야각입니다.

 - Camera.fov

Focus

 - 카메라와 viewport 사이의 거리입니다.

 - Camera.focus

 

Zoom

 - 카메라의 Zoom 입니다.

 - Camera.zoom

 

Near

 - 카메라에서 가까이 있는 거리 값 입니다.

 - Camera.near

 

Far

 - 카메라에서 멀리 떨어진 거리 값 입니다.

 - Camera.far

 

Camera Type

 - Target 이 중심인 카메라 :: CameraType.TARGET, Camera3D

 - 카메라가 중심인 카메라 :: CameraType.FREE, Camera3D

 - Debug 용 카메라 :: CameraType.DEBUG, DebugCamera3D

 - 탄성이 있는 카메라 :: CameraType.SPRING, SpringCamera3D

 

lookAt() 메소드

 - 객체나 카메라을 지정해준 대상을 바라보게 변경 할 수 있습니다.

 - Camera.lookAt( plane );

 

Culling

 - 카메라에 보여지지 않는 객체의 Rendering 여부를 설정합니다.

 - Camera.useCulling = true;

 - Viewport.autoCulling = true;

 

Clipping

 - Viewport 의 경계면에서 면이 깨어지는것을 방지합니다.

 - Renderer.clipping = new FrustumClipping( FrustumClipping.NEAR );

 - FrustumClipping.ALL, FrustumClipping.NEAR, FrustumClipping.TOP, FrustumClipping.BOTTOM, FrustumClipping.LEFT, FrustumClipping.RIGHT

 - Plane.clipping = true;

 

Move

 - DisplayObject3D 를 상속받은 객체면 사용할 수 있습니다.

 - x, y, z 축이 아닌 키워드를 가지고 이동할 수 있습니다.

 - moveForward() :: 앞으로 이동합니다.

 - moveBackward() :: 뒤로 이동합니다.

 - moveLeft() :: 왼쪽으로 이동합니다.

 - moveRight() :: 오른쪽으로 이동합니다.

 - moveUp() :: 위로 이동합니다.

 - moveDown() :: 아래로 이동합니다.

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

Camera기본  (0) 2010.09.11
PaperVision3D in Flex  (0) 2010.09.03

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

+ Recent posts