작성
·
249
1
수강생분들의 질문을 기다립니다!
- 에러에 해당하는 질문은 "에러가 발생한 상황에 대한 충분한 설명", "에러 메세지", "에러가 난 코드 스크린샷"을 함께 첨부해주세요.
- 언어에 해당하는 질문은 구글링 및 서치 후에 구체적으로 질문해주시면 좋습니다.
- 간단한 진로 및 방향성에 대한 질문은 메일로 보내주세요.
- 패키지 버전 관리은 실무 환경과 트랜드에 맞추어 강의를 업데이트 하고 있습니다. 강의를 그대로 따라갔는데 에러가 발생한다면 패키지 버전을 강의에서 사용하는 버전과 동일하게 맞춰주세요!
- 강의 노트, QA 목록, 공지 사항을 먼저 확인해주세요.
- 논리적이고 구체적인 질문은 학습 효과를 올립니다 :)
build후 app.js를 실행시키는 것과 app.ts를 실행하는 것의 차이가 있을까요??
ts-node 같은 것을 활용하면 바로 실행이되는데 왜 js로 빌드하는 것인지?? 궁금해요!!
호환성 때문일까요??
답변 2
1
Management of updated packages allows for instruction that is current with both the workplace and societal norms. If you've followed the lecture and run into trouble, try using the same version of the package that was used in dordle the presentation. Execution of TypeScript code is done as a node thanks to ts-node, an executor that dynamically converts TypeScript to JavaScript. The ability to rapidly test TypeScript code during development is a big plus, but the constant compilation and running of the code in a production setting makes performance sluggish.
0
좋은 질문입니다!
조금 쉽게 풀어서 말씀 드리면 개발을 한 코드를 프로덕션 환경에서 실행하는 목적으로 최적화를 하기 위해 빌드를 한다고 할 수 있습니다.
프로덕션 환경에서는 node (자바스크립트 실행기)를 사용하는데 node는 타입스크립트가 아닌 자바스크립트 코드를 실행하기 때문에 타입스크립트 코드를 자바스크립트 코드로 컴파일하여 해당 자바스크립트를 실행하는 것입니다.
ts-node는 내부적으로 타입스크립트 코드를 그때 그때 자바스크립트로 컴파일하여 node로 실행하는 실행기입니다. 개발용으로는 빠르게 타입스크립트 코드를 테스트 할 수 있기 때문에 편하지만 프로덕션 환경에서는 코드 실행을 할때마다 컴파일하여 실행하기 때문에 성능이 좋지 않습니다.
따라서 프로덕션 환경에서는 빌드를 해서 자바스크립트로 변환(컴파일)한 다음 해당 자바스크립트를 실행하는 것입니다!
추가적으로 질문 사항 있으시면 남겨주세요 :)