StrongLoop은 Nodejs 기반의 강력한 프레임워크로 풀스택 모바일 개발에 필요한 거의 모든 기능을 포함하고 있습니다. 2013년에 설립되었으며, 소수의 직원과 기술 및 강력한 실행 역량을 갖춘 팀으로 구성되어 있습니다. 제가 StrongLoop을 접하기 시작한 것도 2013년이었습니다. 당시 저는 nodejs에서 기술 선택을 하고 있었습니다. 많은 프레임워크를 살펴본 결과 제 생각에는 LoopBack이 가장 멋진 것 같았습니다. LoopBack의 문서가 너무 허술하다고 느꼈고(주로 온라인 버전과 다르기 때문), 얼마나 오래 지속될지 몰라 포기했던 기억이 아직도 생생합니다. 1년 만에 돌아와서 이 녹색 액자를 봤을 때 올해는 정말 빠른 발전을 이뤘구나 하는 생각이 들었습니다.
풀 스택 프레임워크 StrongLoop
StrongLoop은 기본적으로 표준 백엔드 서버, Devops, 애플리케이션 모니터링까지 모바일 제품을 만들기 위한 모든 프레임워크와 도구를 제공합니다. StrongLoop의 모든 제품을 완벽하게 소개하려면 긴 시리즈를 작성해야 하므로 여기서는 간략하게만 살펴보도록 하겠습니다.
루프백
봄의 그림자를 어렴풋이 보는 매우 강력한 웹서버 프레임워크...
SDK
당시 StrongLoop의 가장 유용한 점은 백엔드 모델을 기반으로 해당 프런트엔드 SDK를 자동으로 생성한다는 점이었습니다. RESTful API
MEAN 스택은 기본적으로 RESTful API를 지원하도록 모든 새로운 프레임워크를 촉진합니다. 예를 들어 Nodejs의 Node-restify, Sailjs 등은 API를 제공하기 위해 탄생했습니다. StrongLoop은 또한 RAML보다 훨씬 열등한 API 설계 도구(베타 상태)를 제공합니다. 데이터 모델
데이터 모델을 생성하고 해당 RESTful API를 자동으로 생성하는 것은 쉽습니다. 커넥터
물론 다양한 데이터베이스와도 연결될 수 있다. StrongLoop 컨트롤러
디버그, 패키지 관리, 빌드, 배포, 클러스터, 로그 및 기타 여러 Devops 도구. 애플리케이션 모니터
서버 모니터링을 위한 여러 모듈. mBaaS
StrongLoop를 사용하면 푸시, 지리적 위치 계산(Geopoint), 소셜 로그인, 사용자 관리, 다양한 복제, 오프라인 동기화(오프라인 동기화가 좋음) 및 다양한 Stroage 클라우드(AWS, Rackspace)와의 도킹을 포함하여 자신만의 LeanCloud를 생성할 수도 있습니다. 등이 내장되어 있습니다). 물론 이는 실제로 LoopBack에서 제공하는 기능이므로 StrongLoop을 사용하면 영원히 살 수 있습니다. 시작
StrongLoop 설치 sudo npm install -g strongloop
애플리케이션을 생성하세요 slc loopback
(빈 디렉토리 찾기). 프로젝트 이름이 무엇인지만 묻습니다.
모델을 생성하세요slc loopback:model
(Yo 생성기를 기억하세요~). 그러면 모델이 무작위로 여러 가지 질문을 할 것입니다.
복수형은 RESTful API의 경로 이름을 나타냅니다. 모델에 해당하는 경로는 기본적으로 복수형입니다. 예를 들어 Post의 경로는 Posts입니다.
LeanCloud처럼 백엔드를 보려면 127.0.0.1:3000/xxx 같은 곳에 가면 될 것 같아요~ 그럼 xxx=explorer http://127.0.0.1:3000/explorer 그냥 API 대시보드를 보면 됩니다. Swagger로 제작되었습니다.
프로젝트 구조를 보면 루프백도 Meteor처럼 JS 코드를 서버, 프런트엔드(클라이언트), 공통 부분(공통. 개인적으로는 Meteor보다 이 순수 스키마 방식이 더 명확하다고 생각합니다).
나중에 나오는 API Explorer, 데이터베이스 연결 방법은 건너뛰고, 방금 생성한 API를 프런트엔드에서 어떻게 사용하는지 직접 살펴보세요. LoopBack의 접근 방식은 현재 API의 각 끝을 위한 SDK를 생성하는 데 도움을 주는 것입니다. 현재는 Android/iOS/Angularjs만 지원합니다. 다른 웹 프레임워크를 사용하는 경우에는 스스로 의존해야 할 수도 있습니다.
나만의 SDK 만들기 lb-ng server/server.js client/lb-services.js
client/lb-services.js를 살펴보세요. 꽤 좋습니다~
프론트엔드 엔지니어에게 문서가 필요하신가요? lb-ng-doc client/lb-services.js
실행하기 가끔 앞에 sudo를 추가해야 할 때가 있는데(이유는 모르겠네요), http://localhost:3030/에 접속해서 문서를 봐야죠~ 이 기능은 Docular를 기반으로 합니다. 그리고 LoopBack Services를 클릭했을 때 아무것도 없다면 걱정하지 마시고 새로고침을 하시면 됩니다.
초기 Angular 문서처럼 보이는지 확인해보세요~
API 디자이너
많은 프로그래머들이 Parsejs나 LeanCloud를 좋아하는 이유는 그래픽 인터페이스 모델 디자인(또는 API 디자인) 백엔드 때문이라고 생각합니다. 이전에 사용했던 "Yo Generator" API 생성기가 배려심이 부족해 보인다면 StrongLoop에서 새로 출시된 StrongLoop Studio 베타를 사용해 볼 수 있습니다.
프로젝트 루트 디렉토리
sudo npm install -g http://get-studio.strongloop.com/strong-studio.tgz
스튜디오를 설치하세요. Studio strong-studio
를 시작하고, 자동으로 브라우저를 열고 StrongLoop 공식 홈페이지 오른쪽 상단으로 가서 계정을 등록하세요. .) 등록된 사용자 이름으로 로그인하면 API Composer 및 Profiler를 볼 수 있습니다. 빙고! 다양한 방법으로 놀자! On the bottom right is a link to go to the registration page on strongloop.com
p.s. 이때
같은 문제가 발생하면 프로젝트 루트 아래의 package.json이 jslint에 의해 망가졌는지 확인하세요(이유는 모르겠습니다...) SyntaxError: Cannot parse package.json: Unexpected token e
알았어, 알았어, 이 베타는 정말 특별한 베타라고 말해주지... 이전에 코드를 작성했던 프로젝트에서는 사용하지 마세요...
함께 놀 수 있는 MongoDB가 부족한 경우: Mongolab
협업 개발을 위한 IDE를 원한다면: Koding
저렴하고 사용하기 쉬운 VPS를 원한다면: 디지털 오션
그들의 제품이 충분히 저렴하지 않다고 생각한다면: Serverbear
VPS도 원하지 않고 단지 Node 프로젝트를 배포하고 싶다면: Nodejitsu
가능한 한 빨리 클라이언트 학생을 위한 API를 설계하고 싶지만 Node를 사용하고 싶지 않다면 배포할 장소를 찾으세요: Apiary
APP을 만들고 싶지만 많은 사람을 고용하기 위해 돈을 쓰고 싶지 않다면: Appdupe
30hackdays 마지막 글이네요, 드디어 해냈습니다(아...). 아무튼 이 30일 동안 내가 원하는 서비스를 찾는 방법, 프로토타입을 빠르게 구현하는 방법, 개발 제품과 경쟁 제품을 비교하는 방법 등 많은 것을 배웠습니다...
돌이켜 보면 기사의 내용은 확실히 Shekhar의 30일 만에 30가지 기술 학습: 개발자 챌린지(그렇게 많은 시간과 에너지를 투자한 사람이 없다는 것은 사실입니다)만큼 자세하지는 않지만, 제가 선택한 기술은 다음과 같습니다. 더 넓어지는(혹은 더 지저분하다고 불리는) 그것은 나에게 있어 지평을 넓혀가는 과정이기도 하다.
이 시리즈가 여러분에게 영감을 줄 수 있기를 바랍니다. 기술이 그렇게 심오하고 이해하기 어려운 것은 아닙니다. 받아들이면 당장 급여 인상을 받을 수는 없지만, 적어도 추운 날, 와이파이가 없고 외롭고 추울 때는 그래도 가능합니다. 브라우저 콘솔을 열고 잠시 몸을 녹이세요.
아래
글쎄, 생각하시는 그런 것도 아니고, 먹기 위한 것도 아닙니다. 앞으로도 나는 가끔씩 발견하는 흥미로운 개발자 서비스에 대해 계속해서 글을 쓸 것입니다. 또한 StrongLoop에 대한 일련의 기사를 작성하여 이 프레임워크의 더 많은 기능을 소개할 것입니다. .
작은 광고: 저는 현재 고등학생들이 스스로 해커톤에 참여할 수 있는 수준에 도달할 때까지 기술을 가르치는 소규모 수업(무료)을 운영하고 있습니다. 주변에 기술에 관심있는 고등학생분들 계시면 연락주세요~ fxp007@gmail.com
그래, 지는 분들은 알아서 예약하세요~