>웹 프론트엔드 >JS 튜토리얼 >Coffeescript_javascript 기술을 사용하여 node.js 프로젝트를 작성하는 방법 요약

Coffeescript_javascript 기술을 사용하여 node.js 프로젝트를 작성하는 방법 요약

WBOY
WBOY원래의
2016-05-16 15:47:051091검색

Node.js는 저의 주요 개발 언어인 JavaScript를 기반으로 애플리케이션을 작성합니다. CoffeeScript는 JavaScript로 컴파일된 프로그래밍 언어입니다. 실제로 CoffeeScript 언어는 JavaScript로의 일대일 변환으로 인해 사용하기에 매우 유연합니다. 프로젝트에 도입하는 방법은 여러 가지가 있습니다. 여기서는 Coffeescript를 사용하여 node.js 프로젝트를 작성하는 방법을 요약하겠습니다.

커피 명령을 직접 사용하여 순수 커피스크립트 프로젝트 실행
일반적으로 커피스크립트를 언급하면 ​​자연스럽게 자바스크립트의 동생이라는 생각이 들게 되고, 결코 js의 그림자에서 벗어날 수 없습니다. 사실 독립된 언어라고 생각하시면 됩니다. 우리 모두는 노드 플랫폼에 전역적으로 커피 스크립트 패키지를 설치한 후 커피 명령을 통해 커피 스크립트 대화형 인터페이스에 들어갈 수 있다는 것을 알고 있습니다. 또한 이를 repl이라고 부를 수도 있습니다. 프로젝트가 완전히 커피로 작성된 경우 간단합니다. 예를 들어 입력 스크립트 이름이 "app.coffee"인 경우 다음을 실행하세요.

코드 복사 코드는 다음과 같습니다.

커피앱.커피

여기서는 익스텐션 커피도 빼놓을 수 없으니 참고하세요.

이 방법은 커피스크립트를 사용하는 가장 "공식적인" 방법이라고 해야 합니다. 간단하고 직접적입니다! 게다가 커피 파일을 프로젝트의 진입점으로 사용하면 전체 프로젝트가 커피와 js 모두와 호환됩니다. 프로젝트에서 js 또는 커피 파일과 모듈을 요구할 수 있으며 프로젝트의 js 파일에서 커피 파일을 요구할 수도 있습니다. 그리고 커피 파일인지 js 파일인지 참조할 때 이름의 이전 부분이 충돌하지 않는 한 확장자가 필요하지 않습니다.

이 방법의 가장 큰 문제점은 모듈로 사용할 경우 커피 프로젝트에만 사용할 수 있으며, 애플리케이션으로 사용할 경우 실행 환경에 커피 스크립트를 설치해야 한다는 것입니다. 결국, 커피스크립트는 여전히 틈새 언어이고, 모듈로 사용되면서 js 사용자를 잃은 것은 안타까운 일입니다.

또 다른 단점은 결국 노드에 js 엔진만 있다는 것입니다. 커피 코드를 실행하기 전에 js로 컴파일해야 하지만, 커피에서 js로의 컴파일 속도는 실제로 상당히 빠릅니다. 빠르다. 하지만 이는 큰 문제가 되지 않습니다. 일반적으로 require는 파일 상단에 작성됩니다. 즉, 애플리케이션이 시작되면 필요한 모든 파일이 한꺼번에 필요하게 됩니다. require를 하면 커피는 js로 컴파일됩니다. .js 엔진에 배치하면 애플리케이션이 시작될 때 컴파일에 소요되는 시간이 집중되며 런타임 중에 새로운 커피가 필요하지 않습니다. 노드의 가장 일반적인 사용 시나리오는 웹 서버이며 이는 문제가 되지 않습니다.

자바스크립트 프로젝트에서 커피스크립트 참조
npm의 커피 스크립트는 전역적으로 설치하거나 프로젝트의 모듈로 설치할 수 있습니다. 그렇다면 프로젝트의 모듈로서 커피 스크립트의 의미는 무엇입니까? 실제로 커피스크립트 컴파일러가 프로젝트에 추가되고 프로젝트는 런타임 중에 언제든지 커피 파일을 컴파일할 수 있습니다.

첫 번째 방법처럼 부담 없이 커피 파일을 참고하고 싶으실 겁니다. 문제 없습니다. 등록하시면 됩니다. 프로젝트 항목 파일이 app.js인 경우 파일 시작 부분에 다음 문장만 추가하면 됩니다.

코드 복사 코드는 다음과 같습니다.

require('커피 스크립트/등록');

그런 다음 프로젝트에서 원하는 대로 커피 파일을 요구할 수 있습니다.

이 방법은 커피 스크립트가 전역적으로 설치되지 않는다는 점을 제외하면 기본적으로 첫 번째 방법과 동일합니다. 따라서 모듈은 애플리케이션으로서 환경에 설치할 필요가 없습니다.

단점, 가장 큰 문제는 코드를 엉망으로 만들기 쉽다는 점이라고 생각합니다. 때로는 js, 때로는 커피도 물론 첫 번째 방법도 이겠지만, 커피를 사용하여 시작한다면, js가 안 쓰여있네요... 간단히 말해서 프로젝트의 언어는 통일하는 것이 더 낫다고 생각합니다(아쉽게도 저는 주로 이 방법을 사용합니다. 이미 js로 일반적인 구조를 작성한 프로젝트에서는 저는 그냥 커피 마시고 싶은데...)

성능 문제는 첫 번째 방법과 동일하므로 더 이상 말씀드리지 않겠습니다.

