1.3 서버 외의 노드
처음에는 노드를 대부분 서버로 사용했지만, 노드는 자바스크립트 런타임이므로 용도가 서버로만 국한되지 않습니다. 사용 범위가 점점 늘어나서 웹, 모바일, 데스크톱 애플리케이션 개발에도 사용되기 시작했습니다.
노드 기반으로 돌아가는 대표적인 웹 프레임워크로는 앵귤러(Angular), 리액트(React), 뷰(Vue) 등이 있습니다. 앵귤러는 구글 진영에서 프런트엔드 앱을 만들 때 주로 사용하고, 리액트는 페이스북 진영에서 주로 사용합니다. 모바일 개발 도구로는 리액트 네이티브(React Native)를 많이 사용합니다. 페이스북, 인스타그램, 핀터레스트, 월마트, 테슬라 등이 리액트 네이티브를 사용해 모바일 앱을 운영 중입니다. 데스크톱 개발 도구로는 일렉트론(Electron)이 대표적입니다. 일렉트론으로 만들어진 프로그램으로는 Atom, Slack, Discord 등이 있습니다. 이 책에서 사용할 에디터인 비주얼 스튜디오 코드도 일렉트론으로 만들어졌습니다.
▲ 그림 1-16 노드 기반의 개발 도구