
<span style="color:이는 코드에서 반복되는 디자인 문제들을 해결하기 위해 맞춤화할 수 있는 미리 만들어진 청사진과 비슷합니다.설계에 대한 생각을 더욱 쉽게 하고, 개발자들 간의 의사소통을 원활하게 하기 위해 <span style="color:어

<span style="color:<span style="color:즉, Mock은 테스트할 때 필요한 실제 객체와 동일한 모의 객체를 만들어 테스트의 효용성을 높이기 위해 사용한다.ex) Dummy,Fake, Mock, Spy, Stub 등이 있다.단위 테

큰 클래스 또는 밀접하게 관련된 클래스들의 집합을 2개의 개별 계층 구조(추상화 및 구현)로 나눈 후 각각 독립적으로 개발할 수 있도록 하는 구조 디자인 패턴입니다.객체의 확장성을 향상하기 위해 객체에서 동작을 처리하는 구현부와 확장을 위한 추상부를 분리.2개의 객체는

프록시 패턴 정리

HTTP는 본래 정보를 유지하지 않는 statless한 특성을 가져, 각 특성의 상태가 유지되지 않기 때문에 웹사이트에서 인증을 관리하기 위한 방법이 필요합니다.<span style="color:<span style="color:로그인을 했는데 게시판 접근

운영체제에서 CPU를 사용할 수 있는 프로세스를 선택하고, CPU를 할당하는 작업입니다.프로세스의 우선순위, 작업량 등을 고려하여 효율적으로 배치하여, 이를 통해 운영체제는 CPU를 효율적으로 사용하며 시스템 전반적인 성능을 향상시킵니다.그래서 스케쥴링은 멀티 태스킹

🐬 컨텍스트 스위칭 CPU가 한 프로세스에서 다른 프로세스로 전환할 때 발생하는 일련의 과정입니다. 동시성 을 봤듯이 CPU는 한 번에 하나의 프로세스만 실행할 수 있으므로, 여러 개의 프로세스를 번갈아가며 실행하여 CPU 활용률을 높이기 위해 필요합니다. > 멀티

resource는 외부 데이터(DB, Network, File)를 말합니다.

CORS가 발생하는 이유는 웹 브라우저는 HTTP 요청에 대해서 어떤 요청을 하느냐에 따라 각기 다른 특징을 가지고 있기 때문에 발생합니다.1️⃣ <img>, <video>, script, link 태그 등<link> 태그의 href에서 다른 사이트의

Chrome 확장 프로그램 설치프로그램 활성화시키면 로컬환경에서 API 테스트 시, CORS 문제 해결.프론트에서 직접 서버에 리소스 요청을 했더니 서버에서 따로 설정을 안 해줘서 CORS 에러가 발생한다면 모든 출처를 허용한 서버 대리점을 통해 요청을 진행됩니다.하

📘 인덱스 추가적인 쓰기 작업과 저장 공간을 활용하여 데이터베이스 테이블의 검색 속도를 향상시키기 위한 자료구조입니다. 데이터의 저장(INSERT, UPDATE, DELETE)의 성능을 희생합니다. 대신에 데이터의 읽기 속도를 높이는 테이블의 동작속도(조회)를 높여주

📘 인덱스 타입 종류

요청과 응답을 거른 뒤에 정제하는 역할을 합니다.정제하다 : 불필요한 요소를 제거하고, 명확하고 간결한 형태로 다듬는 과정을 의미.즉 요청과 응답을 거른 뒤에 내용의 핵심을 추출하고, 중복되거나 불필요한 정보를 제거하여 이해하기 쉽게 만드는 것을 의미합니다.<sp

회원가입세션 방식과 큰 차이 없음.<span style="color:세션 사용 시 UsernamePasswordAuthenticationFilter를 다 구현하지 않고도 SpringSecurity가 알아서 처리를 해줬습니다.<span style="color:

로그인 성공 시 JWT 발급 : 서버측 -> 클라이언트로 JWT 발급권한이 필요한 모든 요청 : 클라이언트 -> 서버측 JWT 전송매시간 수많은 요청을 위해 클라리언트의 JS 코드로 HTTP 통신을 위해 서버로 전달됩니다. 해커는 클라이언트 특에서 XSS를 이용하거나

OAuth2.0 클라이언트와 스프링 시큐리티 6프레임워크 활용.외부 사이트(구글, 네이버)로부터 인증을 받고 전달받은 유저 데이터를 활용.JWT를 발급하고 인가를 진행.인증 받은 데이터는 MySQL 데이터베이스를 활용하여 저장하고 관리.인증: 네이버/구글 소셜 로그인
현재 DB 관계에서 Order : Member -> 다대일 , Order : Delivery -> 일대일 , Order : OrderItems -> 일대다 관계입니다.<span style="color:Lazy 강제 초기화를 한 이유는 hibernateSModule
⚒️ 플랫 데이터 최적화
❄️ 스프링 배치 사전적 의미의 "배치"는 일정 시간 동안 대량의 데이터를 한 번에 처리하는 방식입니다. 대비되는 것으로는 "실시간 처리"로 우리가 웹에서 경험하고 있는 페이지 응답, 유저 정보 응답 처리 같은 것입니다. 배치는 한달, 일년에 한번 대량의 데이털르 모아서 한번에 계산하고 저장하는 방식입니다. 만약 10만개의 데이터를 복잡한 JOIN을 걸어...

복잡한 문제를 더 작은 하위 문제로 나누어 해결하는 알고리즘입니다.동적 계획법에서는 어떤 부분 문제가 다른 문제들을 해결하는데 사용될 수 있어, 답을 여러 번 계산하는 대신 한 번만 계산하고 그 결과를 재활용하는 메모이제이션(Memoization)기법으로 속도를 향상시

1차원 레이아웃 설계로 1차원 방식이란 가로나 세로 중 한 방향으로만 레이아웃을 설계하는 방식입니다. main axis(주축) : 플렉스 박스의 진행 방향과 수평한 축cross axis(교차축) : 주축과 수직한 축flex container(플렉스 컨테이너) : dis

HTML 요소를 기본 흐름에서 벗어나서 원하는 곳에 배치할 수 있는 속성입니다.HTML 태그의 박스 모델 성격에 따라 블록 성격이면 줄 바꿈, 인라인 성격이면 수평으로 요소가 배치되는 것을 기본 흐름에 따라 배치한다고 표현합니다.<span style="color:

HTTP는 사용자가 URL을 요청할 때에만 서버에서 해당 페이지를 꺼내주는 방식입니다. 그래서 사용자는 서버로부터 새로운 정보를 받아보기 위해서는 반드시 새로운 URL을 요청해야 합니다.AJAX는 HTTP를 효과적으로 이용하는 기술로 효과적으로 서버와 소통하기 위한 기
처음 마운트 될 때만 실행하고 이후에는 실행되지 않도록 하기 위해서 사용합니다.컴포넌트가 화면에 렌더링된 후에 실행됩니다. 따라서 DOM이 업데이트된 후에 실행되기 때문에 화면에 반영된 내용을 바탕으로 작업할 수 있습니다.예를 들면 input 태그처럼 안에 값을 입력할

ERD 내에서 중복 요소를 찾아 제거해 나가는 과정입니다. (중복된 데이터는 많은 문제를 일으키기 때문)같은 성격과 내용의 컬럼이 연속적으로 나타나는 컬럼이 존재할 때, 해당 컬럼을 제거하고 기본테이블의 PK를 추가하여 새로운 테이블을 생성하고, 기존의 테이블과 1:N