본문 바로가기

개발인생다반사/TIL(Today i learned)

(43)
TIL - 211203 [배포] Docker Achievement Goals 컨테이너 기술이 무엇인지, 도커가 왜 필요한지 알 수 있다. 컨테이너와 이미지, 레지스트리가 무엇인지 이해할 수 있다. 대표적인 레지스트리인 Docker Hub에서 이미지를 검색하고, 사용할 수 있다. 한 개의 이미지를 이용해서 컨테이너를 구축할 수 있다. 두 개 이상의 이미지를 이용해서 컨테이너를 구축하고 서로가 어떻게 연결되는 지 알 수 있다. Docker CLI에서 명령어를 사용해서 이미지를 생성/수정/배포하고, 컨테이너를 생성/삭제할 수 있다. CHAPTER - 왜 Docker인가? 1. 컨테이너 기술과 Docker의 탄생 배경 개발자들은 이와 같이 물자의 수송에 획기적인 단축을 가져다 준 컨테이너 기술을 "소프트웨어 수송, 즉 배포에 사용할 수는 없을까? 하는 ..
TIL - 211201 [배포] Amazon Web Service Achievement Goals Cloud와 Deployment의 의미를 각각 알고, 내 코드를 남에게 배포할 수 있다. 클라우드 컴퓨팅이 무엇인지 설명할 수 있다. 애플리케이션 배포가 어떻게 변화되어 왔는지 이해할 수 있다. AWS의 각 서비스가 어떤 목적에 부합하는지 이해할 수 있다. S3의 목적과, 정적 웹 사이트 배포 방법을 이해할 수 있다. EC2의 주요 용어를 이해할 수 있다. (AMI, 인스턴스, 인스턴스 유형, 스토리지 타입, 퍼블릭/프라이빗 IP) EC2의 인스턴스 시작/중지/종료에 대해 이해할 수 있다. RDS와 EC2에서의 MySQL 사용이 어떻게 다른지 이해할 수 있다. CloudFront의 목적을 이해할 수 있다. (Advanced) 로드 밸런서 중 ELB, 그 중에서 Applic..
TIL - 211129 [네트워크] 심화 Achievement Goals HTTP 기반 네트워크 흐름에 대해 이해할 수 있다. TCP/IP 기반 네트워크 흐름에 대해 이해할 수 있다. TCP/IP 패킷이 왜 필요한 지 설명할 수 있다. TCP와 UDP의 차이에 대해 설명할 수 있다. HTTP 기본 동작과 특징에 대해 이해할 수 있다. 상태유지(Stateful)과 무상태(Stateless)의 개념에 대해 설명할 수 있다. HTTP 메시지 구성에 대해 설명할 수 있다. HTTP 헤더의 역할에 대해 이해할 수 있다. 표현, 콘텐츠 협상 등 다양한 헤더의 역할에 대해 알 수 있다. 캐시가 왜 필요한 지 알 수 있다. 브라우저 캐시, 프록시 캐시에 대해 설명할 수 있다. 조건부 요청, 캐시 무효화 방법 등을 사용할 수 있다. CHAPTER - 프로토콜 ..
TIL - 211125 [컴퓨터 공학] 기초 Achievement Goals 프로그램, 프로세스, 스레드에 대해 기본적인 개념을 설명할 수 있다. 동시성과 병렬성의 차이를 이해할 수 있다. 자바스크립트 엔진(v8)이 어떤 특징을 가지고 있는지 이해할 수 있다. 프로그래밍에서 문자열을 다루는 방법과 유니코드 및 인코딩에 이해할 수 있다. 비트맵 이미지와 벡터 이미지의 차이를 이해할 수 있다. 가비지 컬렉션에 대해 이해할 수 있다. 웹 서비스에서 사용하는 다양한 캐싱의 사례를 이해할 수 있다. CHAPTER 1 컴퓨터 공학 1. 문자열 유니코드 : 유니코드 협회(Unicode Consortium)에서 제정하는 전 세계의 모든 문자를 컴퓨터에서 일관되게 표현하고 다룰 수 있도록 설계된 산업 표준. ISO 10646 문자 집합, 문자 인코딩, 문자 정보 ..
TIL - 211122 [인증/보안] 기초 Achievement Goals 암호화와 hashing, salting 등의 개념을 이해할 수 있다. HTTP와 HTTPS의 차이점을 이해할 수 있다. 권한 부여(Authorization)와 인증(Authentication)에 대해 이해할 수 있다. 쿠키의 작동 원리를 이해할 수 있다 세션 및 쿠키 / 토큰 / OAuth를 통해 인증 구현을 할 수 있다. 클라이언트, 서버, 데이터베이스의 전체 동작을 이해할 수 있다. 회원가입 및 로그인 등의 유저 인증에 대해 구현하고 이해한다. 서비스의 보안과 관련된 방법을 알아보고 원리 및 장점 및 단점을 이해한다. Sprint - HTTPS 1. HTTPS HTTP + Secure : Hyper Text Transfer Protocol Secure Socket la..
TIL - 211119 [데이터베이스] NoSQL 몽고DB NoSQL 도큐먼트 데이터베이스. 데이터를 문서처럼 저장하는 데이터베이스. JSON 유사형식으로 데이터를 문서화. 도큐먼트는 데이터를 필드-값 형태로 가지고 있고 컬렉션이라고 하는 그룹으로 묶어서 관리 Achievement Goals NoSQL의 장점 및 특징에 대해서 이해할 수 있다. MongoDB의 도큐먼트(Document)와 컬렉션(Collection)에 대해 이해할 수 있다. JSON과 BSON의 차이점을 이해하고, 도큐먼트를 가져오거나 내보낼 수 있다. MongoDB의 Atlas에 대해 이해할 수 있다 클러스터(Cluster)와 레플리카 세트(Replica set)에 대해 이해할 수 있다. Atlas를 GUI(Graphical User Interface)와 shell 쿼리문으로 사용할 ..
TIL - 211116 [데이터베이스] MVC Achievement Goal MVC 패턴 MVC 디자인 패턴과 같이, 코드를 각각 다른 부분으로 나누어 작성해야 하는 이유를 이해할 수 있다. Model, View, Controller가 각각 어떤 역할을 하는지 이해할 수 있다. Cmarket Database SQL을 Node.js 앱에서 쿼리할 수 있다. 클라이언트의 HTTP 요청에 따라 CRUD API를 구현할 수 있다. (CRUD: Create, Read, Update, Delete) Advanced ORM의 장점을 이해할 수 있다. Sequelize ORM과 관련 CLI 툴들을 공식 문서를 보고 사용할 수 있다. Sequelize를 이용해 모델을 작성할 수 있다. Sequelize를 이용해 마이그레이션을 할 수 있다. 마이그레이션의 개념과 필요..
TIL - 211111 [데이터베이스] 관계형 데이터 베이스(RDBMS) Achievement Goals 3 Tier Architecture 를 이해한다. 영속성의 개념을 이해하고, 데이터베이스의 필요성을 인지한다. 데이터베이스 종류를 이해한다. 관계형 데이터베이스와 NoSQL의 차이를 이해한다. 관계형 데이터베이스 및 NoSQL이 어떤 경우에 적합한지 이해한다. Learn SQL SQL 주요 문법을 이해할 수 있다. 조회, 삽입, 갱신, 삭제 구문을 자유자재로 사용할 수 있다. 조회 시 다양한 조건을 걸어 원하는 정보만 조회할 수 있다. 통계를 위한 쿼리를 만들 수 있다. 스키마 디자인을 할 수 있다. 앱에 필요한 테이블과 필드, 그리고 관계를 부여할 수 있다. 1:N, N:N 관계를 이해하고, 데이터베이스에서 테이블을 조작할 수 있다. Foreign Key, Primary..