Web 2.0 Tutorial


작성: 몽키몽키 (cache798@naver.com)

 


본 문서는 프로젝트 수행도중 틈틈히 시간을 내서 작성된 문서입니다. 개인적인 노력과 시간투자에 의한 산출물인 만큼 배포하실때는 꼭 작성자와 출처를 명시해 주시기 바랍니다.

 

목차는 다음과 같이 작성하였습니다.

 

1. Web 2.0 개요..

1.1 Web 발전사에 따른 Web 2.0 위치..

1.2 Web 2.0 개념정의..

1.3 Web 1.0과 Web 2.0 비교..

1.4 Web 2.0 용어정리..

 

2. Web 2.0 관련기술..

2.1 롱테일 (Long Tail)

2.2 RIA (Rich Internet Application)

2.3 RSS (Really Simple Syndication)

2.4 OPML (Outline Processor Markup Language)

2.5 Trackback / Trackback Ping.

2.6 Mashup Service.

2.7 AJAX (Asynchronous Javascript And XML)

2.8 Adobe FLEX.

 

3. Web 2.0 특징..

3.1 웹을 플랫폼으로 생각한다.

3.2 집단 지성을 활용한다.

3.3 차별화된 데이터로 승부한다.

3.4 소프트웨어 릴리스 주기의 혁신을 꾀한다.

3.5 가벼운 프로그래밍 모델을 사용한다.

3.6 단일 디바이스 수준을 넘어선 소프트웨어를 지향한다.

3.7 풍부한 사용자 경험을 제공한다.

 

4. Web 2.0 사례 사이트 분석..

4.1 del.icio.us (del.icio.us), 딜리셔스..

4.2 Flickr (www.flickr.com), 플리커..

4.3 Wikipedia (www.wikipedia.org), 위키피디어..

4.4 싸이월드 태깅서비스 (www.cyworld.com)

4.5 Writely (www.writely.com), 라이틀리..

4.6 Google 개인화 사이트 (www.google.com/ig)

