CS 면접 질문 정리
·
카테고리 없음
백엔드 개발자를 위한 CS 면접 질문을 정리한 글입니다. 계속해서 추가될 예정입니다. 운영체제프로세스와 스레드의 차이를 설명하세요.프로세스는 실행 중인 프로그램이고, 쓰레드는 하나의 프로세스 내에 있는 실행 흐름입니다.프로세스는 OS로부터 자원을 할당받고, 쓰레드는 프로세스로부터 자원을 할당받는다는 차이점이 있습니다. 컨텍스트 스위칭(문맥교환)에 대해 설명하세요.컨텍스트 스위칭이란 CPU가 현재 실행 중인 프로세스에서 다른 우선순위가 높은 프로세스로 실행을 전환하는 것을 의미합니다. 전환하기 전에 실행 중이던 프로세스의 상태와 레지스터 값을 저장하기 때문에 전환하기 전의 프로세스로 돌아오더라도 처음부터 실행하는 것이 아니라 이어서 진행할 수 있습니다. 멀티 프로세스와 멀티 쓰레드의 특징에 대해 설명하세요..
Mockito를 사용한 Spring Boot Unit Test
·
Spring
이 글은 Mockito의 개념과 Mockito를 사용한 스프링부트의 단위 테스트에 대해 설명한다. Spring Boot TestUnit Test단위 테스트는 소프트웨어 개발에서 개별적인 코드 단위를 테스트하는 것을 의미한다. 코드의 작은 부분을 격리시켜 독립적으로 테스트함으로써 코드의 정확성과 신뢰성을 검증할 수 있다. 일반적으로 단위 테스트 코드를 작성할 때는 다음의 5가지 원칙이 강조된다.Fast - 테스트 코드 실행이 오래 걸리면 안 된다.Independent - 독립적으로 실행되어야 한다.Repeatable - 반복 가능해야 한다.Self Validaing - 메뉴얼 없이 테스트 코드만 실행해도 성공, 실패 여부를 알 수 있어야 한다.Timely - 바로 사용 가능해야 한다. 단위 테스트를 위해 ..
Spring Security 403 에러 해결 과정
·
Spring
이 글은 Spring Security에 JWT, 소셜 로그인을 적용하는 과정에서 발생한 403 권한 에러 해결을 위한 삽질이 담겨있다.대부분의 403 에러는 csrf 설정을 하지 않아서 발생하기 때문에 이 글을 읽기 전에 먼저 관련 내용을 찾아보길 추천한다.또 이 글은 정보를 전달하는 글이 아니다. 문제가 발생한 원인을 논리적으로 풀어내지 못했다. 단지 디버깅하며 발견한 의심스러운 부분들을 수정해가며 '이건가?', '이게 되네?'가 반복되는 글이기 때문에 부디 가볍게 읽기를 추천한다. 먼저 에러가 발생한 상황을 설명하자면 다음과 같다.Spring Security에 JWT와 OAuth2를 적용하고 "/", "/login/form" 경로에는 인증이 불필요함을, 나머지 경로에는 "USER" 권한이 필요함을 명..