개요
- 웹이 바꾼 것은 사실 아무것도 없었다. 1960년대 이래로 이 업계는 일련의 반복되는 진동을 겪어왔고, 현재 웹은 그저 이러한 진동의 맨 끝에 있을 뿐이다. 이 진동은 모든 연산 능력을
중앙 서버에 두는 방식
과모든 연산 능력을 단말에 두는 방식
사이에서 끊임없이 움직여 왔다.
- 처음에는 모든 연산 능력이 서버 팜에 위치할 것이고 브라우저 멍청해질 거라고 생각했다가 브라우저에 애플릿(applet)을 추가하기 시작했고 그러다가 동적인 내용은 다시 서버로 이동 그러다가 다시 이 방식이 마음에 들지 않아서 웹 2.0을 고안, Ajax와 자바스크립트를 이용해 처리 과정의 많은 부분을 다시 브라우저로 옮김 그리고 이제는 Node.js를 이용해 자바스크립트를 다시 서버로 이동시키는 방식에 열광해 있다
끝없이 반복하는 추
- 이처럼 반복되는 진동이 웹에서부터 시작되었다고 보는 일은 옳지 않다. 웹이 있기 전에는 클라이언트-서버 아키텍처가 있었다.
- 앞으로도 우리는 연산 능력을 어디에 둘지 알 수 없을 것이다. 연산 능력을 중앙에 집중하는 방식과 분산하는 방식 사이에서 우리는 끊임없이 움직인다.
- IT 역사 전체로 시야를 넓히면 웹은 아무것도 바꾸지 않았다. 웹은 우리가 발버둥치면서 생기는 여느 수많은 진동 중 하나에 불과하다.
- 아키텍트로서 우리는 멀리 내다봐야 한다. 이 진동은 그저 핵심 업무 규칙의 중심에서 밀어내고 싶은 단기적인 문제일 뿐이다.
요약
- GUI는 세부사항이다. 웹은 GUI다. 따라서 웹은 세부사항이다.
- 아키텍트라면 이러한 세부사항을 핵심 업무 로직에서 분리된 경계 바깥에 두어야 한다.
- 각 유스케이스가 장치 독립적인 방식으로 UI라는 입출력 장치를 동작시키도록 해야 한다.