면접준비

[취준일지] HTTP상태코드, ERD설계 및 개발 경험, 헤더와 쿠키

나는나는용 2024. 3. 13. 16:04
728x90

5. HTTP 상태 코드 100번대, 200번대, 300번대, 400번대, 500번대에 대해 각각의 특징을 설명해주세요.

참고 : HTTP 상태 코드 정리

100번대 (정보 응답): 

이 상태 코드들은 일시적인 응답을 나타내며, 클라이언트가 계속 요청을 진행해도 좋다는 것을 알려줍니다. 예를 들어, 100 Continue는 서버가 요청의 초기 부분을 받았고, 나머지 부분도 계속해서 보내도 좋다는 의미입니다.


200번대 (성공): 

이 코드들은 요청이 성공적으로 수행되었음을 나타냅니다. 가장 흔히 볼 수 있는 200 OK는 요청이 성공적으로 처리되었고, 응답이 포함되어 있다는 것을 의미합니다.


300번대 (리다이렉션): 

클라이언트가 요청한 리소스가 다른 위치로 옮겨졌음을 알려주는 코드입니다. 예를 들어, 301 Moved Permanently는 요청된 리소스가 영구적으로 새 위치로 이동했음을 나타냅니다.

 

400번대 (클라이언트 오류): 

이 코드들은 클라이언트의 요청에 문제가 있음을 나타냅니다. 예를 들어, 404 Not Found는 서버가 요청한 리소스를 찾을 수 없음을 의미합니다.

 

500번대 (서버 오류): 

서버가 요청을 처리할 수 없을 때 발생하는 오류 코드입니다. 예를 들어, 500 Internal Server Error는 서버 내부 오류가 발생하여 요청을 처리할 수 없음을 나타냅니다.

 

 

6. ERD 설계를 하면서 가장 중요하게 생각하신 부분을 설명해주세요.

ER다이어그램 설계 시 가장 중요하게 생각하는 부분은 정규화과정입니다.
이는 데이터의 일관성과 무결성을 유지하는 데 핵심적인 역할을 합니다. 또한, 효율적인 데이터베이스 구조를 설계하기 위해 필요한 정보만을 포함시키고, 중복을 최소화하는 것도 중요합니다. 이를 위해 테이블 간의 잘못된 종속 관계로 인해 데이터베이스 이상 현상이 일어나서 이를 해결하거나, 저장 공간을 효율적으로 사용하기 위해 테이블을 여러 개로 분리 하는 과정인 정규화 과정을 잘 지켜야한다고 생각합니다.

 

 

7. 설계대로 개발을 하셨을 때 실제로 그렇게 개발이 이루어졌는지 본인의 경험을 설명해주세요.

개발 과정에서 몇몇 미세한 조정이 필요했지만, 큰 틀에서는 설계대로 개발이 이루어졌습니다. 사용자들 간 팔로우와 팔로잉 정보를 포함하는 팔로우 테이블이 계획에는 없었습니다. 사용자들 사이의 관계이기 때문에 굳이 분리할 필요가 없다고 생각하였다만, 실제 개발을 진행하면서 이 정보만 따로 관리하는게 편리하다는 생각이 들어 별도로 팔로우 테이블을 생성하였습니다. 이 부분 외에는 대부분 설계대로 개발을 진행하였습니다.
최근 세번의 비밀번호로는 변경할 수 없게 하기 위하여 PasswordHistory 테이블을 추가로 생성하여 관리하였습니다. 

 

 

8. Header와 Cookie에 대해 설명해주세요.

Header는 HTTP 요청과 응답에 포함되는 정보의 일부로, 클라이언트와 서버 간에 데이터를 전송할 때 사용되는 메타데이터를 담고 있습니다. 예를 들어, 요청 헤더에는 사용자 에이전트, 수락 가능한 컨텐츠 유형, 인코딩 타입 등의 정보가 포함될 수 있으며, 응답 헤더에는 서버의 유형, 콘텐츠 유형, 콘텐츠 길이 등의 정보가 포함될 수 있습니다. 이러한 헤더 정보를 통해 클라이언트와 서버는 효율적으로 소통하고, 필요한 데이터를 교환할 수 있습니다.


Cookie는 서버가 클라이언트의 웹 브라우저에 저장하는 작은 데이터 조각입니다. 이 데이터는 사용자가 웹사이트를 다시 방문할 때마다 브라우저에 의해 서버로 다시 전송됩니다. 쿠키는 주로 사용자의 세션 관리(로그인 상태 유지), 개인화(사용자 선호 설정 저장), 트래킹(사용자 행동 추적) 등의 목적으로 사용됩니다. 예를 들어, 사용자가 로그인을 하면, 그 정보를 쿠키에 저장하여 사용자가 다른 페이지로 이동하더라도 로그인 상태를 유지할 수 있게 합니다. 쿠키는 사용자 경험을 개선하는 데 큰 역할을 하지만, 사용자의 개인 정보 보호와 관련하여 주의가 필요합니다.

728x90