Development37 Mac에 Homebrew 설치하기 Homebrew 설치하기1. 아래 명령어를 터미널 붙여넣는다.코드를 복사하고 싶다면, 해당 링크로 들어가 코드 복사 하기 - https://brew.sh/index_ko/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"위 명령어 사용하여 Homebrew를 설치한다.완료 후, brew help 등 명령어를 실행하면, zsh: command not found: brew 와 같은 에러가 발생한다. 2. 이후, 아래 명령어를 터미널 붙여넣는다.eval $(/opt/homebrew/bin/brew shellenv)* eval 명령어: 기회를 한 번 더 달라, 이 라인을 다시 해석하고 실행하라 라.. 2023. 4. 5. nvm(node version manager) 설치 과정 nvm 이란,nvm이란 Node Version Manager의 약자로, Node.js 설치 및 버전 변경을 관리해주는 도구이다. nvm을 사용하여 상황에 맞게 Node.js를 원하는 버전으로 설치, 변경 가능하다.nvm 설치 이유간략하게, 다른 팀원들과의 node, npm 버전을 맞추기 위함이다. nvm 설치 과정1. 아래 명령어를 터미널 붙여넣는다.curl -o- | bash2. nvm을 확인했을 경우, 다음과 같이 command not found가 뜰 것이다.$ nvm ls -bash: nvm: command not found3. vi ~/.zshrc를 이용하여 zshrc에 환경 변수 설정한다.vi ~/.zshrc4. vi 에디터로 zshrc 안에 삽입 및 확인을 한다.알파벳 i (insert).. 2023. 4. 5. [React] 리액트 파일 확장자를 jsx로 하는 이유 결론적으론 .js와 .jsx의 확장자로서의 차이는 없다. 리액트 파일은 통상적으로 .js 대신 .jsx 확장자를 사용한다. 이런 컨벤션은 JSX가 표준 Javascript가 아니기 때문에 발생했다고 한다. 즉, 파일 내부에 표준 Javascript 문법만 사용됐다면 파일 확장자로 .js가 적절하다. 반면에 jsx나 Typescript처럼 파일 내부에 표준 Javascript 이외에 다른 코드가 있다면 해당 파일의 확장자는 .js가 아닌 다른 확장자로 지정한다고 한다. 예를 들어 jsx가 사용된 파일 확장자는 jsx로, typescript가 작성된 파일 확장자는 .ts로 지정한다. Reference https://stackoverflow.com/questions/46169472/reactjs-js-vs-j.. 2023. 1. 11. [React] 비동기 통신과 AJAX와 fetch 함수 한 번에 보기 0. Before enter to Fetch, What is AJAX? HTML에서 화면을 이동하기 위한 방법이 어떤 것이 있을까? 방식으로 주소를 줘서 이동하는 것을 생각할 수 있을 것이다. 그러나 이 방식은 화면 전체를 교체하는 것이기 때문에 이동할 때마다 화면이 깜빡거리게 될 뿐더러 페이지의 용량이 크다면 전환까지의 시간이 오래 걸린다. 심지어 자바스크립트는 싱글 스레드 방식이기에 하나의 스레드에서 모든 것을 돌려야 한다. 이를 보완하기 위해 비동기 통신이라는 개념이 등장했다. 여기서 잠시 비동기가 무엇인가 하면, 비동기란 자바스크립트에서 특정 코드의 연산이 끝날 때까지 코드의 실행을 멈추지 않고 다음 코드를 먼저 실행하는 것을 의미한다. 비동기적 자바스크립트 동작을 하는 기술들을 통틀어 Ajax라.. 2023. 1. 11. [React] 로그인 기능(JWT, Local Storage): token 저장, 서버에 전달하기 유튜브 프리미엄은 로그인을 해야 광고를 보지 않을 수 있고, 쿠팡에서는 로그인을 해야 내 장바구니로 넘어갈 수 있다. 이러한 인가 과정에서 필수적 요소는 바로 token이다. ! 로그인 후 발생되는 token을 localStorage에 저장하고, 특정 사이트에서 필요할 때 서버에 보내는 것까지의 과정을 알아보자. 0. token, 왜 필요한가? HTTP는 단기기억상실과 같은 stateless 특성을 가지고 있기 때문에 한 번 로그인을 한다고 그 사실을 계속 기억하지 못한다. 따라서 원래대로라면 로그인을 했더라도 마이페이지 등 로그인이 필요한 사이트에 접속할 때마다 로그인을 진행해야 한다. 이러한 상황을 막기 위한 것이 token이다 ! 먼저 로그인을 완료하면 인증 스티커와 같은 token을 전달받고, 마.. 2023. 1. 11. 웹 통신의 큰 흐름(브라우저, 프로토콜 스택, LAN 어댑터, 허브, 스위치, 라우터, 방화벽, 캐시 서버, 웹 서버) 웹 브라우저에 google.com을 입력했을 때 어떤 일이 일어날까? in 브라우저 1. 주소창에 입력된 URL 파싱 2. HTTP request 메시지 생성 3. 웹 서버에 HTTP request 메시지를 전송 이 때 만들어진 메시지 전송은 브라우저가 직접하는 것이 아니다. 브라우저는 메시지를 네트워크에 송출하는 기능이 없으므로 OS에 의뢰하여 메시지를 전달한다. 우리가 택배를 보낼 때 직접 보내는게 아니라, 이미 서비스가 이루어지고 있는 택배 시스템(택배 회사)을 이용하여 보내는 것과 같은 이치이다. 단, OS에 송신을 의뢰할 때는 도메인명이 아니라 IP주소로 메시지를 받을 상대를 지정해야 하는데, 이 과정에 DNS 서버를 조회해야 한다. - 네트워크에 HTTP 요청을 보내는 것은 네트워크를 담당하는.. 2023. 1. 9. [Git] git conflict(충돌)시 강제로 pull 하기 💡 git conflict(충돌)시 강제로 pull 하기 💡 git pull을 하지 않고 push를 했을 경우나 여러 버전이 섞이면서 충돌나는 경우가 자주(?) 있었다. 😓 local의 버전이 없어져도 괜찮을 경우 강제로 pull하는 명령어이다. git fetch --all git reset --hard origin/master git pull origin master 2022. 12. 7. [Git] remote branch 가져오기 로컬에서 원격의 브랜치를 찾을 수 있도록 갱신 git remote update 브랜치 확인 # 원격 저장소 확인 git branch -r # 원격 + 로컬 저장소 확인 git branch -a 원격 저장소의 브랜치 가져오기 git checkout -t origin/브랜치명 2022. 11. 11. [Git] Git 협업 필수 작업 - branch, issue, PR git으로 협업하기 위해 사용했던 방법에 대해 간략하게 정리해보려고 한다. 1. 먼저, 작업할 레포지토리(다른 사람의 Github repository)를 fork 한다. fork ? : 다른 사람의 Github repository에서 내가 어떤 부분을 수정하거나 추가 기능을 넣고 싶을 때 해당 respository를 내 Github repository로 그대로 복제하는 기능이다. 그럼 내 깃허브에 fork한 레포지토리가 생성된다. 내 깃허브에 나만의 레포지토리로 생성된 것이기 때문에 수정하거나 추가를 해도 원본 레포지토리에 영향이 없다. 2. fork한 레포지토리를 IDE에서 clone 한다. git clone [repo url] clone한 레포지토리를 각자의 IDE에서 코드 작업하면 된다. 3. 수정.. 2022. 9. 19. 이전 1 2 3 4 5 다음