지난 달 29일부터 4일간에 걸쳐 일본 요코하마에서 MS의 개발자를 위한 회의「테크+에드(Tech+Ed)2006」이 개최되었다.

윈도우 비스타나 오피스 2007의 등장을 앞두고 있어 수많은 세션이 다수의 참가자로 활기차 개발자의 주목을 끌었지만 그 중 하나는 MS가 현재 개발중인「아틀라스(Atlas)」라고 불리는 Ajax 애플리케이션 체제와 ASP.NET 2.0을 이용한 개발 수법에 관련된 일련의 세션이었다.

이 세션에서는 비쥬얼 스튜디오(Visual Studio) 상에서 각종의 컨트롤을 배치해 최소한의 코딩으로 풍부한 Ajax 애플리케이션을 구축하는 것이 시연되었다. 또 IE(인터넷 익스플로러)와 IIS ASP.NET의 편성 뿐만이 아니라 파이어폭스(Firefox)와 아파치(Apache) 및 PHP(하이퍼텍스트 생성 언어(HTML)에 포함되어 동작하는 스크립팅 언어)의 환경에서도 아틀라스를 이용할 수 있다는 것을 보여 호환성이 강조되었다.

아틀라스의 제공 의도나 현재의 개발 상황에 대해서 MS UI 프레임워크 앤 서비스 프로덕트 유닛 매니저(Microsoft UI Framework and Services Product Unit Manager) 샨쿠 니요기(Shanku Niyogi)에게 물었다. UI 프레임워크 앤 프로덕트 유닛에서는 아틀라스 외 ASP.NET나 윈도우 폼(Windows Forms), 윈도우 프레젠테이션 파운데이션(WPF,Windows Presentation Foundation)이라고 하는 클라이언트(client:서버 시스템과 연결하여 주된 작업이나 정보를 서버에게 요청하고 그 결과를 돌려받는 컴퓨터 시스템)를 위한 체제 전반을 통괄하고 있다.

이번 테크+에드에 있어서 아틀라스 관련 세션에서는 굳이 MS 이외의 플랫폼(브라우저 웹 서버 프로그램 엔진) 상에서의 동작도 시연했다는 점이 인상적이었다. MS가 Ajax 애플리케이션의 개발 체제를 크로스플랫폼(cross platform)에서 제공하는 이유는 무엇인가.

물론 우리는 윈도우의 클라이언트 서버 환경에 있어 최고인 유저 인터페이스 및 개발 환경의 경험(experience)을 제공하는 것이 중요하다고 생각했다. 그러나 현재 애플리케이션 개발의 세계는 단일 기술만으로 모든 것이 완결한다는 것이 안 되고 있다. 어떤 브라우저라도 어떤 서버 환경에서라도 활용할 수 있는 개방적인 애플리케이션이 요구되고 있다.

우리는 그러한 일을 요구했던 개발자 비즈니스의 의사결정자에 대해서 프로그래밍 모델의 상호 운용성과 유연성을 제공하는 것이 중요하다고 생각했다.

아틀라스는 Ajax를 이용한 애플리케이션 구축을 위한 라이브러리 세트이며 프레젠테이션 프로그래밍 모델의 일부이다. 개발자가 IE 파이어폭스 사파리(FireFox Safari)라는 다양한 브라우저나 각종 프로그래밍 엔진에 적용할 수 있도록 고려하여 그 제공이나 개발의 진행방식에서도 꽤 유연한 방법을 취했다.

물론 IIS ASP. NET를 개발자에게 사용하는 것으로 최고의 실행을 실현할 수 있도록 하는 것을 제일로 생각했지만 그 이외의 시스템 상에서 동작하는 애플리케이션에 대해서도 일관된 프로그래밍 모델을 제공하는 것이 필요하다고 생각했다.

그렇다면 개방적인 기술을 이용한 Ajax 애플리케이션을 개발함에 있어 굳이 MS의 아틀라스나 ASP. NET이라는 환경을 이용했을 때의 이점은 무엇인가.  

