[TIL] 개발환경 구축 Linux/Mac os

Captainjack·2021년 11월 22일
0

TIL

목록 보기
98/260

Why do front-end developers prefer macs?

https://www.reddit.com/r/javascript/comments/5cdhdt/why_do_frontend_developers_prefer_macs/


윈도우에서 자바스크립트 개발을 시도할 경우, 문제가 될 만한 부분은 주로 다음과 같습니다.

  1. node.js 버전 관리 툴인 nvm은 윈도우를 지원하지 않습니다.

https://github.com/nvm-sh/nvm

  1. node.js 모듈 중 리눅스/macOS용 컴파일 도구를 이용하는 경우 윈도우에서 사용할 수 없습니다.

3.시스템 환경 변수를 사용해야 할 경우, 대부분은 리눅스/macOS 기준으로 설정되어 있으며, 이 경우 윈도우에서 제대로 작동하지 않습니다.

https://ko.wikipedia.org/wiki/%ED%99%98%EA%B2%BD_%EB%B3%80%EC%88%98

  1. git을 이용할 때 개행문자 처리의 차이로, 페어와 협업 시 불필요한 문제가 발생할 수 있습니다.
    물론 여러 대안이 있지만 이는 결국 "대안" 이라는 점에서 한계가 있습니다. 자바스크립트 생태계의 큰 부분을 차지하는 React 개발진이 맥북 이외의 컴퓨터를 쓰는 것을 본 적이 없습니다.

https://www.lesstif.com/gitbook/git-crlf-20776404.html



운영체제 별 패키지 매니저

프로그램 의존성 Window의 .NET Framework를 생각하자

macOS: homebrew
https://brew.sh/
우분투, 데비안 계열 리눅스: apt
https://ko.wikipedia.org/wiki/%EC%96%B4%EB%93%9C%EB%B0%B4%EC%8A%A4%ED%8A%B8_%ED%8C%A8%ED%82%A4%EC%A7%95_%ED%88%B4


Prerequisites

homebrew를 설치하기 이전에 Xcode Command Line Tools를 먼저 설치해야 합니다. git을 CLI에서 사용할 수 있다면, 이미 설치가 되어있는 것입니다. 혹시 macOS 업그레이드 등으로 실행되지 않는 경우, 다음 명령어를 통해 재설치할 수 있습니다.

⚠️ $는 터미널 입력을 의미하는 sign으로, $는 빼고 입력하세요.

$ xcode-select --install

-> homebrew설치


brew 명령어 이용하기

앞서 brew 명령어의 도움말에서도 확인할 수 있듯, 주요 사용법은 다음과 같습니다.

프로그램 검색: brew search 검색어
프로그램 정보 확인: brew info 프로그램이름
프로그램 설치: brew install 프로그램이름
brew 자체 업데이트: brew update
프로그램 업그레이드: brew upgrade 프로그램이름
프로그램 삭제: brew uninstall 프로그램이름
설치된 프로그램 보기: brew list
homebrew 로 설치할 수 있는 몇가지 유용한 프로그램을 소개합니다.


Action Items
wget을 설치해보세요. wget은 URL을 통해 파일을 다운로드 받는 프로그램입니다.
설치 후, 다음 명령을 복사/붙여넣기 해서 실행해보세요. 해당 디렉토리에 goodjob.txt라는 파일이 만들어졌습니다. 다운로드 받은 파일을 확인해보세요.

$ wget -O goodjob.txt https://bit.ly/37sJqCo

neofetch를 설치해보세요. 설치 후, 직접 neofetch를 실행시켜보세요!


JavaScript 런타임(runtime)에 대해 학습합니다.

런타임이라고 하면 어려운 개념으로 여겨질 수 있습니다. 그러나 우리는 이미 JavaScript 런타임을 사용하고 있습니다. 크롬, 사파리 같은 웹 브라우저가 바로 JavaScript 런타임입니다.

런타임이란 프로그래밍 언어가 구동되는 환경입니다. 런타임 이란 어떤 프로그램이 동작할 때, 프로그램이 동작하는 곳입니다. 우리가 JavaScript를 이용해서 코드를 적었으면 코드가 실행됩니다. 이 때, 실행되는 곳이 바로 런타임입니다.

우리는 JavaScript를 다루고 있으니 JavaScript 런타임에 무엇이 있는지 살펴봅니다. 먼저, 웹 브라우저가 대표적인 JavaScript 런타임입니다. 이전에는 JavaScript 런타임이 웹 브라우저 밖에 없었습니다. 그러나 node.js라는 새로운 JavaScript 런타임의 등장으로, JavaScript가 브라우저가 아닌곳에서 실행될 수 있게 되었습니다. node.js의 등장 이후, JavaScript를 이용해서 웹 페이지 뿐만 아니라 서버와 같은 다른 프로그램을 만들 수 있습니다.

node.js 런타임의 등장으로, JavaScript 코드를 브라우저와 node.js 환경 모두에서 실행시킬 수 있습니다. HTML <script> 태그 내에 JavaScript 코드를 작성하면, 이 코드는 웹 브라우저에서 동작합니다. CLI 환경에서 node<file_name>명령어를 프롬프트에 입력하면 작성한 코드가 node.js라는 런타임에서 실행됩니다. 예제를 하나 더 볼까요?

// runnode.js
const testFunction = function(arg){
    console.log("Arg is : ", arg);
}

testFunction(20);

위와 같이 runnode.js라는 파일을 만들어, 전달되는 인자를 출력하는 코드를 작성했니다. 위 코드를 실행시키려면 어떻게 해야할까요? 위 파일을 브라우저에서 실행시키려면, html 파일을 만들고 위 파일과 연결하면 됩니다. 이번에는 명령어 node로 실행해보겠습니다. 터미널에서 runnode.js 파일을 생성하고, 위 함수를 붙여넣으세요. 그 후, 아래와 같이 명령어를 입력하세요.

node runnode.js

터미널에서 "Arg is : 20" 이라는 출력을 확인할 수 있습니다. 이렇게 작성한 코드가 어디에서 동작하고 있는지 구분할 수 있습니다.

정리하면 런타임이란, 프로그래밍 언어가 실행되는 환경, 그리고 node.js는 JavaScript 런타임입니다.

profile
til' CTF WIN

0개의 댓글