MEAN 스택: 두 판 사이의 차이
편집 요약 없음 |
편집 요약 없음 |
||
3번째 줄: | 3번째 줄: | ||
MEAN 스택은 정확히 말하면 풀 스택을 위한 몇 가지 소프트웨어를 묶은 일종의 번들 개념이다. 다음과 같은 요소로 구성되어 있다. | MEAN 스택은 정확히 말하면 풀 스택을 위한 몇 가지 소프트웨어를 묶은 일종의 번들 개념이다. 다음과 같은 요소로 구성되어 있다. | ||
* [[MongoDB]] : 문서 기반의 [[NoSQL]] [[데이터베이스]]. 문서의 표준 형식이 바로 [[JSON]]이다. 다른 언어로도 사용할 수 있지만 일단 [[JSON]] 기반이므로 [[자바스크립트]]와 가장 잘 붙는 편이다. <del>[[NoSQL]]이 싫으면 [[MariaDB]]로 갈아 붙이면 어떨까? 그래도 MEAN인데.</del> | * [[MongoDB]] : 문서 기반의 [[NoSQL]] [[데이터베이스]]. 문서의 표준 형식이 바로 [[JSON]]이다. 다른 언어로도 사용할 수 있지만 일단 [[JSON]] 기반이므로 [[자바스크립트]]와 가장 잘 붙는 편이다. 대다수 클라우드 서비스가 [[NoSQL]] 서비스를 할 때 가장 많이 지원하고 있어서 사용자층도 가장 넓다. <del>[[NoSQL]]이 싫으면 [[MariaDB]]로 갈아 붙이면 어떨까? 그래도 MEAN인데.</del> | ||
* [[ExpressJS]]: [[Node.js]]에서 가장 널리 쓰이는 웹 [[프레임워크]]. | * [[ExpressJS]]: [[Node.js]]에서 가장 널리 쓰이는 웹 [[프레임워크]]. | ||
* [[AngularJS]] : [[구글]]에서 개발한 [[MVC]] 기반 클라이언트 측 [[자바스크립트]] [[프레임워크]]. 2.0부터는 [[자바스크립트]]의 파생형인 [[타입스크립트]]를 기본으로 하고 있다. | * [[AngularJS]] : [[구글]]에서 개발한 [[MVC]] 기반 클라이언트 측 [[자바스크립트]] [[프레임워크]]. 2.0부터는 [[자바스크립트]]의 파생형인 [[타입스크립트]]를 기본으로 하고 있다. | ||
* [[Node.js]] : [[자바스크립트]] 엔진 기반의 웹 서버. | * [[Node.js]] : [[자바스크립트]] 엔진 기반의 웹 서버. | ||
이 네 가지의 머릿글자를 따면 MEAN이 된다. 발레리 카프로프라는 개발자가 자신의 [[블로그]]에서 이 용어를 제안했다. [[자바스크립트]] 기반 풀 스택이라면 이들 중 M, E, N은 대체로 이견이 없지만 A는 좀 얘기가 다른데, 일단 [[JQuery]]라는 놈이 클라이언트 측 [[자바스크립트]] 라이브러리 중에서는 가장 잘 나가고 있었고 [[페이스북]]에서 개발한 [[React]]가 [[JQuery]]를 추월한 실정이다. [[Vue.js]] 역시 사용자가 늘고 있다. [[AngularJS]]j 역시 많은 주목을 받고 있으며 [[구글]]을 등에 업고 사용층도 빠르게 늘고 있는 것은 사실이다. 참고로 [[JQuery]], [[React]]나 [[Vue.js]] 라이브러리는 주로 '뷰'에 집중하고 있는 반면, [[AngularJS]]는 프론트엔드의 풀 스택이라고 할 정도로 다루는 범위가 넓은, 하나의 [[프레임워크]] 수준으로 덩치가 크다. 한편으로는 그만큼 배워야 할 것도 많고 진입장벽이 높다는 게 문제.<ref>여기에 Angular 2부터는 [[타입스크립트]]를 기반 언어로 바꾸었다.</ref> 시간이 지날수록 [[React]]나 [[Vue.js]]의 인기가 올라가고 [[AngularJS]]가 밀리는 분위기라<ref>[[JQuery]]는 점점 구닥다리로 밀리면서 기존 코드의 호환성 차원에서 쓰이는 경우가 많고, [[React]]로 갈아엎는 곳도 늘어나고 있다.</ref>, MEAN 스택보다는 'A'를 'R'이나 'V'로 대신하는 풀 스택 개발 쪽이 좀더 많이 쓰이고 있다. | 이 네 가지의 머릿글자를 따면 MEAN이 된다. 발레리 카프로프라는 개발자가 자신의 [[블로그]]에서 이 용어를 제안했다. [[자바스크립트]] 기반 풀 스택이라면 이들 중 M, E, N은 대체로 이견이 없지만 A는 좀 얘기가 다른데, 일단 [[JQuery]]라는 놈이 클라이언트 측 [[자바스크립트]] 라이브러리 중에서는 가장 잘 나가고 있었고 [[페이스북]]에서 개발한 [[React]]가 [[JQuery]]를 추월한 실정이다. [[Vue.js]] 역시 사용자가 늘고 있다. [[AngularJS]]j 역시 많은 주목을 받고 있으며 [[구글]]을 등에 업고 사용층도 빠르게 늘고 있는 것은 사실이다. 참고로 [[JQuery]], [[React]]나 [[Vue.js]] 라이브러리는 주로 '뷰'에 집중하고 있는 반면, [[AngularJS]]는 프론트엔드의 풀 스택이라고 할 정도로 다루는 범위가 넓은, 하나의 [[프레임워크]] 수준으로 덩치가 크다. 한편으로는 그만큼 배워야 할 것도 많고 진입장벽이 높다는 게 문제.<ref>여기에 Angular 2부터는 [[타입스크립트]]를 기반 언어로 바꾸었다. [[타입스크립트]]가 가지는 장점이 있긴 하지만 [[자바스크립트]] 개발자로서는 프로그래밍 언어를 하나 더 배워야 하므로 진입 장벽이 좀 더 올라간 셈이다.</ref> 시간이 지날수록 [[React]]나 [[Vue.js]]의 인기가 올라가고 [[AngularJS]]가 밀리는 분위기라<ref>[[JQuery]]는 점점 구닥다리로 밀리면서 기존 코드의 호환성 차원에서 쓰이는 경우가 많고, [[React]]로 갈아엎는 곳도 늘어나고 있다.</ref>, MEAN 스택보다는 'A'를 'R'이나 'V'로 대신하는 풀 스택 개발 쪽이 좀더 많이 쓰이고 있다. | ||
{{각주}} | {{각주}} |
2021년 10월 11일 (월) 22:25 판
동적 웹사이트와 웹 애플리케이션 개발을 위한 풀 스택 플랫폼의 일종. 클라이언트와 서버, 데이터베이스 프로그래밍까지 자바스크립트 한 가지로 통일할 수 있다. 한 가지 프로그래밍 언어로 퉁칠 수 있으니 한두 명의 개발자가 북치고 장구치고 상모까지 돌려야 하는 스타트업을 중심으로 인기가 쭉쭉 올라가고 있다. 심지어 AngularJS를 이용해서 모바일 앱까지 만들어버릴 수도 있다.
MEAN 스택은 정확히 말하면 풀 스택을 위한 몇 가지 소프트웨어를 묶은 일종의 번들 개념이다. 다음과 같은 요소로 구성되어 있다.
- MongoDB : 문서 기반의 NoSQL 데이터베이스. 문서의 표준 형식이 바로 JSON이다. 다른 언어로도 사용할 수 있지만 일단 JSON 기반이므로 자바스크립트와 가장 잘 붙는 편이다. 대다수 클라우드 서비스가 NoSQL 서비스를 할 때 가장 많이 지원하고 있어서 사용자층도 가장 넓다.
NoSQL이 싫으면 MariaDB로 갈아 붙이면 어떨까? 그래도 MEAN인데. - ExpressJS: Node.js에서 가장 널리 쓰이는 웹 프레임워크.
- AngularJS : 구글에서 개발한 MVC 기반 클라이언트 측 자바스크립트 프레임워크. 2.0부터는 자바스크립트의 파생형인 타입스크립트를 기본으로 하고 있다.
- Node.js : 자바스크립트 엔진 기반의 웹 서버.
이 네 가지의 머릿글자를 따면 MEAN이 된다. 발레리 카프로프라는 개발자가 자신의 블로그에서 이 용어를 제안했다. 자바스크립트 기반 풀 스택이라면 이들 중 M, E, N은 대체로 이견이 없지만 A는 좀 얘기가 다른데, 일단 JQuery라는 놈이 클라이언트 측 자바스크립트 라이브러리 중에서는 가장 잘 나가고 있었고 페이스북에서 개발한 React가 JQuery를 추월한 실정이다. Vue.js 역시 사용자가 늘고 있다. AngularJSj 역시 많은 주목을 받고 있으며 구글을 등에 업고 사용층도 빠르게 늘고 있는 것은 사실이다. 참고로 JQuery, React나 Vue.js 라이브러리는 주로 '뷰'에 집중하고 있는 반면, AngularJS는 프론트엔드의 풀 스택이라고 할 정도로 다루는 범위가 넓은, 하나의 프레임워크 수준으로 덩치가 크다. 한편으로는 그만큼 배워야 할 것도 많고 진입장벽이 높다는 게 문제.[1] 시간이 지날수록 React나 Vue.js의 인기가 올라가고 AngularJS가 밀리는 분위기라[2], MEAN 스택보다는 'A'를 'R'이나 'V'로 대신하는 풀 스택 개발 쪽이 좀더 많이 쓰이고 있다.