소프트웨어/SliverLight

Silverliight는 레고블럭과 같다!

falconer 2008. 4. 25. 07:54

순조로운 시작일지는 아직 모르지만 Microsoft가 제공하는 크로스플랫폼 대응 RIA 기술인 Silverlight의 이용이 빠르게 증가하고 있다. 이미 Yahoo등에서 이를 사용하겠다고 발표하였으며 국내에서는 이미 iSBS, 엠넷등이 사용하고 있다. 이는 제가 보기엔 XAML 등장으로 인해 Silverlight가 뜨고 있다고 본다.

 

Silverlight가 나오게 된 배경으로 Adobe Flash를 비교하면서 Flash가 점유하고 있는 시장을 진출하려는 Microsoft Silverlight를 개발하였다고 본다. 그렇다면 Silverlight Flash의 차이점은 무엇을까? 이는 짧게 표현하자면, Silverlight는 레고블럭과 같고 Flash는 하나의 찰흙과 같다라고 표현할 수 있다.

 

Silverlight의 가장 큰 특징은 웹응용프로그램에서 디자인과 논리 부분이 분리되어 개발되는 점이다. 이 말은 디자인은 XAML이라는 XML기반 마크업언어로 개발하고 논리 부분은 C#언어의 코드로 만든다. 이는 인터렉션한 화면이나 움직임을 설계하는 것은 Expression Blend를 이용하고 논리 부분은 Visual Studio 2008로 개발하는 것을 말한다.

 

디자인과 논리 부분을 서로 각각 개발자를 두어 다른 작업으로 개발할 수 있어, 개발 도중에 논리 부분이 변경되어도 디자인에는 크게 영향을 주지 않은 장점이 있다.  Expression Blend Visual Studio 2008은 같은 프로젝트 솔루션 파일을 열 수 있어 개발자간의 콜라보레이션도 쉽어 이를 Silverlight가 레고블럭을 쌓아 만들 수 있고 이 블록을 나중에 새롭게 개발하는 것도 가능하다는 것이다.

 

디자인과 논리부분의 분리는 분업화된 개발이 가능하다는 것으로 Flash는 이런 분업이 가장 큰 문제로 제기되어 왔다. , 개발팀원 모두가 Flash기반을 개발하게 되면 모두가 IDE의 사용법을 알아야 하는 문제도 있어 큰 프로젝트에서는 많은 인원이 투입되어야 하는 단점이 있어 아직까지 고질적인 문제로 제기되어 왔다.

 

이는 디자인과 논리 부분이 분리가 가능한 Silverlight XAML이라는 공통의 언어를 통해 분업화된 개발이 가능하고 장기간에 걸쳐 유지보수가 필요한 응용프로그램 개발에 적합하다.

 

그러나, 아쉽게도 Silverlight는 순발력이 부족하다고 본다. 이 말은 콘텐트를 빠르게 개발하는 것은 Flash가 앞선다고 본다. 이를 Flash가 밀가루반죽처럼 순간적으로 빠르게 만들고자 하는 경우, 직관적으로 쉽게 만들 수 있다는 것이지만 이는 재이용이 어렵다는 문제가 있다.

 

그리고 현재는 Flash ActionScript 개발자가 Silverlight에 비해 많다는 장점도 있다. 그러나, Silverlight .NET 프레임웍이나 C#, JavaScript 개발자라면 누구나 접근할 수 있어 이런 대치상황은 변화가 있을 것으로 판단한다. 지금 현재 Silverlight 개발자가 많이 없는 상황이지만, 이런 잠재적인 기술력을 가진 사람들은 많다고 생각한다.

후발 주자인 Silverlight는 멋진 기술이라고 생각하고 있지만 이는 기술적인 우위성만 가지고 기술이 보급되는 것은 아니기 때문에 Microsoft입장에서는 이런 부분이 상당히 부담스러운 부분일 것이다. Flash는 다양한 라이브러리와 도구를 통해 지금까지 축적된 방대한 노하우나 개발자 커뮤니티가 있다. 그리고 Flash Player가 대부분의 클라이언트 PC에 설치되어 있다는 것도 Silverlight에는 없는 강력한 우위성을 가진 것이라고 보여진다.

[참고] 위 내용은 일본 세컨드 팩토리의 시니어 익스피리언스 아키텍트 하기시 켄의 글을 참고하였음을 알려드립니다.

출처 : http://www.vcug.kr/bbs/3593