Rich internet application에 관한 정보를 원합니다.

lordmiss의 이미지

이전에 이곳의 글타래들을 읽으면서 몇 번 RIA(rich internet application)에 대한 이야기를 본 적이 있습니다. 혹은 x-internet이라는 용어를 쓰기도 하더군요.

curl에 대한 소개 글을 보고 관련 내용을 좀 봤는데, 굉장히 매력적이라고 생각되더군요. 실제로 제가 일하고 있는 곳에서도 이런 종류의 개발을 할 필요가 있는데, 구체적으로 RIA를 만들기 위한 어떤 기술들이 있는지 알고 싶습니다. 가능하다면, 구체적인 경험이나 예가 있으시다면 그런 이야기를 해 주시면 도움이 많이 되겠구요.

BBS나 wiki에서 검색을 통해서도 많은 정보를 얻지는 못했습니다. 이 글타래에서 좋은 정보들을 많이 얻게 된다면, 위키 페이지 쪽에도 정리를 해 볼 생각입니다.

여러분들의 많은 답변 부탁드립니다.

kkung의 이미지

RIA에 관해서 저도 요즘 관심있게 알아보고 있는 중인데요~

대표적으로 구글을 통해 유명해진 ajax라던지,
매크로 미디어 사에서 이번에 야심차게~ 준비한
flex 같은것도 있습니다 (..)

ajax에 관해선,
http://www.adaptivepath.com/publications/essays/archives/000385.php 이곳에서 개념을 소개 받으실수
있구요~

flex는 매크로 미디어 사이트에 가시면 화이트 페이퍼를
구해보실수 있습니다 :)

lifthrasiir의 이미지

RIA는 점점 ajax와 플래시(flex라던지 그런 것도 결국 플래시 기반이죠)의 양대산맥으로 윤곽이 잡혀 가는 것 같습니다. 저는 플래시를 못 하지만... :p

- 토끼군

fender의 이미지

제가 볼 때 Ajax를 RIA의 대표적 솔루션으로 보기엔 무리가 있습니다. 사실 RIA는 Ajax라는 말이 유행을 타기 훨씬 이전 부터 있어왔고, 앞으로 Ajax가 널리 쓰이게 된다면 Ajax를 '이용한' RIA 제품들이 나올 지 몰라도 Ajax는 그 자체로는 웹 기반 응용프로그램을 만드는 하나의 방식일 뿐 RIA와 직접적인 연관은 없다고 봅니다.

보통 RIA 제품군은 브라우저 기반 제품과 독립 실행형 제품군이 있고, 전자의 경우 이른바 'cinematic user experience'를 내세운 플래쉬 계열 제품들과 XML/JavaScript 조합으로 동작하는 제품군들이 있습니다. 후자의 경우는 예를들어 일반 클라이언트 GUI 응용프로그램을 만드는 경우와 매우 흡사한 API를 사용해서 코딩을 해서 로컬이 아닌 서버에 배포하면 웹과 같이 제너릭한 클라이언트를 통해 다중 사용자들이 사용할 수 있도록 클라이언트/서버 통신을 자동화 해주는 구조를 갖는 것이 일반적입니다.

아직 RIA 분야에서 '대세'라고 할만한 제품은 존재하지 않습니다. 어쩌면 MS가 아발론을 들고 나오면 어느 정도 지각변동이 있을지 모르겠습니다만 지금으로서는 위와 같은 제품들이 각각의 장단점에 따라 시장을 나누어 점유하고 있는 상황입니다.

----------------------------
[서명] 그놈 한국 사용자 모임 - 그놈에 대한 모든 것! - 게시판, IRC, 위키, 갤러리 등등...

jeongkyu의 이미지

OpenLaszlo 도 한번 참고해보시기 바랍니다.

http://www.openlaszlo.org/

Jeongkyu Kim
OpenOffice.org Korean community lead

Official website http://ko.openoffice.org
Community forum http://oooko.net/
Personal blog http://oooko.net/gomme

