분류 전체보기(754)
-
[Spring] Solid 원칙과 Spring
1. 단일 책임 원칙(Single Responsibility Principle - SRP) - 하나의 클래스는 하나의 책임만 가져야 한다 - 클래스가 여러 책임을 가지면 코드가 복잡해지고 유지 보수가 어려워진다. 2. 개방-폐쇄 원칙(Open-Closed Principle - OCP) 제일 중요한 원칙 - 소프트웨어 엔티티(클래스, 모듈, 함수 등)는 확장에는 열려 있어야 하고, 수정에는 폐쇄적이어야 한다. - 새로운 기능을 추가할 때 기존 코드를 수정하지 말고 확장만으로 가능하도록 설계해야 한다. 3. 리스코프 치환 원칙(Liskov Substitution Principle - LSP) - 파생 클래스는 기반 클래스의 기능을 변경하지 않고 확장해야 한다. - 파생 클래스는 기반 클래스 대신 사용될 수 ..
2023.09.11 -
[Back-end] 인덱스에 대한 나름 배운 것
인덱스는 많이 쓴다고 좋은게 아니다. 잘 써야 한다.
2023.09.11 -
[알고리즘] 여러 기준으로 정렬하기
문제 설명 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부를 나타냅니다. NAMETYPENULLABLE ANIMAL_IDVARCHAR(N)FALSE ANIMAL_TYPEVARCHAR(N)FALSE DATETIMEDATETIMEFALSE INTAKE_CONDITIONVARCHAR(N)FALSE NAMEVARCHAR(N)TRUE SEX_UPON_INTAKEVARCHAR(N)FALSE 동물 보호소에..
2023.09.11 -
[알고리즘] 조건에 맞는 회원수 구하기
문제 설명 다음은 어느 의류 쇼핑몰에 가입한 회원 정보를 담은 USER_INFO 테이블입니다. USER_INFO 테이블은 아래와 같은 구조로 되어있으며 USER_ID, GENDER, AGE, JOINED는 각각 회원 ID, 성별, 나이, 가입일을 나타냅니다. Column nameTypeNullable USER_IDINTEGERFALSE GENDERTINYINT(1)TRUE AGEINTEGERTRUE JOINEDDATEFALSE GENDER 컬럼은 비어있거나 0 또는 1의 값을 가지며 0인 경우 남자를, 1인 경우는 여자를 나타냅니다. 문제 USER_INFO 테이블에서 2021년에 가입한 회원 중 나이가 20세 이상 29세 이하인 회원이 몇 명인지 출력하는 SQL문을 작성해주세요. 예시 예를 들어 USER..
2023.09.11 -
[알고리즘][3][RE] 사칙연산
문제 설명 사칙연산에서 더하기(+)는 결합법칙이 성립하지만, 빼기(-)는 결합법칙이 성립하지 않습니다. 예를 들어 식 1 - 5 - 3은 연산 순서에 따라 다음과 같이 다른 결과를 가집니다. ((1 - 5) - 3) = -7 (1 - (5 - 3)) = -1 위 예시와 같이 뺄셈은 연산 순서에 따라 그 결과가 바뀔 수 있습니다. 또 다른 예로 식 1 - 3 + 5 - 8은 연산 순서에 따라 다음과 같이 5가지 결과가 나옵니다. (((1 - 3) + 5) - 8) = -5 ((1 - (3 + 5)) - 8) = -15 (1 - ((3 + 5) - 8)) = 1 (1 - (3 + (5 - 8))) = 1 ((1 - 3) + (5 - 8)) = -5 위와 같이 서로 다른 연산 순서의 계산 결과는 [-15, -..
2023.09.11 -
[알고리즘][X] 아픈 동물 찾기
문제 설명 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부를 나타냅니다. NAMETYPENULLABLE ANIMAL_IDVARCHAR(N)FALSE ANIMAL_TYPEVARCHAR(N)FALSE DATETIMEDATETIMEFALSE INTAKE_CONDITIONVARCHAR(N)FALSE NAMEVARCHAR(N)TRUE SEX_UPON_INTAKEVARCHAR(N)FALSE 동물 보호소에..
2023.09.10