역시 개발 생산성의 양적 측면이다. MS 체제로는 단순한 Ajax의 라이브러리나 툴 킷을 제공할 뿐만 아니라 서로를 연계시키며 클라이언트 개발과 서버 개발의 양쪽 모두에 프로그래밍 최고의 결과를 제공했다.

ASP. NET에는 지극히 풍부한 프로그래밍 모델이 포함되어 있다. 아틀라스와 ASP. NET를 통합하는 것에 의해서 개발자는 비쥬얼 스튜디오를 사용해 컨트롤 업데이트 패널 익스텐더-(extender-)를 드래그 앤 드롭(drag and drop:포인터를 대상물에 위치시키고 마우스 버튼을 누른 채로 마우스를 움직여 간 다음 마우스 버튼을 놓는 일련의 동작)으로 배치해 자바스크립트(JavaScript)에만 의존하는 일 없이 애플리케이션을 풍부하게 할 수 있다.

- 아틀라스 체제로 개발하는 웹 애플리케이션에 대해서는 고객중심(client-centric)인 모델과 서버중심(server-centric)인 모델 양쪽 모두에 대응하는 것인데 이 2개 모델에 대한 대응은 아틀라스만의 독특한 것인가.

기본적으로 Ajax 애플리케이션에 대해서는 프레젠테이션과 비즈니스 논리의 양쪽 모두를 브라우저 측에 둔다. Ajax를 사용하는 것에 의해서 브라우저 측에서 보다 많은 처리를 할 수 있게 되는 것이다. 동시에 개발자는 다양한 웹 서버 프로그래밍 엔진으로의 개발에도 임하지 않으면 안 된다. 처리량을 브라우저측과 서버 측에 어떻게 할당하는가 하는 것은 상황에 따라 다르지만 아틀라스를 사용하면 개발자는 클라이언트와 서버에 대한 처리의 배분을 어떻게 하든 비싼 생산성을 얻을 수 있다.

커뮤니티로의 아틀라스의 개발 상황에 대해 들려달라. 현재 어느 정도의 개발자가 참가하여 실제로 어떠한 피드백이 있었나.

「www. asp. net」은 세계에서도 최대급의 웹 개발자 커뮤니티이다. 아틀라스에 관해서는 ASP. NET의 개발에 관련된 사람들을 수용하고 Ajax에 관련된 사람들도 넓게 수용하려 했다.

좋은 피드백도 많았다. 예를 들면 초기 아틀라스의 디자인에 대해서는 ‘너무 고객중심이다’ 라는 의견이 많았지만 그러한 피드백을 바탕으로 서버중심 모델로의 대응도 진행해 왔다.

올해 연말에 정식판을 출시할 예정인데 현재의 개발 상황을 가르쳐 달라.  

최종판의 출시에 대해서 구체적인 일자는 결정되지 않았다. 현재 정기적으로 커뮤니티 전용의 ‘기능 미리보기’판을 올리고 있어 연말에는 RC(Release Candidate:대규모 소프트웨어에 대해서 다양한 환경에서의 시험을 위해 베타 버전과 제품 버전 사이의 과정에서 추가로 수행되는 버전)판을 낼 예정이다. 이 RC판의 피드백을 기반으로 해 최종적인 출시를 하고 싶다고 생각했다. 그와 더불어 일본어판의 출시도 진행했다.

웹의 진화 혁신(innovation)의 속도는 대단히 빠르고 그 규모도 커졌다. 웹 개발자는 그 혁신을 추진해 가는 입장에 있다고 해도 과언이 아니다. MS에서는 아틀라스나 ASP. NET를 제공하는 것으로 개발자가 즐기면서 생산성을 올리는 것을 돕고 싶다고 했다.


♣ 자료출처: CNET Japan

WRITTEN BY
손가락귀신
정신 못차리면, 벌 받는다.

,