MEAN 스택이란?
MEAN은 MongoDB, Express, Angular, Node.js의 앞 글자를 딴 약자입니다. 이 네 가지 기술을 조합하면 자바스크립트 하나만으로 프런트엔드부터 백엔드, 데이터베이스까지 전체 웹 애플리케이션을 개발할 수 있습니다.
MEAN.js와 MEAN.io는 본질적으로 같은 개념
MEAN.js와 MEAN.io는 사실상 같은 것이라고 볼 수 있습니다. 두 프로젝트 모두 위에서 언급한 네 가지 기술(MongoDB, Express, Angular, Node.js)을 손쉽게 사용할 수 있도록 미리 구성해 둔 스캐폴딩(Scaffolding) 애플리케이션, 즉 기본적인 프로젝트 뼈대를 제공하는 도구입니다.
즉, 이 라이브러리들은 개발자가 직접 일일이 설정할 필요 없이 기본 구조를 미리 갖춰 놓은 보일러플레이트 역할을 합니다.
스캐폴딩 도구가 주는 이점
이러한 도구를 활용하면 기본 인프라를 구축하는 데 시간을 낭비할 필요가 없습니다. 프로젝트 초기 세팅에 드는 수고를 덜고, 개발자는 오롯이 실제 애플리케이션 개발에만 집중할 수 있게 됩니다.
그렇다면 두 프로젝트의 차이는?
흥미로운 점은 MEAN.io가 원조 프로젝트이고, MEAN.js는 2014년 MEAN.io의 핵심 기여자였던 아모스 하빕(Amos Haviv)이 개발 방향성 문제로 이를 포크(fork)하며 만들어졌다는 것입니다. 따라서 두 프로젝트는 출발점은 같지만, 현재는 각각 다른 커뮤니티와 개발 철학, 프로젝트 구조를 가지고 발전해 왔습니다.
정리하면, MEAN.js와 MEAN.io의 근본적인 목적과 구성 요소는 동일하며, 선택은 개인의 취향이나 프로젝트 요구 사항에 따라 달라질 수 있습니다.