2013년부터 인기를 얻으면서 2014년에는 필수 지식으로 자리잡을 것같은 자바스크립트 라이브러리를 나름대로 순위를 정해서 정리해 보았습니다.
아마도 대부분의 웹개발자들은 이제 자바스크립트 라이브러리에 관심을 가지고 사용해보려고 하려는 경우가 많습니다. 그래서 순위에 대해서는는 검색 키워드를 기준으로 조사할 수 있는 구글 트랜드(모든 국가, 지난 12개월간, 모든 카테고리, 웹검색 기준)를 통해 라이브러리 인기를 장르별로 비교했습니다.
프레임웍
2013년에 주목받은 것은 MVC(Model-View-Controller)관련 프레임웍이라고 봅니다.
MVC관련 프레임웍
자바스크립트기반 MVC프레임웍은 다음 4가지로 이야기할 수 있습니다.
- AngularJS
- Backbone.js
- Ember.js
- Knockout.js (정확하게는 MVVM임)
AngularJS인기가 압도적으로 올라가고 있어 2014년에 JavaScript 프레임웍을 공부하려는 분들이 있다면 AngularJS를 시작하면 좋을 것 같습니다.
DOM 조작
HTML의 DOM(Document Object Model)작업을 할 수 있는 프레임웍을 생각해보면, 4가지가 생각납니다.
- jQuery
- Prototype JavaScript framework
- Zepto
- YUI Library
모든 사람이 예상하듯 jQuery의압도적인 지속에 경쟁할 후보조차 크게 보이지 않습니다.
모바일 프레임웍
아이폰/안드로이드기반 스마트폰에 웹사이트를 맞춰 만들 때 UI생성을 지원하는 프레임웍으로 아래 4가지가 있습니다.
- jQuery Mobile
- Sencha Touch 2
- Enyo
- jQT(이전: jQTouch)
당연히 jQuery Mobile이 압도적입니다. 2014년에도 이 상황은 똑같을 것으로 예상됩니다. 그러나, jQuery Mobile 인기도 점차 하락세이기 때문에 모바일 프레임웍 수요 자체가 떨어지는 것으로 생각됩니다. 최근에는 프레임웍을 사용하지 않고 모바일 웹앱을 만드는 경우가 많아지기 때문입니다.
사용자 인터페이스 관련
템플릿 엔진
템플릿 엔진으로 사용되는 자바스크립트 라이브러리는 주로 3가지를 말할 수 있습니다. 단, Jade도 인기가 있지만 Node.js용으로 사용하기 때문에 여기서는 제외했습니다.
- Undersocre.js
- Handlebars.js
- mustache.js
Underscore.js가 가장 인기가 높은 것 같습니다. 템플릿 엔진쪽의 자바스크립트 라이브러리는 다양하지만, 알맞을 것을 선택할 때 질문에 답하여 선택을 좁힐 수 있는 사이트가 있어, 이를 참고하시면 좋을 것 같습니다.
웹그래픽 관련
그래픽 관련 자바스크립트 라이브러리는 WebGL을 통해 3D그래픽도 그릴 수 있는 것부터 2D기반 차트를 그릴 수 있는 다양한 것들이 존재합니다. 이번에는 그것들을 다 묶어서 정리해 보았습니다.
- three.js
- D3.js
- KineticJS
- EaselJS
- Processing.js
three.js와 D3.js가 강세이지만, 라이브러리 용도에 따라 다르기 때문에 둘 중 하나를 선택하는 일은 적습니다. 빠르게 성장하는 것은 D3.js라고 생각합니다.
웹개발시 사용할 수 있는 JavaScript 관련 도구
자바스크립트 라이브러리는 아니지만 최근 자바스크립트 관련 도구로서 주목을 받고 있는 몇가지에 대해서 조사해보았습니다.
altJS – JavaScript대체 기술
JavaScript언어를 보다 효과적으로 작성할 수 있는 대체언어 또는 도구들에 대해서 나름대로 5가지로 정리해 보았습니다.
- CoffeeScript
- TypeScript
- Dart
- Haxe
- JSX
이 분야는 무엇이 좋다고 딱히 말하기 어렵습니다. 현재 가장 인기있는 것은 CoffeeScript이지만 TypeScript가 나온 이후, 인기가 하락하고 있습니다. 2013년 11에는 Dart가 정식버전이 나오면서 다시 인기가 올라가고 있습니다. 그래도 2013년도에서 가장 이슈가 된 것은 TypeScript인 것으로 파악됩니다. 또한 2014년도에는 TypeScript가 정식으로 출시되면 그 영향을 더 커질 것으로 생각됩니다.
CSS 메타언어(전처리기)
altJS이외에 아마도 CSS 전처리기에 대해서 궁금하실 분들이 있을 것 같아서 나름대로 정리해보았습니다.
- LESS
- Sass (Syntactically Awesome Style Sheets)
- Stylus
CSS 전처리기는 최근 빠르게 인기가 높아지고 있고 2014년도에도 계속 될 것입니다. 현재는 LESS가 인기가 좋지만 Sass도 빠르게 인기가 올라가고 있습니다.
JavaScript 테스트 도구
마지막으로 JavaScript 코드를 테스트하는데 사용할 수 있는 도구를 조사하였습니다.
- QUnit
- Jasmine
- Mocha (node.js용 대응)
- JsTestDriver
2013년도 초반에는 QUnit가 인기가 있었지만 최근에는 Jasmine이 대세인것 같습니다.
이렇게 조사한 내용을 토대로 앞으로 인기있거나 성장할 수 있는 자바스크립트 라이브러리는 아래와 같습니다.
- AngularJS
- jQuery
- jQuery Mobile
- Underscore.js
- 3D.js
- TypeScript 또는 Dart
- LESS
- Jasmine
다만, 이 자료의 기준은 구글 트랜드를 통해 조사한 내용으로 세밀한 기준이 있지는 않기 때문에 이 내용이 100% 맞다고 할 수 없습니다. 따라서 이 글의 내용은 어디까지나 하나의 참고 자료로 보시고 실제 프로젝트에서는 추가적으로 자료수집을 하거나, 직접 테스트해본후 결정하시기 바랍니다.