전체 글(754)
-
[네트워크] HTTP 상태 코드에 대한 나름의 이해
HTTP 상태 코드는 Response message의 내용으로 요청에 대한 처리 상태를 의미한다. 다음의 것들이 있다. 1xx(Informational): 요청이 처리되고 있다는 뜻으로 거의 사용되지 않는다. 2xx(Successful): 요청이 성공적으로 처리되었다. 3xx(Redirection): 요청을 처리하려면 추가적인 행동이 필요하다. 4xx(Client error): 클라이언트 오류, 잘못된 문법 등으로 서버에서 처리할 수 없다. 5xx(Server error): 서버의 내부적 문제로 제대로 처리하지 못했다. 상태코드는 세자리 수이지만 앞자리가 전부이다. 조금씩 메시지는 다를 수는 있지만 큰 골자에서는 내용은 같다. 따라서 클라이언트 측에서는 앞자리만 가지고 설계를 하면 된다. 이러면 미래의 ..
2023.11.03 -
[네트워크] 클라이언트에서 서버로의 데이터 전송에 대한 나름의 이해
클라이언트에서 서버로의 데이터 전달 방식은 크게 두가지이다. 1. 쿼리 파라미터(스트링)를 통한 전달 - GET method를 통해 가능 2. HTTP 메시지 Body를 통한 전달 - POST, PUT, PATCH를 통해 가능 - 회원가입, 상품 주문, 리소스 등록, 리소스 변경 클라이언트에서 서버로의 데이터 전달 상황은 크게 4가지이다. 1. 정적 조회 - 쿼리 파라미터를 사용하지 않는다. - 이미지, 정적 텍스트 문서 2. 동적 조회 - 쿼리 파라미터를 사용한다. - 검색, 카테고리 선택, 정렬 필터 3. Form을 통한 전송 - Content-Type: application/x-www-form-urlencoded를 사용한다. - POST, GET 모두 가능하다. - GET으로 하게 되면 쿼리 파라미..
2023.11.03 -
[네트워크] HTTP API 설계에 대한 나름의 이해
URI의 핵심은 리소스를 식별이다. 리소스를 어떻게 할지에 대한 '행위'는 담으면 안된다! 미네랄을 캐라에서 미네랄은 리소스이고 캐라는 행위이다. 이걸 명백히 분리해야 한다. URI에서는 리소스만 식별하고 행위는 HTTP 메소드가 한다! 이것이 좋은 설계이다 HTTP method에는 다음의 것들이 있다. get post put patch delete GET 조회할 때 사용한다. 캐싱이 가능하다. query를 통해 데이터를 전달한다 바디에 데이터를 넣어 보낼 수도 있지만 지원이 안되는 서버가 많다.(비권장) POST 사실상 바디에 데이터를 넣는 모든 행위에 사용가능하다 하지만 주로 데이터를 생성, 요청을 처리할 때 사용한다. 요청을 처리하는 경우 URI에 행위가 포함되어야 하는 경우가 발생한다. 예를 들어..
2023.11.03 -
[CS] 캐시 메모리에 대한 나름의 이해
캐시 메모리를 두는 이유는 CPU에서 메모리에 대한 접근을 빠르게 하기 위해서이다. 하지만 메인 메모리의 모든 영역을 복사할 수는 없기에 자주 참조되는 영역을 복사해둔다. 이것이 지역성이다. 지역성에는 두가지가 있다. temporal locality, spatial locality 전자는 loop와 같이 같은 인스트럭션이나 같은 메모리 영역이 자주 참조된다는 것이다. 후자는 arr와 같이 논리적으로 가까운 영역이 자주 참조된다는 것이다. 매핑방식에는 직접 매핑, 연관 매핑, 집합 연관 매핑이 있는데 집합 연관 매핑이 많이 사용된다. Reference https://www.yes24.com/Product/Goods/121769526 기술 면접 대비 CS 전공 핵심요약집 - 예스24 1분 1초가 아쉬운 취업..
2023.11.03 -
[알고리즘] 문자열 내 p와 y의 개수
문제 설명 대문자와 소문자가 섞여있는 문자열 s가 주어집니다. s에 'p'의 개수와 'y'의 개수를 비교해 같으면 True, 다르면 False를 return 하는 solution를 완성하세요. 'p', 'y' 모두 하나도 없는 경우는 항상 True를 리턴합니다. 단, 개수를 비교할 때 대문자와 소문자는 구별하지 않습니다. 예를 들어 s가 "pPoooyY"면 true를 return하고 "Pyy"라면 false를 return합니다. 제한사항 문자열 s의 길이 : 50 이하의 자연수 문자열 s는 알파벳으로만 이루어져 있습니다. 입출력 예 sanswer "pPoooyY"true "Pyy"false 입출력 예 설명 입출력 예 #1 'p'의 개수 2개, 'y'의 개수 2개로 같으므로 true를 return 합니다...
2023.11.03 -
[SQL][2] 상품을 구매한 회원 비율 구하기
문제 설명 다음은 어느 의류 쇼핑몰에 가입한 회원 정보를 담은 USER_INFO 테이블과 온라인 상품 판매 정보를 담은 ONLINE_SALE 테이블 입니다. USER_INFO 테이블은 아래와 같은 구조로 되어있으며 USER_ID, GENDER, AGE, JOINED는 각각 회원 ID, 성별, 나이, 가입일을 나타냅니다. Column nameTypeNullable USER_IDINTEGERFALSE GENDERTINYINT(1)TRUE AGEINTEGERTRUE JOINEDDATEFALSE GENDER 컬럼은 비어있거나 0 또는 1의 값을 가지며 0인 경우 남자를, 1인 경우는 여자를 나타냅니다. ONLINE_SALE 테이블은 아래와 같은 구조로 되어있으며 ONLINE_SALE_ID, USER_ID, PR..
2023.11.03