Rev. 2.73

구글도 Ajax를 사용한 애플리케이션 구축용 웹 툴킷(GWT)을 선보였습니다. 구글지도와 같이 Ajax 애플리케이션 개발을 쉽게해주는 개발도구입니다. 동적인 웹 애플리케이션을 만들기위해 개발자가 삽질하는 시간을 벌어 준다는군요.

gwt-architecture.png
Google Web Toolkit Architecture

예제 프로젝트
- Dynamic Table
- Kitchen Sink
- Desktop App Clone Example Project

구글 웹 툴킷의 특징
- 동적이고, 재사용할 수 있는 UI 컴포넌트들
- 진짜로 간단한 RPC
- 브라우징 기록 관리 (앞/뒤 버튼이 먹을 수 있도록)
- 리얼 디버깅
- 브라우저 호환성 제공
- 상호운영성 및 세밀한 제어 기능

Comments

Dustin Diaz는 야후에서 제공하는 Ajax 기반의 디자인 페턴 라이브러리(Yahoo! Ajax UI Design Pattern Library)를 사용하여 자바스크립트 테트리스 게임을 시연하였습니다. YUI의 Event Utility와 Dom Collection을 결합하여 사용했다고 합니다. 쇼케이스 치곤 완성도가 매우 높군요. 아래의 링크에서 즐길 수 있습니다.

http://www.dustindiaz.com/basement/tetris.html

YUITetris.png

덧. IE에서는 할맛이 안나는군요.

Comments

간만에 올리는 태터툴즈 클래식 스킬입니다. 클래식에 머무는 이유 중 하나는 키워드기능 때문입니다. 이것은 개인 지식정보 솔루션이라고나 할까요? 클래식의 키워드기능에는 종속된 된 키워드일 경우, 비정상 링크가 생겨나는 심각한 버그가 있습니다. 예를 들어 보겠습니다.

최근에 'IDE'라는 키워드를 작성했습니다. 그리고 그 이전에 'World Wide Web'이라는 키워드가 존재하고 있었습니다. 'IDE'라고 작성한 키워드의 링크를 테스트해 봅니다. 어라? 'World Wide Web' 키워드 내용이 출력됩니다. Wide에서 ide를 결과물로 잘못 출력합니다. 대소문자를 구별하지 않고, 키워드의 길이를 대조하지 않는 버그입니다.

안 그래도 데이터베이스 과부하 때문에 더는 무리를 주지 못하는 상황에서 이 같은 심각한 문제만은 해결해야 하는 난잡한 입장에 처했습니다. 그래서 가장 간단하게 해결하는 방법으로 MySQL에서 대/소문자를 구분지어 해결하였습니다. t3_tts_10ofmg_keyword의 keyword 필드를 binary 보기로 만들어 간단히 해결할 수 있습니다. 하지만, 이것은 완벽하지 않은 임시방편입니다. 예를 들어 최근의 '태터툴즈'라는 키워드와 종전의 '태터툴즈 클래식'이라는 키워드가 별도로 존재하는 경우 '태터툴즈' 키워드를 클릭하면 '태터툴즈 클래식'이 출력되어 버립니다. 그래도 한글로 된 키워드는 중복 가능성이 작은 편이지만 이니셜로 기록되는 영문의 대/소문자 구분문제는 매우 심각합니다.

키워드 기능을 조금 더 완벽하게 사용하기 위해 해결해야 할 과제가 더 있습니다. 중복된 키워드입력을 막아야 하며, 다양한 목록 정렬 방법을 지원해야 합니다. 조만간에 대대적으로 뜯어 고쳐야 겠습니다. 클래식과 Ajax와의 만남, 하이브리드 태터툴즈 프로젝트가 곧 막을 올립니다. 음훼훼훼훼~

Comments