1. Rich Internet Application
새로운 어플리케이션의 혁명은 바로 “Rich Internet Application”(이하 RIA) 일 것이다.
그러면 무엇이 RIA인가? 현재는 RIA는 "인터넷을 풍부하게(Rich)"한다는 의미에서 동적 웹 어플리케이션을 지칭하고 있으나 이것들은 현재의 RIA일지는 몰라도 앞으로의 RIA가 될 수는 없다. 확실한 것은 RIA는 플랫폼 독립성이어야 하며, 사용자가 언제 어디서나 어플리케이션에 접근이 가능하여야 한다. 이러한 이유로 Adobe의 "Flash"나 Microsoft의 "Siverlight"는 미래의 RIA의 시장의 대표가 될 수 없을 것이다. 앞으로 RIA가 어떻게 탄생 할지는 개발자의 몫에 담겨 있으며, 나도 이 그룹에 합류하고 싶다.
2. JQuery
AJAX라는 새로운 혁명은 거의 사장되고 있던 JavaScript를 회생 시켜주었다. 현재 JavaScript의 프레임워크는 계속 발전하고 있으며, 차기 Visual Studio 2010 프레임워크에 포함될 JQuery에 관심을 가지고, 공부 하고 있는 중에 있다. 그러면 “왜 JQuery가 선택한 것인가?” JQuery는 까다로운 크로스 브라우저 해결할 수 있다. Flex나 Siverlight처럼 미들웨어를 설치하지 않고도 바로 동적 웹 어플리케이션을 제작이 가능하다. 나는 AJAX와 더불어 JQuery(또는 다른 Java Script Framework)가 새로운 RIA를 탄생 시킬 것이라고 생각하고 있다.
3. Cloud Computing
인간의 역사는 돌고 돌게 되어 있다. 컴퓨터의 역사 또한 그 진리를 벗어나지 못할 것이다. 컴퓨터의 역사는 Mainframe인 중앙 컴퓨팅 방식에서 Desktop인 개인 컴퓨팅 방식, 그리고 서로 통신을 위해 네트워크 컴퓨팅 방식으로 변화해 왔다. 이러한 결과는 다시 중앙 집중 컴퓨팅 방식인 Cloud Computing으로 회기 하고 있다. 한번은 "Cloud Computing: New Wine or Just a New Bottle?"라는 매거진을 읽은 적이 있다. 결론은 개발자가 어떻게 사용하느냐에 따라서 미래가 결정 될 것 이다는 내용이었다. 과연 “나의 생각은 어떠할까?” 새로운 와인은 아닐 지 몰라도, 앞으로 발전할 분야라는 것은 확실하다고 생각한다.
4. Service Oriented Architecture
Service Oriented Architecture(이하 SOA)는 정의가 잘된 인터페이스와 서비스들간의 연결을 통해 서비스를 하기 위한 모델이다. 구현은 각 하드웨어 플랫폼, 운영 체계에 따라 독립적으로 정의 되어 다양한 시스템에서 설계가 가능하나 인터페이스 자체는 중립적 인터페이스로 여러 시스템에서 접근이 가능하여야 하는 약 결합 구조로 만들어져야 한다. 오늘날 잘 알려진 SOA 구조는 웹 서비스로 SOAP 프로토콜을 통한 XML 데이터 전송방식으로 데이터 전송이 이루어진다. “왜 나는 SOA에 관심이 있는가?” 내가 관심 있는 분야는 말하자면 웹 서비스가 절대 아니다. SOA라는 개념에 관심이 있는 것이다. 서비스 지향으로 설계 하는 것이야 말로 앞으로 어플리케이션의 혁명이 될 Mashup, Cloud Computing으로 쉽게 갈 수 있는 징검다리 역할을 할 것이 분명하기 때문이다. SOA를 만들 수 있는 것이 현재 웹 서비스로 알려져 있지만, 유일한 해결책은 아니라는 소리다. 예전에 RPC 분야에서도 SOA는 가능했다. 그러나 웹 서비스의 장점인 플랫폼 독립성을 확보하지 못했다는 커다란 약점은 RPC의 대표 주자 CORBA에게는 치명적인 약점이 될 수 밖에 없었다. 그러나 웹 서비스도 약점이 없는 것은 아니다. XML은 모든 플랫폼에 적용될 수 있는 최고의 솔루션일지 몰라도 성능상 약점을 많이 가지고 있다 그러면 “SOA는 어떻게 바뀔 것인가?”에 대한 의문은 모든 개발자들이 가지고 있을 것이다. 앞으로 나도 더욱 소프트웨어를 공부하여 IT분야의 기술을 이끄는 인재가 되고 싶다.
5. 결론
Rich Internet Application, Cloud Computing, Service Oriented Architecture는 앞으로 어플리케이션의 새로운 기술이 될 수 없을지는 몰라도, 흐름을 알 수 있는 중요한 열쇠 역할을 한다. 3개의 공통점은 중앙 집중식 서버 방식을 추구 한다는 것이다. 앞으로 사용자 플랫폼은 지금보다 더 가벼워지고, 더 다양해 질 것이며 그에 맞는 서비스를 제공하기 위해서 예전처럼 특정 플랫폼의 설치형 어플리케이션이 살아 남기 힘들 것이다. 즉 지금 현재에서 가장 미래의 서비스를 맞추고 있는 어플리케이션은 웹 어플리케이션이라고 볼 수 있다. 그리고 모든 서비스는 서비스들끼리 네트워크를 이룰 것이다. 현재 데스크탑끼리 네트워킹이 되는 것처럼 말이다. 앞으로 Cloud Computing, RIA, SOA,, Mashup이라는 용어는 사라지거나 다른 새로운 용어로 대체 될지 모르지만, 서버 중심의 어플리케이션은 계속 발전해 나갈 것이다. 소프트웨어 개발자들은 앞으로의 흐름을 먼저 내다 보고 준비해야지 새로운 소프트웨어의 세계에서 적응해 나아갈 수 있을 것이다.
6. 내가 생각하는 소프트웨어의 미래는…
클릭하시면 크게 보실 수 있습니다.
CoDeveloper의 저작물인 이 저작물은
크리에이티브 커먼즈 저작자표시-비영리-동일조건변경허락 2.0 대한민국 라이선스에 따라 이용할 수 있습니다.
0 개의 댓글:
댓글 쓰기