atie의 이미지

이 글을 읽어보세요. MS의 XAML과 OpenLaszlo를 더하면 현재와 향후에 경쟁이 될만한 solution들이 나열이 되었다고 봅니다.
자바쪽에서는 SWT/RCP나 Swing Fat client와 이를 받쳐줄 어플리케이션 서버의 조합도 위의 제품들과 다른 방향이기는 해도 여전히 경쟁이 될 것으로 예상을 합니다. 비슷한 시도를 한 것으로 최근 DeveloperWorks에 Geronimo 서버에 Swing 클라이언트를 붙이는 글이 게재가 되었었죠.
또 다른 것들로는 Remote SWTIAB Studio등도 있습니다.

----
I paint objects as I think them, not as I see them.
atie's minipage

죠커의 이미지

미국의 web 2.0 application은 Ajax쪽으로 기울어 가는 것 같습니다.

lordmiss의 이미지

우선...

RIA, x-internet, web-2.0과 같은 용어들을 구분해서 말씀해주실 수 있는 분 계시면 부탁드립니다. 어떨 때는 비슷하게 쓰이고, 어떨 때는 전혀 다른 의미인 것 같기도 하고 그러네요...

또 하나의 질문은요...

Thin client와 thick client에 관한겁니다.

제가 이해하기로는 클라이언트에서 많은 일을 처리하는게 thick, 그렇지 않고 서버쪽에서 거의 처리를 해서 클라이언트에서는 거의 보여주기만 하는게 thin인 것 같습니다. 그래서 RIA라는게 웹 브라우저를 thick client로 사용하게 해 주는 기술이 아닐까 하고 생각하고 있었는데, 제 이해가 맞는건가요?

fender의 이미지

CN wrote:
미국의 web 2.0 application은 Ajax쪽으로 기울어 가는 것 같습니다.

이런게 있네요... 그런데 'Web 2.0'은 아직까지는 사실상 'hype'가 아닌가 싶습니다.

"Ajax != web 2.0"

----------------------------
[서명] 그놈 한국 사용자 모임 - 그놈에 대한 모든 것! - 게시판, IRC, 위키, 갤러리 등등...

죠커의 이미지

lordmiss wrote:
우선...

RIA, x-internet, web-2.0과 같은 용어들을 구분해서 말씀해주실 수 있는 분 계시면 부탁드립니다. 어떨 때는 비슷하게 쓰이고, 어떨 때는 전혀 다른 의미인 것 같기도 하고 그러네요...

또 하나의 질문은요...

Thin client와 thick client에 관한겁니다.

제가 이해하기로는 클라이언트에서 많은 일을 처리하는게 thick, 그렇지 않고 서버쪽에서 거의 처리를 해서 클라이언트에서는 거의 보여주기만 하는게 thin인 것 같습니다. 그래서 RIA라는게 웹 브라우저를 thick client로 사용하게 해 주는 기술이 아닐까 하고 생각하고 있었는데, 제 이해가 맞는건가요?

개인적인 이해라서 틀린 부분도 있지만 풀어보겠습니다.

RIA는 웹의 기능성이나 편리성이 떨어진다는 측면에서 접근하는 것입니다. flash나 Ajax 위주로 판도가 바뀌는 양상이 있습니다. 최근에는 flash보다 Ajax가 강세를 보입니다. 대표적인 예로 Flickr이 flash 위주에서 점차 Ajax로 바꾸어 가는 부분을 이야기 할 수 있겠습니다. 사실 Ajax는 새로운 개념이 아니라서 매우 낡지 않은 웹브라우져라면 대부분 동작가능하다는 이점이 있습니다. 기술적인 바탕은 기존에 있던 기술을 정리한 것입니다. 새로운 방법보다 기능성이나 편리성이 떨어집니다. 하지만 MS의 웹브라우져가 지원안할 가능성이 적습니다. 실제로 W3G가 만들고 있는 RIA에 대해 MS는 지원할 의사가 없다고 합니다. Ajax는 당분 간은 왕자를 차지할 가능성이 높습니다.