정통적인 방식 - 편집
컴파일에 관해 이야기할 때면 마치 C나 Java의 시대로 되돌아간 듯한 느낌이 듭니다. 실제로 컴파일된 언어로는 컴파일한 다음 실행하는 것이 올바른 방법입니다. c에는 gcc가 있고, java에는 javac가 있고, cofee에는 커피 -c가 있습니다.

커피 파일을 컴파일하는 것은 매우 간단합니다. 예를 들어 app.coffee 파일을 편집하려면 파일의 현재 디렉터리에서 실행하면 됩니다.

코드 복사 코드는 다음과 같습니다.

커피 -c app.coffee

app.js라는 파일이 현재 디렉터리에 나타납니다. 이 명령은 디렉터리에도 적용할 수 있습니다. 예를 들어 프로젝트의 모든 커피 소스 파일을 src 디렉터리에 넣은 다음 다음을 실행합니다.

코드 복사 코드는 다음과 같습니다.

커피 -c src

src 디렉터리와 모든 수준의 하위 디렉터리에 있는 모든 커피 소스 파일은 js 파일로 컴파일되어 소스 파일과 동일한 디렉터리에 배치됩니다.

그러나 대규모 프로젝트의 경우 소스 파일과 컴파일 결과 파일을 함께 두는 것은 좋지 않습니다. 출력 디렉터리를 지정하세요.

코드 복사 코드는 다음과 같습니다.

커피 -c -o는 src를 출력합니다

이 지시문의 매개변수 순서는 약간 이상합니다. 커피 도움말에는 다음과 같이 정의되어 있습니다.

코드 복사 코드는 다음과 같습니다.

커피 [옵션] 경로/to/script.coffee -- [인수]

모든 옵션은 커피와 파일 경로 사이에 있습니다. 마지막 args는 대상 파일을 스크립트로 실행할 때 전달되는 매개 변수입니다. 즉, 커피와 파일명 사이에 모든 옵션을 넣을 수 있습니다. -c 옵션은 독립적이며 자체 매개변수가 없습니다. 이는 단지 명령어 끝에 제공된 파일이 컴파일된다는 의미이므로 다음과 같이 작성할 수 있습니다.

코드 복사 코드는 다음과 같습니다.

커피 -o는 -c src를 출력합니다

컴파일 결과가 자체 실행 함수 본문으로 둘러싸여 있지 않도록 옵션을 추가하려면 다음과 같습니다.

코드 복사 코드는 다음과 같습니다.

커피 -o 출력 -c -b src

모든 소스 파일을 out.js라는 이름의 대상 파일로 컴파일하려면 다음과 같습니다.

코드 복사 코드는 다음과 같습니다.

커피 -o는 -c -j를 src로 출력합니다

일부 코드를 변경할 때마다 이와 같은 명령을 실행해야 한다면 상당히 짜증나는 일이 될 것입니다. 커피 명령에는 소스 파일 변경 사항을 모니터링하고 자동으로 컴파일할 수 있는 -w 옵션이 있습니다.

코드 복사 코드는 다음과 같습니다.

커피 -o는 -c -w src를 출력합니다

대규모 프로젝트의 경우, 자동화된 구축이 필요한 하나의 명령만으로 모든 개발자가 모든 컴파일 문제를 단 하나의 명령으로 처리할 수 있도록 컴파일 방법을 미리 결정하는 것이 가장 좋습니다.

offee는 C 세계의 make와 유사한 자동화된 빌드 도구인 cake를 제공합니다. 그러나 공식 웹사이트에 명시된 바와 같이 cake는 매우 간단한 빌드 시스템입니다. 실제로 cake의 기능은 cakefile이라는 스크립트를 실행하는 것이며, cakefile 스크립트는 Coffeescript로 작성됩니다. 이 스크립트는 명령어와 해당 설명 및 실행 기능을 선언하는 데 사용되는 작업과 같은 매우 제한된 내장 기능만 제공합니다. 다른 하나는 순수 노드 프로젝트를 작성하는 것입니다. 컴파일을 완료하려면 node의 fs 모듈을 사용하여 커피 모듈에서 컴파일된 문자열을 출력하거나 child_process 모듈을 사용하여 쉘 명령을 실행해야 합니다. 실제로 케이크 구성의 대상이 반드시 커피일 필요는 없습니다. 실제로 노드 스크립트를 실행하고 자동화된 작업을 처리할 수 있기 때문입니다.

또한 유명한 Grunt 및 국내 fekit 등과 같이 커피 자동 편집을 완료할 수 있는 더 나은 타사 자동화 구성 도구가 있습니다.

이 정통 컴파일 방법은 가장 신뢰할 수 있으며 숙련된 프로그래머가 좋아해야 합니다. 이를 통해 팀은 고정된 개발 모델을 형성할 수 있습니다. 또한 컴파일된 프로젝트는 순수한 js 프로젝트가 되며, 애플리케이션으로 직접 실행되거나 다른 프로젝트에서 모듈로 참조되는 경우 추가 종속성이 필요하지 않습니다. 그리고 런타임에 컴파일을 할 필요가 없기 때문에 컴파일로 인한 성능 문제도 없습니다.

너무 번거롭다는 게 단점이다. 소규모 프로젝트를 수행하는 경우 cakefile을 생성하거나 grunt를 구성하는 데만 반나절이 걸리므로 그럴 가치가 없습니다.

위의 요약을 바탕으로, node.js 프로젝트를 작성하기 위해 커피스크립트를 사용하는 것은 실제로 매우 간단합니다. 다음으로, 모두가 서둘러 커피를 사용하기를 바랍니다. 동시에 위의 내용이 모든 사람에게 도움이 되기를 바랍니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.