[Spring] 소프트웨어 개발과 관심사의 분리
소프트웨어 개발과 관심사의 분리 1. 소프트웨어 설계의 핵심 소프트웨어 설계는 미래의 변화에 대비하는 작업이다. 애플리케이션은 시간이 지나면서 계속 변화한다. 요구사항 변경 DB 변경 고객사별 환경 차이 기능 추가 및 수정 유지보수 비용 증가 따라서 좋은 코드는 변화에 대응하기 쉬운 코드여야 한다. 2. 관심사의 분리 ...
소프트웨어 개발과 관심사의 분리 1. 소프트웨어 설계의 핵심 소프트웨어 설계는 미래의 변화에 대비하는 작업이다. 애플리케이션은 시간이 지나면서 계속 변화한다. 요구사항 변경 DB 변경 고객사별 환경 차이 기능 추가 및 수정 유지보수 비용 증가 따라서 좋은 코드는 변화에 대응하기 쉬운 코드여야 한다. 2. 관심사의 분리 ...
JavaScript Event 정리 JavaScript에서 이벤트(Event)는 사용자의 동작이나 브라우저의 상태 변화에 반응하여 특정 코드를 실행하는 방식이다. 예를 들어 사용자가 버튼을 클릭하거나, input에 커서를 올리거나, 페이지 로딩이 끝났을 때 JavaScript 함수를 실행할 수 있다. 참고: W3Schools - JavaSc...

1. JWT란? JWT는 JSON Web Token의 약어로, JSON 형식의 정보를 안전하게 주고받기 위한 토큰이다. 웹 애플리케이션에서는 주로 로그인 이후 사용자를 식별하기 위한 인증 수단으로 사용된다. 서버는 사용자가 로그인에 성공하면 JWT를 발급하고, 클라이언트는 이후 요청마다 이 토큰을 함께 보낸다. 서버는 전달받은 토큰의 서명을 검증한...

서론 IntelliJ IDEA에서 JSP/Servlet 기반의 Dynamic Web Project를 생성하는 과정을 정리한다. Eclipse에서는 Dynamic Web Project 메뉴를 통해 바로 생성할 수 있지만, IntelliJ에서는 Jakarta EE 템플릿과 Tomcat 실행 설정을 함께 잡아줘야 한다. 환경 IntelliJ ID...
Front-Back 구조 정리 1. Client Client는 사용자가 직접 보는 화면을 담당한다. 현대 웹에서는 React, Vue, Angular 같은 프레임워크를 사용해 SPA 방식으로 구현하는 경우가 많다. 2. SPA 방식 SPA(Single Page Application) SPA는 최초에 하나의 HTML 페이지를 로드한 뒤, 필...

📍 연관 포스팅 [Data Modeling] 데이터 모델링 1일차 - 개념/논리/물리 모델링과 ERD 기초 [Data Modeling] 데이터 모델링 2일차 - 정규화, 반정규화 1. 들어가며 이번 글에서는 데이터 모델링에서 속성과 식별자를 정의하는 방법을 복습하고, 정규화와 반정규화의 핵심 개념을 정리한다. 1일차에서...

📍 연관 포스팅 [Data Modeling] 데이터 모델링 1일차 - 개념/논리/물리 모델링과 ERD 기초 [Data Modeling] 데이터 모델링 2일차 - 정규화, 반정규화 1. 들어가며 이번 글에서는 데이터 모델링의 기본 흐름과 ERD를 작성할 때 자주 만나는 설계 포인트를 정리한다. 데이터 모델링은 단순히 테이...

개선된 for문 for (타입 변수명 : 배열이나컬렉션) { // 반복 실행할 코드 } // 1차원 배열 int[] scores = {90, 80, 70, 100}; int sum = 0; for (int score : scores) { sum += score; } // 다차원 배열 int[][] matrix = { {1, ...

1. 템플릿 메서드 패턴이란? 작업의 뼈대는 미리 정해두고 구체적인 단계는 자식 클래스에서 구현하게 만든 패턴. 상위 클래스에서 실행 프로세스의 순서를 정의하고, 그 일부 단계를 abstract 메서드나 상속 가능한 메서드로 비워둔다. 알고리즘의 뼈대 자식이 건들이지 못하도록 final...

🌐 HTTP 상태 코드(Status Code) 핵심 요약 HTTP 상태 코드는 클라이언트가 보낸 요청에 대해 서버가 어떤 상태인지 알려주는 3자리 숫자이다. 각 앞자리에 따라 대략적인 상태를 파악할 수 있다. 1xx (Informational) : 정보 전달 서버가 요청을 받았으며, 해당 프로세스를 계속 진행 중임을 의미한다. 100 ...