본문 바로가기

분류 전체보기123

10.17 ~ 10.23 WIL CORS 란? CORS 는 Cross -Origin Resource Sharing의 약자로 교차 출처 리소스 공유라고 합니다. 브라우저가 로드를 허용해야하는 자체가 아닌 다른 출처를 서버가 나타낼 수 있도록 하는 HTTP 헤더 기반 메커니즘이고, 서버가 실제 요청을 허용하는지 확인하기 위해 브라우저가 교차 출처 리소스를 호스팅하는 서버에 "프리플라이트" 요청을 하는 메커니즘에 의존합니다. * 프리플라이트 : CORS 실행 전의 요청으로 CORS 프로토콜이 이해되고 서버가 특정 메서드와 헤더를 사용하여 인식하는 확인하는 CORS 요청입니다. 프리플라이트는 자동으로 실행되며 일반적인 경우 프론트 엔드 개발자는 이러한 요청을 직접 작성할 필요가 없습니다. request가 "to preflighted"로 규정되.. 2022. 10. 22.
10.10 ~ 10.16 WIL ORM? -> Object Relational Mapping 즉, 객체-관계-매핑 의 약자 -> 객체 : 클래스, 관계 : 테이블 이걸 연결 해줍 -> 객체 모델과 관계형 모델간의 불일치하는게 존재 -> 중개자 역할을 함 SQL? -> 하나의 테이블로 기록, 테이블에 스키마 추가를 할 시, 새로 테이블 작성해야함 -> 데이터 성능이 좋아서 탐색, 분류, 정렬이 좋음 -> 비용 최소화 -> 테이블 합치게되는 경우(join), 매우 복잡해질 수 있음 noSQL? -> key-value값을 형성 -> sql에서 쓰는 쿼리문을 사용안함 -> 스키마에 대한 정의가 없어서 막 추가 가능 -> 대용량 데이터 처리 및 축적 해두기 좋음 -> 검색에 유리 [ 여러 시험이 있던 관계로 짧게 작성했습니다 ㅜㅜ ] 2022. 10. 19.
[5주차] 팀 과제 Q1. Class는 대체로 추상화를 위해 사용됩니다. ES5 자바스크립트에서 Class는 어떻게 동작할까요? Class는 객체를 생성하려고 만든 것으로 데이터, 코드가 하나로 추상됩니다. ex ) 붕어빵 만들기 : class : 붕어빵 틀, 데이터, 코드 : 재료, 객체 : 결과물 Q2. Class는 var 변수처럼 호이스팅이 일어날까요? 호이스팅이란 변수화 함수의 선언문을 해당 스코프의 꼭대기로 끌어올리는 동작을 말합니다. 보통 JavaScript는 초기값 할당할때만 호이스팅이 발생하기에 컴파일 과정 전까지는 undefined 이후에는 들어가는 값을 받게 됩니다. 클래스는 var 변수처럼 호이스팅이 안일어나고, let, const 처럼 호이스팅이 일어납니다. 따라서 클래스 선언문 이전에 TDZ에 빠지는.. 2022. 10. 19.
[4주차] 팀 과제 1. Sequelize같은 ORM과 MySQL같은 데이터베이스는 각각 어떠한 역할을 가지고 있을까요? ORM : 객체 모델과 관계형모델간에 불이리가 존재하는데 이 객체간의 관계를 바탕으로 SQL을 자동으로 생성하여 불일치를 해결 객체과 DB데이터를 매핑을 도와주는 역할이 바로 바로 ORM입니다. 2. express.js의 라우터는 미들웨어입니다. 어떤 원리로 동작하기 때문에 미들웨어로 라우터를 구현할 수 있나요? 미들 웨어 : 요청과 응답, 그 사이의 사이클에 대한 액세스 권한을 갖는 함수입니다. 모든 코드를 실행 요청 및 응답 오브젝트에 대한 변경을 실행 요청-응답 주기를 종료 스택 내의 그 다음 미들웨어 함수를 호출 현재의 미들웨어 함수가 요청-응답 주기를 종료하지 않는 경우에는 next()를 호풀하.. 2022. 10. 19.
[3주차] 팀 과제 1. for 문이 있는데 for ... in for...of 문법이 새로 나온 이유는 무엇일까요? 우리가 이것을 고르는 기준은 무엇일까요? for.. in : 객체의 속성들을 반복하여 작업을 수행, 모든 객체에서 사용 가능, true값에 접근 → key, value 형태(객체)일때는 value값에 접근 → 배열 형태일때는 index값에 접근 → this 가 지칭하는게 다름 → for in 문 안에서 반복이 진행될때 element의 변경이 있으면 for in에서는 반영할지 안할지 모름 그치만 for 문 안에서는 반영이 됨 for.. of : ES6에 추가된 새로운 컬렉션 전용 반복 구문, 사용하기 위해서 컬렉션 자체가 [Symbol.iterator] 속성을 가지고 있어야함 → 배열 형태일때 index위치에.. 2022. 10. 19.
게시글, 댓글, 좋아요 형태 만들기 이 글은 Mongoose가 아닌 mySQL 로 작업을 했으므로 이 점 미리 알고 계시기 바랍니다. 밑에 링크는 ERD Diagram을 보기 쉽게 만들었습니다. https://drawsql.app/teams/blog-2/diagrams/blog/embed https://drawsql.app/teams/blog-2/diagrams/blog/embed drawsql.app 요구사항 회원 가입 API 닉네임은 최소 3자 이상, 알파벳 대소문자(a~z, A~Z), 숫자(0~9)로 구성하기 비밀번호는 최소 4자 이상이며, 닉네임과 같은 값이 포함된 경우 회원가입에 실패로 만들기 비밀번호 확인은 비밀번호와 정확하게 일치하기 닉네임, 비밀번호, 비밀번호 확인을 request에서 전달받기 데이터베이스에 존재하는 닉네임을.. 2022. 10. 11.