알고리즘
: 컴퓨터가 연산을 절차에 따라 처리하는 과정
: 프로그래머스에서 알고리즘 연습 및 테스트 예정
//1번째 계단에서 100번째 계단까지 최소 몇걸음이면 가는지?
//한걸음당 최대 2계단
let answer = 0;
const limit = 100;
for (let i = 1; i < limit; i = i + 2) {
answer = answer + 1;
}
⇒ i 에 어떤 값을 할당할건지 명확하게 설정해야한다는 점과 반복문에 i 가 없이도 실행이 가능하다는 점을 배울 수 있었음
자바스크립트 배워야 하는 이유
: 무엇을 하든 웹페이지를 만들어야하는 필요성 / 수요가 많음
: 웹페이지를 만들기 위한 유일한 언어 ⇒ 자바스크립트 공부의 필요성!
Node.js : Chrome V8 JavaScript 엔진으로 빌드 된 JavaScript 런타임(환경)
: 웹브라우저를 제외한 자바스크립트 언어가 구동가능한 환경, 자바스크립트의 런타임
: 웹브라우저를 사용하지 않고도 내 로컬 환경에서도 JS 언어 실행 가능
: 설치는 Node.js 홈페이지에서 가능 / 최신버전보다는 안정적인 버전으로 설치 권장
: node를 설치하면 npm도 자동으로 설치가 됨
Node.js 사용법
ls : 현재 터미널이 위치해 있는 폴더 목록 조회
cd 폴더명 : ‘change directory’ 해당 폴더로 이동 (directory는 폴더를 의미)
mkdir: ‘make directory’ 폴더만들기
탐색기에 폴더나 파일 우클릭후 종합터미널 열기 : 해당 js 파일로 터미널 이동
node 실행파일명.js : node.js에서 소스코드 실행 가능 ⇒ 터미널 출력 (이때 해당 파일에 터미널이 위치해야함)
npm (npmjs.com)
: Node Package Manager로 Node.js 기반에서 실행될 수 있는 모듈(프로그램보다 작은 단위의 기능들)을 관리하는 관리자
: 개발자들이 자신이 만든 모듈, 라이브러리 등을 공유하기 위해 npm 사이트(공개 저장소)에 등록해 놓았고, 우리는 필요할 때 마다 이 모듈들을 가져와 사용함으로써 개발에 쓰이는 시간을 단축가능
yarn
: 페이스북이 npm이 느려서 직접 개발함
: npm과 같은 역할을 하는 JS 패키지 매니저
yarn
을 설치 : 기본 터미널 창에 sudo npm install -g yarn
명령어를 입력 후 yarn -v
을 입력해 잘 설치가 됐는지 확인 백엔드 개발자 하는일
: 프로그램을 만드는 일(Node.js에서 실행)
: 백엔드 컴퓨터 내 백엔드 프로그램(서버) 안에 여러가지 함수(API) 생성 및 보유
: 해당 웹페이지에서 데이터 처리해서 데이터 베이스 컴퓨터(엑셀)에 정보 저장
why? 백엔드 API를 거쳐야하는지
: 안전하게 데이터를 검증하기 위해
: 에러/장애/오류 안나게 하기 위해
: 사고를 방지하기 위해
API
: 결국 함수와 같다고 이해하자
: API 스럽게 함수만들기!
인증번호 API 만들기
: 구현할 기능을 우선적으로 정리
리팩토링
: 같은 기능과 결과를 가져오는 코드를 다시 유지보수에 더 효율적으로 만드는 것
early exit 패턴 이용하기
: 에러가 먼저 있는 것 추려내고 return으로 종료 후 아래는 정상인 경우 수행하는 방법
: false인 경우 return을 통해 일찍이 종료시켜주는 것 ⇒ 유지보수에 용이
퍼사드 패턴(Facade = 건물외곽)
: 건물 내부 숨기기 방법을 통해 리팩토링하자!
: 마찬가지로 다른 개발자들의 유지보수 편의를 위해 성외곽처럼 만들어 주자!
: 기능별 함수를 선언하고 타 파일에 저장 후 실행 함수 파일에 불러와서 실제 실행 함수에는 각각의 기능별 함수만을 넣어주는 방법
추가로 알게된 github
추가로 사용한 매서드
글자 대체
replace(바꿀 문자 , 어떤 문자로 바꿀건지)
2 . 글자 추출
substring(추출시작할 문자열 인덱스번호,추출 마지막 문자열 인데스번호 +1)