서브메뉴
검색
본문
Powered by NAVER OpenAPI
-
Meteor 코딩 공작소 (웹 개발은 자바스크립트 하나로 끝내라!)
저자 : 박승현
출판사 : 길벗
출판년 : 2017
정가 : 32000, ISBN : 9791160503609
책소개
풀스택 개발의 생산성을 위한 Meteor 프레임워크
웹 애플리케이션 개발의 고통에서 해방된다
웹 애플리케이션을 개발하는 과정이 왜 이렇게 고통스러운가? 이 의문에서 Meteor 프레임워크는 개발되었다. 따로 노는 MEAN 스택이 아닌 유기적으로 잘 통합된 풀 플랫폼 개발을 Meteor로 경험한다.
자바스크립트 하나로 끝낸다
Meteor는 클라이언트-데이터베이스-서버 프레임워크이며, 전체가 자바스크립트로 작성되었다. 따라서 자바스크립트 하나로 클라이언트와 서버 개발을 할 수 있다. 자바스크립트만 알고 있다면 Meteor는 쉽게 배울 수 있다. 낮은 학습 곡선과 높은 생산성을 위해 개발된 프레임워크가 Meteor다.
다양한 프로젝트로 Meteor를 학습한다
Meteor의 기본 작성법을 익히기 위한 주소록 프로젝트, 데이터를 실시간으로 업데이트하는 기능을 이용한 채팅 프로젝트, 동시 접속한 사람들이 실시간으로 도트를 찍으며 그림을 완성하는 모두의 도트, 비즈니스 활용에 필수인 차트 프로젝트, 사람들이 올린 이미지를 공유하는 이미지 게시판 프로젝트를 모두 Meteor로 구현해본다. 또한, 사용자 입력 검증, 소셜 로그인, 보안을 위한 설정 방법을 학습한다.
목차
[이 책의 내용]
● Meteor 설치(macOS, 리눅스, 윈도)
● 주소록 구현과 부트스트랩 적용
● 입력 데이터 검증, 보안 기능, 페이징 구현
● 채팅 프로젝트, 템플릿 구현
● 모두의 도트, 점 찍기와 선 그리기 구현
● 파이 차트, 라인 차트 그리기
● 이미지 게시판 구현
● 라우팅 구현
● 템플릿 언어 스페이스바
● 미티어 발행과 구독
● 5분 만에 구현하는 REST 서버
● Meteor 패키지 구현
[저자 서문]
미티어는 자바스크립트 풀스택 플랫폼입니다. 프런트엔드, 백엔드 그리고 데이터베이스까지 자바스크립트로 이루어진 풀스택 플랫폼이라서 자바스크립트를 좋아하는 사람에게는 정말 재미있는 도구입니다. 개발 속도가 빨라서 스타트업이 서비스를 신속하게 론칭하여 고객과 만날 수 있는 시간을 줄여 줍니다. 브라우저뿐만 아니라 모바일에서도 빠르게 앱을 출시할 수 있습니다. 하지만 저에게 시작은 쉽지만은 않았습니다. 우선, 저의 시작을 잠깐 들려 드릴게요.
프리랜서로 개발하던 시절에 “프런트엔드는 자바스크립트 프로그래밍, 데이터베이스도 몽고디비를 사용하는데 백엔드도 자바스크립트였으면 좋겠다”라는 생각을 하고 있었습니다.
마침 공공기관의 프로젝트를 혼자 진행하게 되었습니다. 처음 계획은 Express.js를 사용하여 자바로 프로젝트를 하던 것처럼 Express.js로 REST 서버를 만들고 프런트는 앵귤러를 이용하여 일반적인 웹 프로그램 형태로 구현하려고 했었습니다.
그러던 중 오랜 지인(이재호 님)의 강력한 추천을 받아 미티어를 선택하게 되었습니다. 처음에는 앵귤러(버전 1.0)로 되어 있는 프런트 프로그램들도 다 버리고 미티어로 갈아타야 하나 고민도 많았습니다. 하지만 다행히도 미티어는 기존에 작성한 프런트 코드를 많이 수정하지 않고 재사용할 수 있는 방법을 제공하고 있었습니다. public 폴더에 기존 .html, .js를 넣고 미티어로 REST 서버를 만들어서 기존 프런트 코드가 잘 동작하게 하는 방법이지요. 그 뒤로 새로 작성하는 프로그램은 미티어(블레이즈)로 작성하고 나중에 앵귤러로 만들었던 코드도 점점 미티어 블레이즈 코드로 전환을 했습니다. 물론 프로그래밍 패턴이 자바와는 많이 다르고 0.7 버전부터 시작했는데 빠른 업데이트에 여러 번 고난을 겪었지만, 결과물에 만족하는 고객분들을 보고 많은 보람을 느꼈습니다. 특히 배치 프로세스를 수행하면 실시간으로 웹의 값이 변경되는 모습을 보고 재미있어하는 고객분들의 모습을 보는 게 즐거웠습니다. 그리고 미티어를 하면서 미티어 자체를 배우는데 즐거움을 얻었을 뿐만 아니라 미티어를 통해서 배운 개념이 오히려 많았습니다. 특히 리액티비티는 미티어의 주된 개념입니다. 리액티비티는 가깝게 엑셀에서도 찾을 수 있는 오래된 개념이기도 합니다. 게다가 리액티브 프로그래밍은 요즘 많은 관심을 받고 있습니다. 이 책을 통해서 리액티브 프로그래밍에 푹 빠지셨으면 좋겠습니다.
처음에 미티어가 국내에서 잘 알려지지 않아서 많은 어려움이 있었습니다. 첫 프로젝트를 0.7 버전으로 시작했는데 0.8, 0.9 메이저 버전 업데이트가 있을 때마다 프로젝트를 다시 만들어야 할 정도로 변화가 빠르고 심했습니다. 참고할 수 있는 문서와 다큐먼트가 적었습니다. 좋은 방향으로 바뀌는 과정이었지만 힘든 시기를 보냈었지요. 사실 중간에 그만두고 싶은 마음도 있었지만, 되돌릴 수 없기에 전진했다고 고백합니다. 하지만 1.0 이후로는 많이 안정화되어서 크게 걱정할 필요는 없습니다. 또한, 미티어 웹 사이트에 문서들도 잘 정리되어 있습니다. 게다가 원하는 프런트엔트 프레임워크를 사용하여 개발할 수도 있습니다.
국내에는 페이스북에 미티어 스쿨이라는 그룹이 있습니다. 처음에는 미티어를 좋아하는 사람들 몇 명이 “미티어 코리아”라는 커뮤니티를 만들어 발표도 하고 미티어 본진(본사)과 연락을 주고받으며, 해커톤도 개최하는 등 활발한 활동을 하였습니다. 그러던 중 “새로 배우고 싶어 하는 분들을 위해서 강의를 해야겠다”라고 마음을 먹고 미티어 코리아 내부에 미티어 스쿨이라는 소모임을 만들어서 강의했습니다. 처음에는 두서없이 서투른 강의를 시작했습니다. 점차 경험이 생기면서 초급, 중급반으로 나누어서 강의하게 되었습니다. 그러다 보니 처음 시작하는 분들이 어떤 걸 어려워하는지도 알게 되었습니다. 강의가 끝나면 실제로 수행하는 프로젝트에 대해서도 듣게 되었고, 프로젝트를 쉽게 이끌 수 있도록 도움이 되는 강의 교재를 만들고 싶다는 욕심이 났습니다. 그리고 그 교재를 공유하기 위해서 페이스북 그룹을 만들었습니다. 이런 내용을 기반으로 집필까지 하게 되었습니다.
특히, “발행/구독이나 리액티비티를 어떻게 하면 쉽게 이해할 수 있을까”에 대한 고민이 많았습니다. 그래서 예제를 통해서 익힐 수 있도록 노력했습니다. 부족한 부분은 25~37장에 자세히 설명했습니다.
그러니 부디 25~37장도 빼놓지 마시고 읽어 주셨으면 좋겠습니다. 분명 미티어를 즐기는 데 많은 도움이 될 것으로 생각합니다. 그래도 어려움이 있다면 페이스북 미티어 스쿨(https://www.facebook.com/groups/meteorschool/)에 질문을 해주시면 많은 미티어 선배들이 도와줄 겁니다. 물론 책에 대한 내용도 제가 답변해 드릴게요. ^^