구글 코드에 관해 알아보던 중에 유용하게 쓰일 만한 것들에 대해 간략하게 정리 해봄
* 구글코드
- 각종 오픈소스나 문서를 보다 쉽게 찾을 수 있도록 개발한 사이트
- 개발자를 위한 최신 개발 뉴스, 프로그래밍 팁, 비디오 등 다양한 정보를 제공
- AJAX API , 안드로이드, 구글 Application엔진, 도서갬색 API등 각종 API를 제공
- 개발 언어별 API 제공
* AJAX API
- 지도, 검색, 언어, 도서 검색, 어스, 시각화 등 API를 제공
- 항목별로 관련된 동영상, 블로그, 커뮤니티 사이트 제공을 통해 정보 획득 가능
- 마법사를 통해 코드를 생성하거나 자신이 직접 코드를 구현
* Application 엔진
- Java 런타임, Google 웹 툴킷과의 통합, Eclipse용 Google 플러그인 등에 설명
- AJAX 웹 응용프로그램을 위한 전체적인 Java 솔루션을 제공
- 프로그램 구축이나 유지관리, 확장이 용이함
* 구글 웹 툴킷(GWK)
특징
- JAVA 코드를 편집한 다음 다시 컴파일 하지 않고 변경 내용 즉시 적용
: 개발시 GWT 호스트 모드 브라우저를 사용하여 코드 변경 내용을 즉시 확인
-> 변경한 뒤 호스트 모드 브라우저에서 '새로고침' 클릭 //////////////////////
- Java 디버거를 사용하여 라이브 AJAX 코드를 단계별로 실행
: 마우스 이벤트를 처리할 때처럼 코드에서 작업을 수행할 때 정상적으로 전체 기능의 Java 디버깅을 수행
- 최적화된 교차 브라우저 자바스크립트를 컴파일하고 배포
: Java 코드를 모든 웹 서버에서 사용할 수 있는 일반 독립형 자바스크립트 파일로 컴파일
기능
- 아주 간단한 RPC(Remote Procedure Call : 원격 절차 호출 )를 통해 서버와 통신
: JAVA의 통신 부분에 있어 원격 메소드를 지정하는 인터페이스만 구현하면 원격 제어가 가능함
GWT RPC는 다형적인 클래스 계층 및 객체 그래프 사이클을 처리, 네트워크를 통해 예외를 발생
- 사용자 프로필을 기반으로 자바스크립트 스크립트 다운로드를 최적화
: 컴파일된 코드를 여러 버전으로 생성함 /////////////////////////
이 버전들은 응용프로그램에서 정의하거나 사용하는 브라우저를 기준으로 생성
ex) GWT 컴파일러가 'Firefox in English', 'Firefox in French', 'Internet Explorer in English' 등
브라우저 환경별로 여러 버전의 응용프로그램을 생성
따라서 기존 선택의 구문인 if/then 사용이 필요 없어 코딩이 간편해짐
- 전체 프로젝트에서 사용자 인터페이스 구성요소를 다시 사용
: 다른 위젯과 합성하여 다시 사용할 수 있는 위젯을 만든 다음 패널에 자동으로 쉽게 배치
자신이 만든 위젯을 JAR 파일 처럼 패키지화 하여 재사용 가능
-> 다시 말하면 간단한 응용 어플리케이션의 합성이 가능하고 재사용이 편하다 ///////////
- 다른 자바스크립트 라이브러리와 원시 자바스크립트 코드를 사용
: GWT의 클래스 라이브러리와 직접 작성한 자바스크립트를 JSNI(JavaScript Native Interface)를 사용하여
Java 소스 코드와 결합 가능
- 브라우저의 뒤로 버튼과 기록을 간편하게 지원
: AJAX 응용프로그램이 브라우저의 뒤로 버튼을 해제할 필요 없음
GWT를 사용하면 브라우저의 뒤로 버튼 기록에 상태를 쉽게 추가하여 사이트를 더 유용하게 이용
- 응용프로그램을 효율적으로 현지화
: GWT의 바인딩 기술을 사용하여 효율적인 국제화 응용프로그램 및 라이브러리를 제작
-> 국제화란.. 사용자의 기본 환경이 아닐까... ////////////////
- 자신에게 맞는 개발 도구를 선택하여 생산성 향상
: GWT에서는 Java를 사용하므로 선호하는 Java 개발 도구(Eclipse, IntelliJ, JProfiler, JUnit)를 AJAX 개발에 사용
자동화된 Java 리팩토링 및 코드 표시/자동완성,자바스크립트 버그(오타, 입력 불일치)를 확인하여 생산성 향상
기반의 디자인 패턴 및 추상화를 이용 가능
- JUnit으로 코드를 테스트
: GWT를 JUnit에 직접 통합하였으므로 디버거와 브라우저 모두에서 단위 테스트를 수행하고
비동기 RPC에 대해서도 단위 테스트를 수행할 수 있음
- 확장 또는 참여 - Google Web Toolkit은 오픈소스 소프트웨어
: GWT의 모든 코드는 Apache 2.0 라이센스에 따라 사용
* 오픈 소셜
- 오픈소셜은 여러 웹사이트에서 작동하는 소셜 응용프로그램 개발에 사용하는 공통 API를 정의
- 개발자는 표준 자바스크립트 및 HTML을 사용하여 소셜 네트워크의 친구에게 액세스하고
피드를 업데이트하는 응용프로그램을 만들 수 있다
-> 여러 개발자들이 소셜 웹 사이트를 개발하고 있는데 서로 호환이 가능하도록 공통의 API를 제공 ////////
* 프로젝트 호스팅
- 어떤 주제에서든 즉시 프로젝트 생성
- 1GB 저장 공간의 Subversion 코드 호스팅 및 2GB 저장 공간의 다운로드 호스팅 지원
- 소스 코드 탐색 및 코드 리뷰 도구 통합 - 손쉽게 코드를 조회하고 제공된 코드를 검토하며
코드 베이스의 우수한 품질을 유지
- 간단하면서도 유연하고 효과적이며 어떤 개발 프로세스에도 적합하게 수정 가능한 문제 추적기 겸 프로젝트 위키
- 중요 및 업데이트 스트림을 통해 관심 있는 프로젝트 및 개발자를 손쉽게 추적
* 구글 시각화 API
- 모든 웹 페이지에 구글 차트 도구를 이용하여 동적인 그래프 개발
- 이미지 차트 - 구글 차트 서버에 간단한 URL을 요청을 사용 /////////////
- 대화형 차트 - 구글이 자바 스크립트 라이브러리를 개발 (그래프가 동적으로 움직임) ///////////
- 다양한 라이브 데이터를 읽을 수 있는 데이터 소스
- 무료이며 간편하게 사용 할 수 있음
* 안드로이드
- Android는 운영체제, 미들웨어 및 핵심 응용프로그램을 포함하는 휴대기기용 소프트웨어 스택
- Android SDK가 Android 구동 기기에서 실행되는 응용프로그램을 개발하는 데 필요한 도구 및 API를 제공
- Android 플랫폼을 확장하는 외부 라이브러리, Android 응용프로그램, 호스팅 서비스 및 API, Android 개발자 대회 등
Android 플랫폼을 기반으로 한 Google 프로젝트에 대한 정보를 제공
* 구글 캘린더 API
- Google 데이터 프로토콜을 활용하여 Google 캘린더의 모든 기능에 액세스하는 응용프로그램을 작성
- 클라이언트 응용프로그램이 Google 데이터 API 피드 양식으로 캘린더 일정을 보고 업데이트
- 클라이언트 응용프로그램에서 Google 캘린더 데이터 API를 사용하여 새 일정을 만들고
기존 일정을 편집하거나 삭제하며 특정 기준에 일치하는 일정을 쿼리
- API를 사용하여 사람들이 사이트에서 자신의 Google 캘린더 정보를 볼 수 있는 웹 프런트엔드를 만들고,
다가오는 일정을 Google 캘린더에 프로그램 방식으로 추가하여 게시할 수 있으며,
Google 캘린더와 휴대기기 간의 동기화를 수행하는 응용프로그램을 구축하거나,
Google 지도와 같은 다른 API로 매쉬업을 만드는 것이 가능
* 그 외 유용한 것들...
- 구글 애드 센스 API : 광고 수익 공유 솔루션
시용자 제작 페이지에서 본인과 콘텐츠를 만드는 사용자 간에 애드센스 수익을 할당하는 방식 /////
- 구글 Analytics(웹 로그 분석) : 웹사이트 트래픽에 대한 데이터를 수집하고 보고 분석
-> 방문 횟수가 가장 많은 콘텐츠, 방문용 사이트에 대한 평균 페이지뷰 및 시간, 사이트로
가장 많은 방문자를 유도하는 광고 등에 대한 정보 획득 /////
- Health API : 개인의 건강 정보 관리
- 스프레드 시트 API
: 클라이언트 응용프로그램에서 스프레드시트 콘텐츠를 Google 데이터 API 피드 양식으로 보고 업데이트 ///////
'기타 정보' 카테고리의 다른 글
Tomcat 6.0 InvokerServlet 에러 (0) | 2011.05.13 |
---|---|
웹에디터(MS DHTML Editing Control) 소스 사용시 에러 (0) | 2011.04.15 |
HTML5 ACID Test (0) | 2011.03.31 |
이클립스 디버깅 사용법 (0) | 2011.03.24 |
구글 애드 센스 (0) | 2011.03.24 |