: HTTP는 Hyper Text Transfer Protocol의 약자로써 인터넷에서 데이터를 주고받는 프로토콜을 말한다. 브라우저와 서버가 통신할 수 있도록 만들어주는 여러 프로토콜 가운데 한 종류로 웹 브라우저와 웹 서버 사이에 HTML(웹 문서를 만들기 위한 언
오늘은 ==(형변환비교), ===(엄격한비교)의 차이점에 대해 알아볼것이다.들어가기에 앞서 자바스크립트(JavaScript)에선 두연산자를 모두 사용한다.
Template Literals : ES6부터 새로 도입된 문자열 표기법이다. 문자열 생성시 따옴표 대신, 백틱(`)을 사용한다. 여기서 ES6이란, ES란, ECMAScript의 약자이며 자바스크립트의 표준, 규격을 나타내는 용어이다. 뒤에 숫자는 버전을 뜻하고 E
: 구조 분해 할당은 배열 혹은 객체에서 각각 값(value)이나 프로퍼티(property) 를 분해하여 손쉽게 별도의 변수에 담을 수 있도록 해주는 것이다.이렇게 한공간에 담아줌으로써 가독성도 좋아지고 편리하게 코드를 짤 수있다.배열은 \[]를 사용하고, 객체는 {}
API : Application Programming Interface(애플리케이션 프로그램 인터페이스)의 줄임말이다. API의 맥락에서 애플리케이션이라는 단어는 고유한 기능을 가진 모든 소프트웨어를 나타낸다. 인터페이스는 두 애플리케이션 간의 서비스 계약이라고 할 수
:기본적으로는 package.json은 문서다.개발자가 배포한 패키지에 대해, 다른 사람들이 관리하고 설치하기 쉽게 하기 위한 문서.npm에 패키지를 배포하고 npm registry에 올리기 위해서 반드시 필요한 문서파일이다.feat.npmdocs
: 다른 함수가 실행을 끝낸 뒤 실행되는 함수를 말한다.
GIT: 분산 버전 관리 시스템(DVCS)Distributed version control systems 리누스 토르발스가 리눅스 커널을 관리하는 기존 툴이 엉망인 것에 Git이라는 소스관리 툴을 만들었다고 한다. 많이 답답했는지 2주만에 만들었다고 한다..😮
: 관계형데이터베이스관계형 데이터베이스는 고정된 행(row)과 열(column)로 구성된 테이블에 데이터를 저장한다. 각 열은 하나의 속성에 대한 정보를 저장하고, 행에는 각 열의 데이터 형식에 맞는 데이터가 저장된다.
: Model, View, Controller 의 약자로 하나의 프로젝트를 구성할 때구성 요소를 세가지로 나눈 패턴이다.
:ES란, ECMAScript의 약자이며 자바스크립트의 표준, 규격을 나타내는 용어이다.그리고 뒤에 숫자는 버젼을 의미한다. 그냥 쉽게 전체다 버젼이라고 생각하면 될 것 같다.
: 우선 스코프란, "범위"라고 해석 할 수 있다.js에서도 범위란 의미를 가지며 좀 더 접근해서 보자면, "식별자 접근 규칙에 따른 유효 범위"라고 할 수 있다.
Docker :도커는 컨테이너 기반의 오픈소스 가상화 플랫폼이다.
: 자바스크립트(JavaScript)는 객체(object) 기반의 스크립트 언어다.
: 객체의 참조값(주소값)을 복사하는 것얕은 복사는 참조값과 관련되어있는데, 여기서 참조값은 여려 자료형으로 구성되는 메모리에 저장된 객체이다.
우선 null과 undefined의 의미는 둘다 값의 존재를 표현해주는 타입이다.
스크래핑과 크롤링에 대해서 알아보자우선 스크래핑과 크롤링은 특정 사이트에서 정보를 가져오는것인데, 이름에서도 볼 수 있듯이 정도나 방법이 다름을 알 수 있다.
: oop는 Object Oriented Programming의 약자로 객체지향 프로그래밍을 뜻한다.oop는 js에서 구현할 수 있으며 코드의 재사용률을 높이고 코드를 간결하게 함으로써 유지 보수가 쉽다.그리고 데이터를 안전하게 보관할 수 있다.
: async와 await는 js의 비동기 처리 패턴 중 하나이다.
: NestJS는 TypeScript(타입 스크립트)를 지원하는 효율적이고 확장 가능한 Node.js의 서버 애플리케이션 프레임워크이며...
: Typescript는 정적 유형 정의를 추가하여 Javascript를 기반으로 하는 오픈 소스이며 Type을 추가함으로써 코드가 올바르게 작동하는지 확인할 수 있다. (쉽게 말해서 자바스크립트의 상휘호완인 느낌이다.)
:Object-Relational Mapping의 약자로 객체-관계 매핑이다.
DB는 데이터베이스 이고, Schema는 DB의 구조와 제약 조건에 관한 전반적인 명세를 정의한 메타데이터의 집합이다.
: JWT는 Json Web Token의 약자로 보통 클라이언트와 서버 사이에서 통신할 때 권한을 위해 사용하는 토큰이다.
: 쿠키의 단점을 보완해서 만든 기술이다. key, value로 이루어진 데이터 파일이다. 서버의 자원이 사용하므로 서버의 공간이 필요하다. 기기마다 차이는 있으나 모바일 2.5MB, 데스크탑 5MB~10MB정도 저장 가능하다. 쿠키 보다 보안이 우수하며 많은
: 말그대로 로그인 하는 과정이다.
: 평문을 암호문으로 변환하는 과정이다.(평문: 해독 가능한 형태의 텍스트, ex) "가나다123"):암호문을 평문으로 변환하는 과정(암호문: 해독 불가능한 형태의 텍스트, ex) "dfEcvBa!")단방향 암호화: 이름 그대로 한방향으로 한다고 생각하면 쉬우며, 암호
: 유저의 정보를 확인하고 맞다면 로그인 증표를 받는다고 생각하면 된다.: 인가는 인증에서 받은 로그인 증표를 던져서 증명한다고 생각하면 된다.이런 기능들이 필요한 이유는 특정 서비스를 누가 언제 어떻게 쓰는지 파악하기 위해 사용된다.API에서 제일 많이 사용되는 기능
우리가 온라인으로 구매를 하는 과정은 다음과 같다. > 1. 구매자가 구입할 옷에 대한 정보와 금액을 판매자에게 전달 판매자는 전달받은 금액을 PG사에게 결제를 요청 PG사는 요청받은 정보를 은행사에게 다시 결제 요청 은행사는 요청받은 금액을 구매자의 계좌에서 출금 후
: CORS는 Cross-Origin Resource Sharing의 약자로 "교차 출처 리소스 공유"라는 뜻을 갖고 있다. 동일한 출처가 아닌 다른 출처에서 데이터를 주고 받는 것을 허용하는 정책이다.: 간단하게 URL 구조에서 살펴본 Protocal, Host, P
: 소셜 로그인은 소셜 네트워킹 사이트의 정보를 이용해 타사 애플리케이션과 플랫폼에 손쉽게 로그인할 수 있는 프로세스를 말한다. 이 프로세스는 계정을 만들 필요 없이 편리한 방법을 제공하여 로그인 및 등록 경험을 간소화할 목적으로 개발되었다.나도 많이 사용하지만 할 때
Back-end에 파일을 업로드하는 API를 만든다.브라우저에 파일 태그를 만든다.태그를 통해 파일을 선택하면 파일 객체가 들어오고, 그 객체를 state나 변수에 저장할 수 있다.파일을 uploadFile API에 보내면 Back-end에서 Storage로 파일을 전
: 트랜잭션이란, 데이터베이스의 상태를 변화시키기 위해서 수행하는 작업을 뜻한다.여기서 데이터베이스의 상태를 변화시킨다는 것은 질의어(SQL)을 이용해서 데이터베이스에 접근 하는 것을 의미한다. ex) select, insert, delete, update이러한 트랜잭
: Key, Value 구조의 비정형 데이터를 저장하고 관리하기 위한 오픈 소스 기반의 비관계형 데이터 베이스 관리 시스템 (DBMS)이다.데이터베이스, 캐시, 메세지 브로커로 사용되며 인메모리 데이터 구조를 가진 저장소이다.보통 코딩하시는분들은 대체적으로 레디스를 많
: 마이크로서비스는 소프트웨어가 잘 정의된 API를 통해 통신하는 소규모의 독립적인 서비스로 구성되어 있는 경우의 소프트웨어 개발을 위한 아키텍처 및 조직적 접근 방식이다. 원래는 전체적으로 통제하던것을 API하나하나에 직접 연결해서 유지보수와 기능구현을 편하게 해주는
: TDD란 Test Driven Development의 약자로 '테스트 주도 개발'이라고 한다. 반복 테스트를 이용한 소프트웨어 방법론으로, 작은 단위의 테스트 케이스를 작성하고 이를 통과하는 코드를 추가하는 단계를 반복하여 구현한다. 튼튼한 객체 지향적은 코드TDD
: Domain Name Syetem의 약자로 호스트의 도메인 이름을 호스트의 네트워크 주소로 바꾸거나 그 반대의 변환을 수행할 수 있다. 특정 컴퓨터의 주소를 찾기 위해, 사람이 이해하기 쉬운 도메인 이름을 숫자로 된 식별 번호(IP주소)로 변환해 준다.도메인 네임
: 방화벽이라는 뜻으로 미리 정의된 보안 규칙에 기반한, 들어오고 나가는 네트워크 트래픽을 모니터링하고 제어하는 네트워크 보안시스템이다. 즉, 중요한 정보가 많이 들어있는 네트워크라면 필수이다.: 소프트웨어 방화벽은 장치에 설치된다. 전체 네트워크가 아닌 개별 장치만
: Secure Sockets Layer의 약자로 암호화 기반 인터넷 보안 프로토콜이다. 인터넷 통신의 개인정보 보호,인증,데이터 무결성을 위해서 개발 되었다. SSL을 사용하면 안전하지 않은 HTTP 대신 안전한 HTTPS를 사용할 수 있다.SSL은 높은 수준의 개인
: 컨테이너화된 어플리케이션을 어디서나 손쉽게 배포,확장,관리할 수 있는 오픈소스 시스템이다.: 어플리케이션 관리에 필요한 많은 부담스러운 작업을 처리할 수 있는 명령이 기본적으로 포함되어 있어, 일상적인 운영을 자동화할 수 있다. 그리고 어플리케이션이 의도한 대로 실
: 함수 안에 있는 선언들을 모두 끌어올려서 해당 함수 유효 범위의 최상단에 선언하는 것을 말한다.1\. js Parser가 함수 실행 전 해당 함수를 한 번 훑는다.2\. 함수 안에 존재하는 변수/함수선언에 대한 정보를 기억하고 있다가 실행시킨다.유효범위: 함수 블록
: 원시 타입의 데이터는 변수에 할당이 될 때 메모리 상에 고정된 크기로 저장이 되고 해당 변수가 원시 데이터 값을 보관한다. 원시 타입 자료형은 모두 변수 선언, 초기화, 할당 시 값이 저장된 메모리 영역에 직접적으로 접근한다. 즉, 변수에 새 값이 할당이 될 경우,
: 사용자가 서버를 직접 관리할 필요가 없다는 뜻을 담고 있다. 앞서 말한 서버를 관리할 필요가 없다는 뜻은 트래픽에 따라 사용자가 직접 서버의 가용량을 증감 시킬 필요가 없다는 뜻이다. 서버리스의 이름만 보고 서버가 없다고 생각할 수도있지만 서버가 없을 순 없다. 그
: Continuous Integration의 약자로 빌드와 테스트의 자동화 라고 할 수 있다. CI는 개발자를 위한 자동화 프로세스인 지속적인 통합을 의미한다. 이를 구현할 경우 어플리케이션에 대한 새로운 코드 변경 사항이 정기적으로 빌드 및 테스트되어 공유 레포지토
: Es(ECMA Script) => Javascript + Lint(소스 코드를 분석하여 프로그램 오류, 버그, 스타일오류, 읽기 애매한 부분에 표시를 달아놓기 위한 도구들을 가리킨다.) 쉽게 말해서 코딩하다가 오타나 오류가 있으면 잡아준다고 생각하면 될 것 같다.:
: Schema-first 방식은 GraphQL 서비스에 대한 스키마를 먼저 정의한 다음 스키마의 정의를 일치시켜 코드를 구현하는 방법을 뜻한다.커뮤니케이션에서 비교적 적은 장애물 SDL을 제외한 document가 필요 없으므로 상대적으로 낮은 러닝커브빠른 mockin
: 제네릭은 선언 시점이 아니라 생성 시점에 타입을 명시하여 하나의 타입만이 아닌 다양한 타입을 사용할 수 있도록 하는 기법이다. 한번의 선언으로 다양한 타입에 재사용이 가능하다는 장점이 있다.제네릭을 선언할 때 사용되는 식별자는 타입 파라미터라고 한다. 함수에도 제네
: Jest란 페이스북에서 만든 자바스크립트 테스팅 라이브러리다. 쉽게 말해서 본인이 작성한 코드를 테스트 하는데 쓰인다고 생각하면 될 것 같다. 규모가 커질수록 테스트해야 할 코드가 많아지는데, 그 때 Jest를 사용하면 편리하게 코드를 테스팅 할 수 있다.descr
: 로그아웃은 컴퓨터 시스템 또는 웹 사이트에 대한 액세스를 종료하는 것을 의미한다. 로그아웃을 하면 컴퓨터 또는 웹 사이트에 현재 사용자가 로그인 세션을 종료한다고 알리는 것이다. 로그아웃을 하면 자격증명을 확인하지 않고 다른 사용자가 시스템에 액세스하지 못하게 할
: 객체지향 언어에서 this는 클래스로 생성한 인스턴스 객체를 의미한다. 하지만 JS에서의 this는 어디서든 사용할 수 있다.:전역 공간에서의 this는 객체를 가리킨다. 말그대로 전역에서의 this이기 때문에 전역객체인것 이다.1\. global => Node.j
: 깃의 저장소를 여러개로 나눠서 안전하게 저장, 확장할 수 있는 시스템이다. 브랜치 모델은 feature - develop(dev) - release - hotfix - master으로 나뉘며 각 기능에 맞게 관리 해주면 팀이 편안하게 코드를 짤 수 있다.master
: 기술 블로깅이 아닌 코드캠프 생활을 하면서 그동안 개발자로 성장하기 위해 노력한 나를 되돌아 보세요.코드캠프에서의 마지막 블로깅이 될 것이다. 살면서 블로그를 이렇게 많이 쓰는 것도 처음이지만, 블로깅만으로 이정도 공부가 된다는 사실을 알아서 후회는 하지 않는다.
: 오토스케일은 인스턴스의 부하를 모니터링해서 특정 이벤트에 대해 인스턴스를 추가,삭제하는 기능을 제공한다.예를 들어, 갑작스러운 서비스 트래픽의 증가 상황에서 운영자의 개입없이 자동으로 인스턴스를 추가한다던가, 부하 상황이 해제되면 추가된 인스턴스를 삭제하는것이 가능