4.7 피코디 개인화 사이트 (http://www.pcodi.com/)

 

5. 맺음말..

5.1 사회적 네트워크의 형성..

5.2 신규 사업기회 창출..

5.3 사용자 언론 영향력 확대..

 

Appendix. Web 2.0 용어 정리..

- AJAX (Asynchronous Javascript And XML), 아작스, 애이잭스..

- Collective Intelligence, 집단지성, 집단지능..

- Content Syndication, 컨텐츠 신디케이션, 컨텐츠 수집..

- FOAF (Friend Of A Friend)

- Folksonomy, 폭소노미..

- Long Tail, 롱테일..

- Mashup, 매쉬업, 혼합..

- Niche Market, 니치마켓, 틈새시장..

- OPML (Outline Processor Markup Language), 개요처리언어..

- Personalization, 개인화..

- RIA (Rich Internet Application)

- RSS (Really Simple Syndication / Rich Site Summary)

- Tag, 태그, 꼬리표..

- Trackback, 트랙백, 원격댓글..

- UCC (User Created Content), 사용자 제작 컨텐츠..

- Wiki, 위키..

- XFN (XHTML Friends Network)

출처: 네이버 지식in

편집: 오지훈, cache798@naver.com

 

소프트웨어 분야에서 프레임워크와 라이브러리, 플랫폼, 아키텍쳐를 비교해 보면, 다음과 같다.

 

프레임워크: 소프트웨어의 뼈대 구조

 

프레임워크란 특정형태의 소프트웨어 문제를 해결하기 위한 상호 협력하는 클래스들과 인터페이스들의 집합. 즉 소프트웨어 콤포넌트들의 집합을 의미한다. 이는 여러클래스와 컴포넌트로 구성되고 좀더 높은 수준에서 패턴들을 조직화하며 다양한 애플리케이션에서 이용 가능한 범용성(generic)을 가진다.

 

프레임워크는 다른 소프트웨어 프로젝트가 개발될 수 있는 뼈대 구조이다. 지원 프로그램, 라이브러리, 언어, 다른 소프트웨어 구성 요소들을 엮어 주는 소프트웨어 등을 포함하고 있다. 따라서, 플랫폼도 프레임워크의 일종이라고 볼 수 있으며, MS사에서 닷넷 플랫폼을 닷넷 프레임워크라고 지칭하는 것도 틀린 것이 아니다.

 

또한, UI 프로그램 개발을 위한 부분 만을 떼어내서 프레임워크라고 할 수도 있다. UI 프로그램 개발을 위한 부분 만으로는 완전한 소프트웨어 실행 환경이 되지 않으므로 플랫폼은 아니지만 프레임워크이다. 이러한 점에서 프레임워크와 플랫폼은 다른 경우가 많다.

프레임워크에 대한 내용의 이해를 돕기위해 라이브러리와 비교를 해보자. 라이브러리는 애플리케이션에서 호출할수 있는 함수와 루틴으로 구성되며, 필요한 클래스를 개발자가 불러오는 방식을 지닌다.

 
프레임워크와 라이브러리의 관계는 구성적인 측면에서 라이브러리는 함수와 루틴들로 볼 수 있고, 프레임워크는 콤포넌트들로 볼 수 있다. 실제 사용하는 측면에서 라이브러리는 내부에서 불러서 사용하고, 프레임워크는 내부에서 호출이아니라, 자체가 그대로 동작하거나,상속을 받아 재구성하여 동작한다. 이러한 콤포넌트들은 라이브러리를 불러서 사용할 수 있다.

 

플랫폼: 소프트웨어 실행 환경

 

가장 일반적이면서도 명료한 의미는 "소프트웨어가 실행되는 환경"이다. 개발 언어나 개발 환경을 플랫폼에 포함시키기도 하지만 이는 부수적 개념 혹은  확장된 개념에 불과하고, 핵심은 "소프트웨어가 실행되는 환경"이다.

 

각 프로그램은 아무 플랫폼에서나 실행되는 것이 아니고 특정 플랫폼에서만 실행된다. 일반적으로, O/S는 모두 플랫폼이다. Windows는 윈도우즈 프로그램만을 실행시킬 수 있는 플랫폼이고, 리눅스는 리눅스 프로그램만을 실행시킬 수 있는 플랫폼이다.

 

 

자바 런타임 환경도 플랫폼이다. 자바 프로그램은 O/S에 대한 종속성은 거의 없고 자바 런타임 환경없이는 실행되지 않으므로 자바 런타임 환경을 주요 플랫폼으로서 필요로 한다. 마찬가지로 닷넷 프로그램도 닷넷 런타임 환경없이는 실행되지 않으므로 닷넷 런타임 환경이 플랫폼이 된다.


아키텍처: 소프트웨어의 주요 설계 구조

 

소프트웨어의 주요 특징들을 결정짓는 주요 설계 구조이다. 즉, 소프트웨어의 주요 구성 요소 및 구성, 이들간의 주요 인터페이스, 중요 동작 방식 등 소프트웨어의 주요 특징들을 결정짓는 모든 설계 구조를 포함한다.

 

소프트웨어의 주요 특징을 결정짓고 소프트웨어 개발에 미치는 영향도 매우 커서 소프트웨어 개발에 있어서 가장 중요한 부분이라고 할 수 있다. 지원 프로그램, 라이브러리, 언어, 다른 소프트웨어 구성 요소 등과 같이 구체적인 구현을 포함하지 않는다는 점에서 프레임워크나 플랫폼과는 명확히 구분된다.

 

정리하자면, 이렇게 된다.

 

아키텍쳐 = 소프트웨어 설계 구조

프레임워크 = 소프트웨어 개발 구조  <-- 라이브러리 참조

플랫폼 = 소프트웨어 실행 환경

'It's IT' 카테고리의 다른 글

IT 프로젝트의 현실  (0) 2007.08.17
고공행진 노키아, 불량 베터리......  (0) 2007.08.16
블랙잭에서 Skype, MSN, 구글토크를...  (0) 2007.08.16

+ Recent posts