Sencha Touch 개요와 특징

센차터치는 이제까지의 모바일 프레임워크 중 가장 방대하고 독특한 API 구조를 가지고 있습니다.
센차터치도 모바일 웹 애플리케이션 개발을 위한 자바스크립트 프레임워크입니다.

기존 데스트톱 기반 자바스크립트 프레임워크인 ExtJS 개발사에서 모바일 시대에 부응하고자 새롭게 내놓은 제품입니다.
센차터치는 ExtJS를 기반으로 하고 있어서 ExtJS의 API 구조와 문법 체계를 그대로 계승하며, 여기에 모바일에 최적화된 기능들이 추가되었습니다.

ExtJS개발사는 기본의 회사명과 대표 도메인을 Sencha 로 변경하고, jQTouch 와 Raphael프로젝트를 통합해서 개발자르 영입하는 등 모바일 웹, 나아가 차세대 웹 개발 프레임워크 시장을 석권하기 위한 전략적인 움직임을 보이고 있습니다.
이 결과물중 하나가 Sencha Touch 이며 기존 ExtJS 프레임워크도 점차 그 기능을 강화해 나가고 있습니다.

Sencha 라는 용어는 일본의 유명한 녹차 이름에서 따온것이며, 철자와 발음이 쉽고 차세대 소프트웨어 개발을 연상시키는 단어라는 이유로 선정됐다고 합니다.
Sencha Touch 공식 웹 사이트 : http://www.sencha.com/products/touch/

참고로 국내의 멜론이라는 음악 서비스 사이트에서 센차터치를 적용했습니다.
멜론 서비스는 데스크톱, 폰, 태블릿 기기에 각각 최적화한 서로 다른 3개의 사이트로 구분돼 있는데 이 중 태블릿 기기와 멜론 서비스에 센차터치가 적용됐습니다.
센차터치가 적용된 멜론 사이트 : http://m.melon.com/cds/main/mobile/main_list.htm

melon.com

사파리의 사용자 에이전트 iPhone 로 접속한

Sencha Touch 특징.

방대하고 체계적인 API.
센차터치는 상당히 방대한 API를 가지고 있으며, 객체지향 설계 기법이 적용되어 API가 체계적이고 논리적입니다.
따라서 다른 프레임워크에 비해 프로그램적인 사고 방식을 더 많이 요구합니다.
닷넷이나 자바와 같은 객체지향 언어를 다뤄본 경험이 있다면 유리하게 접근할 수 있을겁니다.
센차터치의 체계적인 API 목록은 다음의 온라인 문서에서 확인할 수 있습니다.
센차터치 API 문서 : http://docs.sencha.com/

스크립트 기반.
센차터치를 이용한 애플리케이션 개발은 대부분 스크립트 영역에서 이뤄집니다. jQuery Mobile 하고 다른점이 바로 이 부분입니다.
jQTouch 나 jQuery Mobile 는 HTML의 태그 요소를 기반으로 라이브러리가 동작하지만 센차터치는 거의 모든 구현을 Ext 기반의 스크립트로 작성해야 합니다.
물론 contentEL 과 같은 속성을 이용해 html 태그를 이용할 수 있지만 프레임 워크의 궁극적인 콘셉은 스크립트 기반의 애플리케이션 개발입니다.
따라서 기존의 자바스크립트에 대한 지식이 있다면 크게 도움이 됩니다.

HTML5 & CSS3 지원.
센차터치는 차세대 웹 표준 기술인 HTML5 와 CSS3 의 향상된 기능을 많이 활용하고 있습니다.
플러그인 없이 멀티미디어 재생이 가능한 Video, Audio 스펙과 향상된 로컬 저장소를 지원하는 웹 스토리지(Web Storage), 새로운 폼양식과 같은 HTML5 최신 기능과 CSS3 의 강력한 스타일 기술이 센차터치에 적용되어 있습니다.

향상된 터치 이벤트.
센차터치는 터치 기반의 모바일 기기와 효과적인 상호 작용이 가능하도록 섬세한 터치 이벤트를 지원합니다.
터치의 시작과 끝을 알리는 touchatart, touchend 이벤트와 tap, doubletap, swipe, tap & hold, pinch 등과 같은 다양한 터치 이벤트를 지원하며, 스크롤 및 기기의 회전에도 반응할 수 있도록 관련 이벤트를 제공합니다.

폰과 태블릿 기기를 위한 프레임워크.
jQtouch가 화면이 작은 폰에 집중하는 반면 센차터치는 폰 뿐만 아니라 아이패드와 같은 태블릿 기기도 주요 지원대상입니다.
jQtouch는 센차에 통합되면서 스스로 폰에 집중하겠다고 선언한 바 있으며, 태블릿 기기를 개발한다면 센차터치를 사용하라고 공공연히 권장하고 있습니다.

높은 자유도.
다른 프레임워크에 비해 다양한 형태의 UI를 개발할 수 있고, 더 강력한 기능을 활용할 수 있습니다.넣은 화면을 위한 복잡한 화면 구성이 필요하다면 센차터치가 좋은 선책이 될 것입니다.
그렇다고 복잡하다는 뜻은 아닙니다.

모바일에 최적화된 기능.
리스트, 아이콘, 폼 등 모바일 친화적인 각종 UI 컨트롤이 제공되며, 애니메이션 효과와 Ajax 통신, 터치 이벤트 반응 등 모바일에 최적화된 기능들이 지원되며, 체계적이고 잘 추상화된 데이터 패키지를 제공해 테이터 처리의 효율성을 꾀하고 있습니다.