RIA는 thin client와 thick client의 개념과는 조금 거리가 있습니다. server나 client 둘중의 어느 쪽에 더 부하를 둘 것이냐가 RIA의 가치가 아니기 때문입니다.

X-internet은 extended internet의 약어로 디지털 세상과 실 세계를 이어볼려는 노력입니다. KTF의 핫코드와 같은 서비스는 실 세계에서 휴대폰으로 웹의 컨텐츠와 연결하도록 도와줍니다. 앞으로는 그런 도구들이 더 많아질 것입니다. 핫코드는 사용하기도 불편하고 사실상 실패한 기술이라고 생각하지만 앞으로 나올 기술들은 더 편리하고 지능적이고 개인화될 것이라고 예상합니다.

web 2.0은 현재의 웹의 변화가 기존의 web개념 (web 1.0)으로서는 설명 불가능하다는 면이 있다는 생각으로 나온 개념으로 팀 오라일리가 밀고 있습니다. 보통은 web 2.0 as platform이라는 말을 자주 합니다. 우리가 휴대폰으로 TV를 보고 휴대폰으로 음악을 듣는 일이 기존에는 "새로운" 기능을 휴대폰에 삽입해서 휴대폰이란 플랫폼을 강화시켜 이루어졌지만 이제는 웹이 지원하는 기능이라면 휴대폰은 웹만 지원하면 되는 시대가 될 것입니다. 마치 자바가 이런 기능을 제공하면 자바가 깔리는 윈도우나 리눅스, 맥도 이런 기능을 지원한다는 이야기와 마찬가지입니다.

그렇게 될려면 지금의 "결과물"로서의 웹으로는 한계가 있습니다. uri와 query를 날린 후 받은 xhtml 마크업을 분해해서 원하는 결과를 찾는 것은 한계가 있습니다. 그래서 rdf와 xml, rest, xml-rpc 등의 기술이 중요하게 대두되었습니다. 검색을 할려면 google의 api를 서적을 구매할려면 amazon의 api를 사진첩을 관리할려면 Flickr의 api를 이용하면 웹을 지원하는 모든 도구에서 매우 간편하게 하나의 "사이트"가 아닌 하나의 "기능"처럼 이용하는게 가능해집니다.

그러나 web 2.0은 저작권과 결제 방식을 해결해야 합니다. 수 많은 웹 서버가 하나의 플랫폼으로 동작하게 된다며 지금 보다 많은 정보들이 창발적인 결과를 얻어내게 될 것입니다만 그 많은 정보들의 저작권과 결제 방식이 문제가 될 것입니다. 큰 변화가 없는 한 미래의 세상도
자본주의이기 때문에 이 문제의 빠른 해결이 필요합니다.

죠커의 이미지

fender wrote:
CN wrote:
미국의 web 2.0 application은 Ajax쪽으로 기울어 가는 것 같습니다.

이런게 있네요... 그런데 'Web 2.0'은 아직까지는 사실상 'hype'가 아닌가 싶습니다.

"Ajax != web 2.0"

fallback 없는 Ajax만의 사용은 기계를 위한 웹이 되지 못한다는 것에 동의합니다. 이 부분을 수동을 개별 사안 마다 유저가 대응해 주는 것은 그다지 좋은 방법론이 아닌 것 같아서 ruby이외에도 여러 솔루션이 나올 필요성이 있어 보입니다.

어떤 RIA를 사용하느냐 보다는 RDF와 XML, RESTian API가 갖추어져 있냐에 비중을 맞추어야 한다는 것에도 동의합니다. XML 형태의 RDF는 관계를 제대로 설명하고 있지 못하기 때문에 XML형태의 RDF이외의 방법론들도 많이 연구되어야 할 것 같습니다.