|  |  |
|
Auction Net
세부 구현 기술에 대한 설명을 시작하기 전에 먼저 예제 애플리케이션의 기능
설계를 살펴보자. 이 튜토리얼에서는 Auction Net이라는 간단한 전자 상거래 사이트를 빌드한다.
기능 설계
이름으로도 알 수 있듯이 Auction Net은 경매 웹 애플리케이션으로 판매할
사용자에게는 항목을 판매(나열)할 수 있는 기능을 제공하고 다른 사용자에게는 동일 항목을
구매(입찰)할 수 있는 기능을 제공한다. 실질적으로 사용되는 경매 웹 애플리케이션은 매우
복잡하지만 이 튜토리얼에서는 Scala, Lift 및 jQuery를 사용하여 Comet 스타일 애플리케이션을
쉽게 작성하는 방법에 집중할 수 있도록 매우 단순한 애플리케이션을 작성한다. Lift를 사용하여
Comet 애플리케이션을 쉽게 작성할 수 있다는 것을 알게 되면 Comet을 항상 사용하게 될 것이다. 이는
Ajax 애플리케이션이 처음 등장할 때와 비슷하다. Ajax를 과도하게 사용하여 기능이 저하된 사이트를
종종 볼 수 있다.
이 사이트의 사용자는 애플리케이션에 등록하는 단계를 거쳐서 등록 사용자가
되어야 한다. 이는 일반적인 기능이기 때문에 Comet의 장점이라고 보기는 어렵다. 일반적인
등록/로그인 프로세스면 충분하다. 등록된 사용자는 항목을 판매할 수 있어야 하므로 새 항목을
생성하고 기존 항목을 나열할 수 있는 기능이 있어야 한다. 이 기능 또한 Comet 스타일 상호
작용의 장점을 확실하게 보여 주는 기능은 아니다. 마지막으로 사용자가 항목에 입찰할 수 있어야
한다. 여기에서 Comet의 장점이 확연히 드러난다. 사용자가 항목에 대한 현재 최고 입찰가를
볼 수 있어야 하고 다른 사용자가 입찰에 참여하면 입찰가가 자동으로 업데이트되어야 한다.
지금까지 사이트에서 제공할 기능에 대한 기본 개념을 설명했으며 이러한 설명을
바탕으로 사용자, 항목 및 입찰과 같은 여러 도메인 오브젝트를 찾아낼 수 있다. 또한 각 오브젝트에
대해 수행할 작업을 나열할 수도 있다. 이러한 작업은 여러 페이지에서 기본 기능으로 사용될 수
있으며 일부 기능은 Comet을 사용하여 대화식으로 구현할 수 있다. 이제 Lift를 사용하여 이 모든
기능을 구현하는 방법을 살펴보자.
|  |
|