자바스크립트란?
1. 웹 브라우저에 내장되어 있는 스크립트(script) 언어
- HTML의 각 요소에 접근, 제어
2. 객체지향(object oriented) 프로그래밍
- 한 프로그램을 구성하는 여러개의 조각들을 객체들로 파악한다.
- 객체들은 특정상태를 나타내는 속성과 행위를 나타내는 함수로 되어 있다.
- 프로그램이 실행되면 객체들이 서로 준비된 함수들을 이용해 메시지를 주고받고 데이터를 처리해 원하는 결과를 만들어냄
- 자바스크립트의 객체는 프로퍼티 이름과 프로퍼티 값의 쌍으로 존재. 프로퍼티에 값을 지정하면 속성이 되고, 함수를 지정하면 행위가 된다.
- 상속 지원
3. 인터프리터(interpreter) 방식
- 컴파일러 방식 : 프로그래밍 언어로 구성된 소스코드를 컴파일 하고 머신코드를 생성하고 머신코드를 실행(컴파일 타임과 런타임이 구분)
- 인터프리터 방식 : 컴파일 타임과 런타임이 구분되지 않아 런타임시 소스코드 번역과 실행을 모두 실행(과거에는 실행속도가 느리다는 평가를 받기도 함)
4. 동적이면서 약한 타입(dynamic and weak typing) 언어
- 다른 언어에 대한 경험이 있다면 쉽게 접근 가능
- 변수 선언시 데이터타입 명시하지 않음(대입한 값에 따라 데이터 타입 결정)
웹 개발환경의 변화
- 1994년 Brendan Eich가 개발
- 1995년 넷스케이프 네비게이터 2.0에 탑재
- 모든 웹 브라우저에 내장된 클라이언트 측 스크립트 언어
- 2005년 초 Ajax 기술의 보급으로 중요성 대두
- 2008년부터 가열된 웹 브라우저간의 자바스크립트 엔진 성능 경쟁
- 서버 측에서의 자바스크립트 프로그래밍
- 2009년 Ryan Dahl이 Node.js 개발
- HTML 5의 중심에 놓여 웹 표준으로서 위상을 가짐
- 모바일 환경까지 그 응용 범위의 세를 더욱 확장
모바일 앱 개발환경과 자바스크립트의 위상
- 2007년 아이폰의 등장과 함게 시작된 스마트폰의 열풍으로 엄청난 모바일 앱 시장의 성장
- 스마트 폰 플랫폼의 다양성으로 인한 문제 발생
+ 개발 비용의 증가, 유지보수 비용의 증가(아이폰/아이패드 - Object-C, C, C++ | 안드로이드 - Java, C | Windows - C#)
- 모바일 웹 브라우저의 신속한 HTML 5 지원
- JQuery Mobile, Sencha Touch 와 같은 모바일 웹 앱 개발 프레임워크 등장
- 모바일 웹 앱(mobile web app) - 속도의 한계
- 하이브리드 모바일 앱(hybrid mobile app) 대안 (네이티브 + 모바일 웹앱)
- 모바일 시대의 앱 개발에 있어 자바스크립트의 위상과 중요성이 날로 높아짐
자바스크립트 개발도구 설치
- 통합개발환경 Eclipse를 기반으로 한 Aptana Studio
- 오픈소스
- Windows, 맥OS, Linux 지원
'WEB > Javascript' 카테고리의 다른 글
예/아니오 창 만들기 (0) | 2015.12.28 |
---|