일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 |
- 클래스
- 스프링
- 소프트웨어설계
- kotlin
- 자바
- Component
- java
- JWT
- Stream
- 티스토리챌린지
- 토큰
- Configuration
- 객체지향
- springboot
- javamailsender
- Spring
- 코틀린
- JPQL
- SpringFramework
- Spring Boot
- entity
- ava백엔드
- 오블완
- map
- 스프링 부트
- JPA
- Token
- BEAN
- devpi
- OOP
- Today
- Total
목록2024/06 (3)
DeveloPiano
Java 프로젝트를 개발하다 보면 종종 Controller -> Service (로직처리) 구조가 아닌 Controller -> Service Interface -> Service Implement 구조를 사용하는 경우를 볼 수 있습니다. 이러한 구조가 왜 필요한지, 어떤 기준으로 이런 구조를 정하는지에 대한 궁금증을 풀어보겠습니다.왜 Service Interface와 Service Implement를 사용하는가?서비스 인터페이스와 구현체를 분리하는 패턴은 코드의 유연성과 유지보수성을 높이기 위한 설계 방식입니다. 이를 통해 얻을 수 있는 주요 이점은 다음과 같습니다. 1. 구현체의 교체 용이성인터페이스를 사용하면 언제든지 구현체를 변경할 수 있습니다. 예를 들어, UserService 인터페이스를 여러..
문제설명다양한 수로 이루어진 배열이 있을 때 주어진 수들을 m번 더하되 배열의 인덱스에 해당하는 수가 연속해서 k번을 초과하지 않고 가장 큰 수를 만드는 법칙을 '큰 수의 법칙' 으로 정의할때, 배열의 크기 n, 숫자가 더해지는 횟수 m, 그리고 k가 주어질 때 큰 수의 법칙에 따른 결과를 출력하시오. 입력조건첫째 줄에 n(2 둘째 줄에 n개의 자연수가 주어진다. 각 자연수는 공백으로 구분한다. 단, 각각의 자연수는 1 이상 10,000 이하의 수로 주어진다.입력으로 주어지는 k는 항상 m보다 작거나 같다 문제풀이우선 가장 먼저 알아채야 할 사항은 가장 큰 수를 k번 만큼 더한다음 이후 두번재 큰수를 한번만 더해주면 다시 첫번째 큰 수를 더해줄 수 있다. 따라서 몇개의 값을 입력받든 첫번째와, 두번째 큰..
문제 설명카운터에 거스름돈으로 사용할 500원, 100원, 50원, 10원짜리 동전이 있고 이 동전의 수는 무한히 존재한다.손님에게 거슬러 줘야 할 돈이 N원일 때 거슬러 줘야 할 동전의 최소 개수를 구하라. 단, 거슬러 주어야 할 돈 N은 항상 10의 배수이다. 문제 해설이 문제는 그리디 알고리즘을 이용하여 풀 수 있는 대표적인 문제이다.거슬러 주어야 할 동전의 최소 개수 이므로 가장 큰 단위의 거스름 돈 먼저 적용하여 작은 단위의 거스름돈으로 순차적으로 내려가면서 카운트를 세는 단순한 과정의 풀이방법을 적용하면 풀 수 있다. 문제 풀이# 거스름돈 입력 받기n = int(input("거스름돈 : "))# 받는 횟수 변수 선언count = 0# 거스름돈 타입 설정coin_type = [500, 100, ..