ServBay에서 Node.js 사용하기
Node.js란 무엇인가요?
Node.js는 Chrome V8 엔진을 기반으로 만들어진 JavaScript 런타임 환경입니다. 이를 통해 개발자는 서버 측에서 JavaScript 코드를 실행할 수 있어, JavaScript의 활용 범위가 크게 확장되었습니다. Node.js는 이벤트 기반, 논블로킹 I/O 모델을 채택하여 다수의 동시 연결을 효율적으로 처리할 수 있어, 고성능 네트워크 애플리케이션과 API 서비스 구축에 매우 적합합니다. Node.js 생태계는 활발하며, 기본 패키지 관리자(npm, Node Package Manager)는 세계 최대 오픈 소스 라이브러리 생태계 중 하나로, 수많은 재사용 가능한 모듈을 제공합니다.
ServBay의 Node.js 지원
ServBay는 통합 로컬 웹 개발 환경으로서 Node.js 개발자에게 큰 편의를 제공합니다. ServBay를 사용하면 복잡한 명령어 입력이나 버전 충돌 걱정 없이, macOS에서 다양한 Node.js 버전을 손쉽게 설치, 전환, 관리할 수 있습니다.
ServBay는 이전 LTS(장기 지원) 버전부터 최신 Node.js 버전까지 폭넓게 지원하므로, 프로젝트별 요구에 맞는 런타임 환경을 선택할 수 있습니다. ServBay에서 현재 지원하는 Node.js 주요 버전은 다음과 같습니다.
- Node.js 12.x
- Node.js 13.x
- Node.js 14.x
- Node.js 15.x
- Node.js 16.x
- Node.js 17.x
- Node.js 18.x (LTS)
- Node.js 19.x
- Node.js 20.x (LTS)
- Node.js 21.x
- Node.js 22.x
- Node.js 23.x
ServBay는 최신 LTS 및 Current 버전을 포함하도록 지원 Node.js 버전을 지속적으로 업데이트합니다.
Node.js 설치하기
ServBay에서 Node.js 설치는 매우 쉽고 직관적으로, 그래픽 사용자 인터페이스(GUI)를 통해 진행됩니다.
- ServBay GUI 애플리케이션을 실행합니다.
- 사이드바의 패키지 섹션으로 이동합니다.
- 패키지 목록에서 원하는 Node.js 버전을 찾습니다.
- 원하는 Node.js 버전 옆의 초록색 설치 버튼을 클릭합니다. ServBay가 해당 Node.js 버전과 관련 도구를 자동으로 다운로드 및 설치합니다.
설치가 완료되면 해당 Node.js 버전에 '설치됨' 표시가 나타나며, 원할 때마다 다양한 버전 사이를 손쉽게 전환할 수 있습니다.
Node.js 패키지 관리자
ServBay는 Node.js 생태계에서 널리 사용되는 여러 패키지 관리자를 통합하여 프로젝트 의존성 관리를 쉽고 편하게 지원합니다.
- npm (Node Package Manager): Node.js 공식 기본 패키지 관리자입니다. 기능이 풍부하고, 커뮤니티 지원이 활발합니다.
- pnpm: 효율적인 패키지 관리자로, 컨텐츠 주소 지정 저장소를 통해 디스크 공간을 절약하며, 하드링크와 심볼릭 링크로 중복 설치를 방지합니다.
- yarn: Facebook에서 개발한 패키지 관리자이며, 더 빠르고 안정적이며 보안적인 의존성 설치 경험을 제공하도록 설계되었습니다.
이러한 패키지 관리자들은 Node.js 설치 시 기본적으로 함께 설치・활성화되며, ServBay 환경 내에서 바로 사용할 수 있습니다. 이를 사용해 의존성을 설치, 업데이트, 관리할 수 있습니다.
자세한 사용방법 및 명령어는 아래 링크를 참고하세요.
Node.js로 프로젝트와 프레임워크 실행하기
ServBay는 미리 구성된 환경을 제공하여 Node.js 기반의 다양한 프런트엔드 및 백엔드 프로젝트 및 프레임워크를 손쉽게 실행할 수 있습니다. 프로젝트 파일을 ServBay 권장 웹사이트 루트 디렉터리인 /Applications/ServBay/www
하위 폴더에 저장한 뒤, 터미널에서 해당 프로젝트 폴더로 이동해 Node.js 명령어로 앱을 시작하세요.
아래는 ServBay에서 자주 쓰이는 Node.js 프레임워크별 활용 가이드 링크입니다.
프런트엔드 프레임워크
Node.js는 최신 프런트엔드 빌드 도구와 프레임워크의 실행 기반입니다.
- Vue.js: 사용자 인터페이스를 구축하기 위한 점진적 프레임워크. Vue.js 프로젝트 생성 및 실행 방법을 참고하세요.
- React: 사용자 인터페이스를 구축하는 JavaScript 라이브러리. React 프로젝트 생성 및 실행 방법을 참고하세요.
- Angular: 클라이언트 애플리케이션 개발 플랫폼. Angular 프로젝트 생성 및 실행 방법을 참고하세요.
- Next.js: React 기반의 풀스택 웹 프레임워크로, 서버사이드 렌더링 및 정적 사이트 생성을 지원합니다. Next.js 프로젝트 생성 및 실행 방법을 참고하세요.
- Nuxt.js: Vue.js 기반 고성능 SSR(서버 사이드 렌더링) 애플리케이션과 정적 사이트 구축을 위한 프레임워크. Nuxt.js 프로젝트 생성 및 실행 방법을 참고하세요.
백엔드 프레임워크
Node.js는 고성능 백엔드 서비스 개발에도 널리 활용됩니다.
- Express.js: 매우 심플하고 유연한 Node.js 웹 프레임워크로, 웹/모바일 앱 개발을 위한 강력한 기능을 제공합니다. Express.js 프로젝트 생성 및 실행 방법을 참고하세요.
- Koa.js: Express 팀이 설계한 차세대 Node.js 웹 프레임워크로, async 함수를 사용해 미들웨어 작성이 간편하고 견고성이 높습니다. Koa.js 프로젝트 생성 및 실행 방법을 참고하세요.
- NestJS: 효율적이고 확장 가능한 서버 사이드 애플리케이션 구축을 위한 점진적 Node.js 프레임워크입니다. NestJS 프로젝트 생성 및 실행 방법을 참고하세요.
- Hapi.js: 강력하고 유연하며, 설정 우선의 Node.js 프레임워크로 다양한 앱과 서비스 구축에 적합합니다. Hapi.js 프로젝트 생성 및 실행 방법을 참고하세요.
- LoopBack: 빠른 동적 종단 간 REST API 생성을 위한 고확장 오픈소스 Node.js 프레임워크입니다. LoopBack 프로젝트 생성 및 실행 방법을 참고하세요.
- Socket.io: Node.js 기반 실시간 애플리케이션 프레임워크로, 클라이언트와 서버 간 저지연, 양방향, 이벤트 기반 통신이 가능합니다. Socket.io 프로젝트 생성 및 실행 방법을 참고하세요.
ServBay의 통합 환경과 상세 튜토리얼을 통해 다양한 Node.js 프로젝트를 신속하게 구축하고 실행하며, 본연의 코드 개발에 집중할 수 있습니다.