├── .github ├── ISSUE_TEMPLATE │ └── question.md └── issuse-question.png ├── .gitignore ├── README.md ├── ch2 ├── README.md ├── build.gradle.kts ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── settings.gradle.kts └── src │ └── main │ ├── java │ └── com │ │ └── code │ │ └── design │ │ ├── CodeDesignApplication.java │ │ ├── domain │ │ ├── member │ │ │ ├── api │ │ │ │ └── MemberApi.java │ │ │ └── domain │ │ │ │ └── Member.java │ │ ├── model │ │ │ ├── Address.java │ │ │ └── Email.java │ │ └── order │ │ │ ├── item │ │ │ ├── application │ │ │ │ └── OrderItemCalculation.java │ │ │ └── domain │ │ │ │ └── OrderItem.java │ │ │ └── order │ │ │ ├── api │ │ │ └── OrderApi.java │ │ │ ├── application │ │ │ ├── OrderCalculation.java │ │ │ └── OrderRegistrationService.java │ │ │ ├── dao │ │ │ ├── OrderCustomRepository.java │ │ │ ├── OrderCustomRepositoryImpl.java │ │ │ ├── OrderFindService.java │ │ │ └── OrderRepository.java │ │ │ ├── domain │ │ │ ├── Order.java │ │ │ ├── Orderer.java │ │ │ └── Tracking.java │ │ │ ├── dto │ │ │ └── OrderRegistrationRequest.java │ │ │ └── exception │ │ │ └── OrderNotFoundException.java │ │ ├── global │ │ ├── common │ │ │ ├── ErrorResponse.java │ │ │ └── PageResponse.java │ │ ├── config │ │ │ └── JpaConfiguration.java │ │ └── error │ │ │ └── GlobalExceptionHandler.java │ │ └── infra │ │ ├── AmazonSmsClient.java │ │ ├── AmazonSmsSenderService.java │ │ ├── KtSmsSenderClient.java │ │ ├── KtSmsSenderService.java │ │ ├── SmsMessageRequest.java │ │ └── SmsSender.java │ └── resources │ ├── application.yml │ ├── test.csv │ └── test.sql ├── ch3 ├── README.md ├── build.gradle.kts ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── lombok.config ├── settings.gradle.kts └── src │ ├── main │ ├── java │ │ └── com │ │ │ └── code │ │ │ └── design │ │ │ ├── CodeDesignApplication.java │ │ │ ├── lombok │ │ │ ├── Coupon.java │ │ │ ├── Member.java │ │ │ └── Student.java │ │ │ └── object │ │ │ ├── Account.java │ │ │ ├── Address.java │ │ │ ├── CreditCard.java │ │ │ ├── Order.java │ │ │ └── Refund.java │ └── resources │ │ └── application.yml │ └── test │ └── java │ └── com │ └── code │ └── design │ ├── lombok │ ├── MemberTest.java │ └── StudentTest.java │ └── object │ ├── AccountTest.java │ ├── AddressTest.java │ ├── CreditCardTest.java │ └── RefundTest.java ├── ch4 ├── README.md ├── build.gradle.kts ├── client │ └── api.http ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── settings.gradle.kts └── src │ └── main │ ├── java │ └── com │ │ └── code │ │ └── design │ │ ├── Ch4Application.java │ │ ├── Exception1.java │ │ ├── Exception2.java │ │ ├── Member.java │ │ ├── MemberApi.java │ │ ├── MemberRepository.java │ │ └── MemberService.java │ └── resources │ └── application.yml ├── ch5 ├── README.md ├── build.gradle.kts ├── client │ ├── http-client.env.json │ └── order-api-test.http ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── settings.gradle.kts └── src │ ├── main │ └── java │ │ └── com │ │ └── code │ │ └── design │ │ ├── Ch5Application.java │ │ ├── ErrorCode.java │ │ ├── ErrorResponse.java │ │ ├── GlobalExceptionHandler.java │ │ ├── exception │ │ ├── BusinessException.java │ │ └── EntityNotFoundException.java │ │ ├── member │ │ ├── Member.java │ │ ├── MemberApi.java │ │ ├── MemberRepository.java │ │ └── SignUpRequest.java │ │ ├── order │ │ ├── OrderApi.java │ │ ├── OrderSheetForm.java │ │ ├── OrderSheetFormValidator.java │ │ ├── OrderSheetRequest.java │ │ └── PaymentMethod.java │ │ └── validation │ │ ├── EmailDuplicationValidator.java │ │ └── EmailUnique.java │ └── test │ └── java │ └── com │ └── code │ └── design │ ├── member │ └── MemberApiTest.java │ └── order │ └── OrderApiTest.java ├── ch6 ├── README.md ├── build.gradle.kts ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── settings.gradle.kts └── src │ ├── main │ └── java │ │ └── com │ │ └── code │ │ └── design │ │ ├── Ch6Application.java │ │ ├── part1 │ │ ├── ByAuthChangePasswordService.java │ │ ├── ByPasswordChangePasswordService.java │ │ ├── CardPaymentService.java │ │ ├── ChangePasswordService.java │ │ ├── Member.java │ │ ├── MemberFindService.java │ │ ├── MemberRepository.java │ │ ├── MemberService.java │ │ ├── MemberServiceImpl.java │ │ ├── PasswordChangeRequest.java │ │ └── ShinhanCardPaymentService.java │ │ ├── part2 │ │ ├── MessageType.java │ │ ├── Order.java │ │ ├── OrderApi.java │ │ ├── OrderLegacy.java │ │ └── OrderMessage.java │ │ └── part3 │ │ ├── Coupon.java │ │ ├── CouponLegacy.java │ │ ├── FirstOrderCoupon.java │ │ └── FirstOrderCouponLegacy.java │ └── test │ └── java │ └── com │ └── code │ └── design │ ├── part2 │ ├── OrderLegacyTest.java │ ├── OrderMessageTest.java │ └── OrderTest.java │ └── part3 │ └── CouponTest.java ├── ch7 ├── README.md ├── build.gradle.kts ├── client │ ├── MemberApi.http │ └── OrderApi.http ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── settings.gradle.kts └── src │ └── main │ ├── java │ └── com │ │ └── code │ │ └── design │ │ ├── AppRunner.java │ │ ├── Ch7Application.java │ │ ├── EmailSenderService.java │ │ ├── cart │ │ ├── Cart.java │ │ ├── CartApi.java │ │ ├── CartRepository.java │ │ └── CartService.java │ │ ├── coupon │ │ ├── Coupon.java │ │ ├── CouponIssueService.java │ │ └── CouponRepository.java │ │ ├── member │ │ ├── Member.java │ │ ├── MemberApi.java │ │ ├── MemberEventHandler.java │ │ ├── MemberRepository.java │ │ ├── MemberSignUpRequest.java │ │ ├── MemberSignUpService.java │ │ └── MemberSignedUpEvent.java │ │ └── order │ │ ├── Order.java │ │ ├── OrderApi.java │ │ ├── OrderCompletedEvent.java │ │ ├── OrderEventHandler.java │ │ ├── OrderRepository.java │ │ ├── OrderRequest.java │ │ ├── OrderService.java │ │ └── Orderer.java │ └── resources │ └── application.yml └── ch8 ├── README.md ├── build.gradle.kts ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── settings.gradle.kts └── src ├── main ├── java │ └── com │ │ └── code │ │ └── design │ │ ├── Ch8Application.java │ │ ├── Coupon.java │ │ ├── Member.java │ │ ├── MemberApi.java │ │ ├── MemberFindService.java │ │ ├── MemberRepository.java │ │ └── SignUpRequest.java └── resources │ └── application.yml └── test ├── java └── com │ └── code │ └── design │ ├── test_1 │ ├── Junit5_1.java │ ├── Junit5_2.java │ └── Junit5_3.java │ ├── test_2 │ ├── Junit5.java │ └── SpringBoot.java │ ├── test_3 │ ├── Test_1.java │ └── Test_2.java │ └── test_4 │ ├── CouponTest.java │ ├── IntegrationTestSupport.java │ ├── MemberApiTest.java │ ├── MemberFindServiceMockTestSupport.java │ ├── MemberFindServiceTest.java │ ├── MockTestSupport.java │ └── RepositoryTest.java └── resources ├── member-set-up.sql └── member-signup.json /.github/ISSUE_TEMPLATE/question.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/.github/ISSUE_TEMPLATE/question.md -------------------------------------------------------------------------------- /.github/issuse-question.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/.github/issuse-question.png -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/.gitignore -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/README.md -------------------------------------------------------------------------------- /ch2/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/README.md -------------------------------------------------------------------------------- /ch2/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/build.gradle.kts -------------------------------------------------------------------------------- /ch2/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /ch2/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /ch2/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/gradlew -------------------------------------------------------------------------------- /ch2/gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/gradlew.bat -------------------------------------------------------------------------------- /ch2/settings.gradle.kts: -------------------------------------------------------------------------------- 1 | rootProject.name = "ch2" 2 | -------------------------------------------------------------------------------- /ch2/src/main/java/com/code/design/CodeDesignApplication.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/src/main/java/com/code/design/CodeDesignApplication.java -------------------------------------------------------------------------------- /ch2/src/main/java/com/code/design/domain/member/api/MemberApi.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/src/main/java/com/code/design/domain/member/api/MemberApi.java -------------------------------------------------------------------------------- /ch2/src/main/java/com/code/design/domain/member/domain/Member.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/src/main/java/com/code/design/domain/member/domain/Member.java -------------------------------------------------------------------------------- /ch2/src/main/java/com/code/design/domain/model/Address.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/src/main/java/com/code/design/domain/model/Address.java -------------------------------------------------------------------------------- /ch2/src/main/java/com/code/design/domain/model/Email.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/src/main/java/com/code/design/domain/model/Email.java -------------------------------------------------------------------------------- /ch2/src/main/java/com/code/design/domain/order/item/application/OrderItemCalculation.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/src/main/java/com/code/design/domain/order/item/application/OrderItemCalculation.java -------------------------------------------------------------------------------- /ch2/src/main/java/com/code/design/domain/order/item/domain/OrderItem.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/src/main/java/com/code/design/domain/order/item/domain/OrderItem.java -------------------------------------------------------------------------------- /ch2/src/main/java/com/code/design/domain/order/order/api/OrderApi.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/src/main/java/com/code/design/domain/order/order/api/OrderApi.java -------------------------------------------------------------------------------- /ch2/src/main/java/com/code/design/domain/order/order/application/OrderCalculation.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/src/main/java/com/code/design/domain/order/order/application/OrderCalculation.java -------------------------------------------------------------------------------- /ch2/src/main/java/com/code/design/domain/order/order/application/OrderRegistrationService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/src/main/java/com/code/design/domain/order/order/application/OrderRegistrationService.java -------------------------------------------------------------------------------- /ch2/src/main/java/com/code/design/domain/order/order/dao/OrderCustomRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/src/main/java/com/code/design/domain/order/order/dao/OrderCustomRepository.java -------------------------------------------------------------------------------- /ch2/src/main/java/com/code/design/domain/order/order/dao/OrderCustomRepositoryImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/src/main/java/com/code/design/domain/order/order/dao/OrderCustomRepositoryImpl.java -------------------------------------------------------------------------------- /ch2/src/main/java/com/code/design/domain/order/order/dao/OrderFindService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/src/main/java/com/code/design/domain/order/order/dao/OrderFindService.java -------------------------------------------------------------------------------- /ch2/src/main/java/com/code/design/domain/order/order/dao/OrderRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/src/main/java/com/code/design/domain/order/order/dao/OrderRepository.java -------------------------------------------------------------------------------- /ch2/src/main/java/com/code/design/domain/order/order/domain/Order.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/src/main/java/com/code/design/domain/order/order/domain/Order.java -------------------------------------------------------------------------------- /ch2/src/main/java/com/code/design/domain/order/order/domain/Orderer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/src/main/java/com/code/design/domain/order/order/domain/Orderer.java -------------------------------------------------------------------------------- /ch2/src/main/java/com/code/design/domain/order/order/domain/Tracking.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/src/main/java/com/code/design/domain/order/order/domain/Tracking.java -------------------------------------------------------------------------------- /ch2/src/main/java/com/code/design/domain/order/order/dto/OrderRegistrationRequest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/src/main/java/com/code/design/domain/order/order/dto/OrderRegistrationRequest.java -------------------------------------------------------------------------------- /ch2/src/main/java/com/code/design/domain/order/order/exception/OrderNotFoundException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/src/main/java/com/code/design/domain/order/order/exception/OrderNotFoundException.java -------------------------------------------------------------------------------- /ch2/src/main/java/com/code/design/global/common/ErrorResponse.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/src/main/java/com/code/design/global/common/ErrorResponse.java -------------------------------------------------------------------------------- /ch2/src/main/java/com/code/design/global/common/PageResponse.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/src/main/java/com/code/design/global/common/PageResponse.java -------------------------------------------------------------------------------- /ch2/src/main/java/com/code/design/global/config/JpaConfiguration.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/src/main/java/com/code/design/global/config/JpaConfiguration.java -------------------------------------------------------------------------------- /ch2/src/main/java/com/code/design/global/error/GlobalExceptionHandler.java: -------------------------------------------------------------------------------- 1 | package com.code.design.global.error; 2 | 3 | /** 4 | * 모든 예외에 대한 글로벌 핸들러 로직 5 | */ 6 | public class GlobalExceptionHandler { 7 | 8 | } 9 | -------------------------------------------------------------------------------- /ch2/src/main/java/com/code/design/infra/AmazonSmsClient.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/src/main/java/com/code/design/infra/AmazonSmsClient.java -------------------------------------------------------------------------------- /ch2/src/main/java/com/code/design/infra/AmazonSmsSenderService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/src/main/java/com/code/design/infra/AmazonSmsSenderService.java -------------------------------------------------------------------------------- /ch2/src/main/java/com/code/design/infra/KtSmsSenderClient.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/src/main/java/com/code/design/infra/KtSmsSenderClient.java -------------------------------------------------------------------------------- /ch2/src/main/java/com/code/design/infra/KtSmsSenderService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/src/main/java/com/code/design/infra/KtSmsSenderService.java -------------------------------------------------------------------------------- /ch2/src/main/java/com/code/design/infra/SmsMessageRequest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/src/main/java/com/code/design/infra/SmsMessageRequest.java -------------------------------------------------------------------------------- /ch2/src/main/java/com/code/design/infra/SmsSender.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/src/main/java/com/code/design/infra/SmsSender.java -------------------------------------------------------------------------------- /ch2/src/main/resources/application.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/src/main/resources/application.yml -------------------------------------------------------------------------------- /ch2/src/main/resources/test.csv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/src/main/resources/test.csv -------------------------------------------------------------------------------- /ch2/src/main/resources/test.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch2/src/main/resources/test.sql -------------------------------------------------------------------------------- /ch3/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch3/README.md -------------------------------------------------------------------------------- /ch3/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch3/build.gradle.kts -------------------------------------------------------------------------------- /ch3/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch3/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /ch3/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch3/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /ch3/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch3/gradlew -------------------------------------------------------------------------------- /ch3/gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch3/gradlew.bat -------------------------------------------------------------------------------- /ch3/lombok.config: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch3/lombok.config -------------------------------------------------------------------------------- /ch3/settings.gradle.kts: -------------------------------------------------------------------------------- 1 | rootProject.name = "ch3" 2 | -------------------------------------------------------------------------------- /ch3/src/main/java/com/code/design/CodeDesignApplication.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch3/src/main/java/com/code/design/CodeDesignApplication.java -------------------------------------------------------------------------------- /ch3/src/main/java/com/code/design/lombok/Coupon.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch3/src/main/java/com/code/design/lombok/Coupon.java -------------------------------------------------------------------------------- /ch3/src/main/java/com/code/design/lombok/Member.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch3/src/main/java/com/code/design/lombok/Member.java -------------------------------------------------------------------------------- /ch3/src/main/java/com/code/design/lombok/Student.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch3/src/main/java/com/code/design/lombok/Student.java -------------------------------------------------------------------------------- /ch3/src/main/java/com/code/design/object/Account.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch3/src/main/java/com/code/design/object/Account.java -------------------------------------------------------------------------------- /ch3/src/main/java/com/code/design/object/Address.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch3/src/main/java/com/code/design/object/Address.java -------------------------------------------------------------------------------- /ch3/src/main/java/com/code/design/object/CreditCard.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch3/src/main/java/com/code/design/object/CreditCard.java -------------------------------------------------------------------------------- /ch3/src/main/java/com/code/design/object/Order.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch3/src/main/java/com/code/design/object/Order.java -------------------------------------------------------------------------------- /ch3/src/main/java/com/code/design/object/Refund.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch3/src/main/java/com/code/design/object/Refund.java -------------------------------------------------------------------------------- /ch3/src/main/resources/application.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch3/src/main/resources/application.yml -------------------------------------------------------------------------------- /ch3/src/test/java/com/code/design/lombok/MemberTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch3/src/test/java/com/code/design/lombok/MemberTest.java -------------------------------------------------------------------------------- /ch3/src/test/java/com/code/design/lombok/StudentTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch3/src/test/java/com/code/design/lombok/StudentTest.java -------------------------------------------------------------------------------- /ch3/src/test/java/com/code/design/object/AccountTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch3/src/test/java/com/code/design/object/AccountTest.java -------------------------------------------------------------------------------- /ch3/src/test/java/com/code/design/object/AddressTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch3/src/test/java/com/code/design/object/AddressTest.java -------------------------------------------------------------------------------- /ch3/src/test/java/com/code/design/object/CreditCardTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch3/src/test/java/com/code/design/object/CreditCardTest.java -------------------------------------------------------------------------------- /ch3/src/test/java/com/code/design/object/RefundTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch3/src/test/java/com/code/design/object/RefundTest.java -------------------------------------------------------------------------------- /ch4/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch4/README.md -------------------------------------------------------------------------------- /ch4/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch4/build.gradle.kts -------------------------------------------------------------------------------- /ch4/client/api.http: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch4/client/api.http -------------------------------------------------------------------------------- /ch4/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch4/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /ch4/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch4/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /ch4/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch4/gradlew -------------------------------------------------------------------------------- /ch4/gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch4/gradlew.bat -------------------------------------------------------------------------------- /ch4/settings.gradle.kts: -------------------------------------------------------------------------------- 1 | rootProject.name = "ch4" 2 | -------------------------------------------------------------------------------- /ch4/src/main/java/com/code/design/Ch4Application.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch4/src/main/java/com/code/design/Ch4Application.java -------------------------------------------------------------------------------- /ch4/src/main/java/com/code/design/Exception1.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch4/src/main/java/com/code/design/Exception1.java -------------------------------------------------------------------------------- /ch4/src/main/java/com/code/design/Exception2.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch4/src/main/java/com/code/design/Exception2.java -------------------------------------------------------------------------------- /ch4/src/main/java/com/code/design/Member.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch4/src/main/java/com/code/design/Member.java -------------------------------------------------------------------------------- /ch4/src/main/java/com/code/design/MemberApi.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch4/src/main/java/com/code/design/MemberApi.java -------------------------------------------------------------------------------- /ch4/src/main/java/com/code/design/MemberRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch4/src/main/java/com/code/design/MemberRepository.java -------------------------------------------------------------------------------- /ch4/src/main/java/com/code/design/MemberService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch4/src/main/java/com/code/design/MemberService.java -------------------------------------------------------------------------------- /ch4/src/main/resources/application.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch4/src/main/resources/application.yml -------------------------------------------------------------------------------- /ch5/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch5/README.md -------------------------------------------------------------------------------- /ch5/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch5/build.gradle.kts -------------------------------------------------------------------------------- /ch5/client/http-client.env.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch5/client/http-client.env.json -------------------------------------------------------------------------------- /ch5/client/order-api-test.http: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch5/client/order-api-test.http -------------------------------------------------------------------------------- /ch5/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch5/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /ch5/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch5/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /ch5/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch5/gradlew -------------------------------------------------------------------------------- /ch5/gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch5/gradlew.bat -------------------------------------------------------------------------------- /ch5/settings.gradle.kts: -------------------------------------------------------------------------------- 1 | rootProject.name = "ch5" 2 | -------------------------------------------------------------------------------- /ch5/src/main/java/com/code/design/Ch5Application.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch5/src/main/java/com/code/design/Ch5Application.java -------------------------------------------------------------------------------- /ch5/src/main/java/com/code/design/ErrorCode.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch5/src/main/java/com/code/design/ErrorCode.java -------------------------------------------------------------------------------- /ch5/src/main/java/com/code/design/ErrorResponse.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch5/src/main/java/com/code/design/ErrorResponse.java -------------------------------------------------------------------------------- /ch5/src/main/java/com/code/design/GlobalExceptionHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch5/src/main/java/com/code/design/GlobalExceptionHandler.java -------------------------------------------------------------------------------- /ch5/src/main/java/com/code/design/exception/BusinessException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch5/src/main/java/com/code/design/exception/BusinessException.java -------------------------------------------------------------------------------- /ch5/src/main/java/com/code/design/exception/EntityNotFoundException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch5/src/main/java/com/code/design/exception/EntityNotFoundException.java -------------------------------------------------------------------------------- /ch5/src/main/java/com/code/design/member/Member.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch5/src/main/java/com/code/design/member/Member.java -------------------------------------------------------------------------------- /ch5/src/main/java/com/code/design/member/MemberApi.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch5/src/main/java/com/code/design/member/MemberApi.java -------------------------------------------------------------------------------- /ch5/src/main/java/com/code/design/member/MemberRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch5/src/main/java/com/code/design/member/MemberRepository.java -------------------------------------------------------------------------------- /ch5/src/main/java/com/code/design/member/SignUpRequest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch5/src/main/java/com/code/design/member/SignUpRequest.java -------------------------------------------------------------------------------- /ch5/src/main/java/com/code/design/order/OrderApi.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch5/src/main/java/com/code/design/order/OrderApi.java -------------------------------------------------------------------------------- /ch5/src/main/java/com/code/design/order/OrderSheetForm.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch5/src/main/java/com/code/design/order/OrderSheetForm.java -------------------------------------------------------------------------------- /ch5/src/main/java/com/code/design/order/OrderSheetFormValidator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch5/src/main/java/com/code/design/order/OrderSheetFormValidator.java -------------------------------------------------------------------------------- /ch5/src/main/java/com/code/design/order/OrderSheetRequest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch5/src/main/java/com/code/design/order/OrderSheetRequest.java -------------------------------------------------------------------------------- /ch5/src/main/java/com/code/design/order/PaymentMethod.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch5/src/main/java/com/code/design/order/PaymentMethod.java -------------------------------------------------------------------------------- /ch5/src/main/java/com/code/design/validation/EmailDuplicationValidator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch5/src/main/java/com/code/design/validation/EmailDuplicationValidator.java -------------------------------------------------------------------------------- /ch5/src/main/java/com/code/design/validation/EmailUnique.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch5/src/main/java/com/code/design/validation/EmailUnique.java -------------------------------------------------------------------------------- /ch5/src/test/java/com/code/design/member/MemberApiTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch5/src/test/java/com/code/design/member/MemberApiTest.java -------------------------------------------------------------------------------- /ch5/src/test/java/com/code/design/order/OrderApiTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch5/src/test/java/com/code/design/order/OrderApiTest.java -------------------------------------------------------------------------------- /ch6/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch6/README.md -------------------------------------------------------------------------------- /ch6/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch6/build.gradle.kts -------------------------------------------------------------------------------- /ch6/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch6/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /ch6/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch6/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /ch6/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch6/gradlew -------------------------------------------------------------------------------- /ch6/gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch6/gradlew.bat -------------------------------------------------------------------------------- /ch6/settings.gradle.kts: -------------------------------------------------------------------------------- 1 | rootProject.name = "ch6" 2 | -------------------------------------------------------------------------------- /ch6/src/main/java/com/code/design/Ch6Application.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch6/src/main/java/com/code/design/Ch6Application.java -------------------------------------------------------------------------------- /ch6/src/main/java/com/code/design/part1/ByAuthChangePasswordService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch6/src/main/java/com/code/design/part1/ByAuthChangePasswordService.java -------------------------------------------------------------------------------- /ch6/src/main/java/com/code/design/part1/ByPasswordChangePasswordService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch6/src/main/java/com/code/design/part1/ByPasswordChangePasswordService.java -------------------------------------------------------------------------------- /ch6/src/main/java/com/code/design/part1/CardPaymentService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch6/src/main/java/com/code/design/part1/CardPaymentService.java -------------------------------------------------------------------------------- /ch6/src/main/java/com/code/design/part1/ChangePasswordService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch6/src/main/java/com/code/design/part1/ChangePasswordService.java -------------------------------------------------------------------------------- /ch6/src/main/java/com/code/design/part1/Member.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch6/src/main/java/com/code/design/part1/Member.java -------------------------------------------------------------------------------- /ch6/src/main/java/com/code/design/part1/MemberFindService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch6/src/main/java/com/code/design/part1/MemberFindService.java -------------------------------------------------------------------------------- /ch6/src/main/java/com/code/design/part1/MemberRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch6/src/main/java/com/code/design/part1/MemberRepository.java -------------------------------------------------------------------------------- /ch6/src/main/java/com/code/design/part1/MemberService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch6/src/main/java/com/code/design/part1/MemberService.java -------------------------------------------------------------------------------- /ch6/src/main/java/com/code/design/part1/MemberServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch6/src/main/java/com/code/design/part1/MemberServiceImpl.java -------------------------------------------------------------------------------- /ch6/src/main/java/com/code/design/part1/PasswordChangeRequest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch6/src/main/java/com/code/design/part1/PasswordChangeRequest.java -------------------------------------------------------------------------------- /ch6/src/main/java/com/code/design/part1/ShinhanCardPaymentService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch6/src/main/java/com/code/design/part1/ShinhanCardPaymentService.java -------------------------------------------------------------------------------- /ch6/src/main/java/com/code/design/part2/MessageType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch6/src/main/java/com/code/design/part2/MessageType.java -------------------------------------------------------------------------------- /ch6/src/main/java/com/code/design/part2/Order.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch6/src/main/java/com/code/design/part2/Order.java -------------------------------------------------------------------------------- /ch6/src/main/java/com/code/design/part2/OrderApi.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch6/src/main/java/com/code/design/part2/OrderApi.java -------------------------------------------------------------------------------- /ch6/src/main/java/com/code/design/part2/OrderLegacy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch6/src/main/java/com/code/design/part2/OrderLegacy.java -------------------------------------------------------------------------------- /ch6/src/main/java/com/code/design/part2/OrderMessage.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch6/src/main/java/com/code/design/part2/OrderMessage.java -------------------------------------------------------------------------------- /ch6/src/main/java/com/code/design/part3/Coupon.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch6/src/main/java/com/code/design/part3/Coupon.java -------------------------------------------------------------------------------- /ch6/src/main/java/com/code/design/part3/CouponLegacy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch6/src/main/java/com/code/design/part3/CouponLegacy.java -------------------------------------------------------------------------------- /ch6/src/main/java/com/code/design/part3/FirstOrderCoupon.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch6/src/main/java/com/code/design/part3/FirstOrderCoupon.java -------------------------------------------------------------------------------- /ch6/src/main/java/com/code/design/part3/FirstOrderCouponLegacy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch6/src/main/java/com/code/design/part3/FirstOrderCouponLegacy.java -------------------------------------------------------------------------------- /ch6/src/test/java/com/code/design/part2/OrderLegacyTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch6/src/test/java/com/code/design/part2/OrderLegacyTest.java -------------------------------------------------------------------------------- /ch6/src/test/java/com/code/design/part2/OrderMessageTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch6/src/test/java/com/code/design/part2/OrderMessageTest.java -------------------------------------------------------------------------------- /ch6/src/test/java/com/code/design/part2/OrderTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch6/src/test/java/com/code/design/part2/OrderTest.java -------------------------------------------------------------------------------- /ch6/src/test/java/com/code/design/part3/CouponTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch6/src/test/java/com/code/design/part3/CouponTest.java -------------------------------------------------------------------------------- /ch7/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/README.md -------------------------------------------------------------------------------- /ch7/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/build.gradle.kts -------------------------------------------------------------------------------- /ch7/client/MemberApi.http: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/client/MemberApi.http -------------------------------------------------------------------------------- /ch7/client/OrderApi.http: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/client/OrderApi.http -------------------------------------------------------------------------------- /ch7/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /ch7/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /ch7/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/gradlew -------------------------------------------------------------------------------- /ch7/gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/gradlew.bat -------------------------------------------------------------------------------- /ch7/settings.gradle.kts: -------------------------------------------------------------------------------- 1 | rootProject.name = "ch7" 2 | -------------------------------------------------------------------------------- /ch7/src/main/java/com/code/design/AppRunner.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/src/main/java/com/code/design/AppRunner.java -------------------------------------------------------------------------------- /ch7/src/main/java/com/code/design/Ch7Application.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/src/main/java/com/code/design/Ch7Application.java -------------------------------------------------------------------------------- /ch7/src/main/java/com/code/design/EmailSenderService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/src/main/java/com/code/design/EmailSenderService.java -------------------------------------------------------------------------------- /ch7/src/main/java/com/code/design/cart/Cart.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/src/main/java/com/code/design/cart/Cart.java -------------------------------------------------------------------------------- /ch7/src/main/java/com/code/design/cart/CartApi.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/src/main/java/com/code/design/cart/CartApi.java -------------------------------------------------------------------------------- /ch7/src/main/java/com/code/design/cart/CartRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/src/main/java/com/code/design/cart/CartRepository.java -------------------------------------------------------------------------------- /ch7/src/main/java/com/code/design/cart/CartService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/src/main/java/com/code/design/cart/CartService.java -------------------------------------------------------------------------------- /ch7/src/main/java/com/code/design/coupon/Coupon.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/src/main/java/com/code/design/coupon/Coupon.java -------------------------------------------------------------------------------- /ch7/src/main/java/com/code/design/coupon/CouponIssueService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/src/main/java/com/code/design/coupon/CouponIssueService.java -------------------------------------------------------------------------------- /ch7/src/main/java/com/code/design/coupon/CouponRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/src/main/java/com/code/design/coupon/CouponRepository.java -------------------------------------------------------------------------------- /ch7/src/main/java/com/code/design/member/Member.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/src/main/java/com/code/design/member/Member.java -------------------------------------------------------------------------------- /ch7/src/main/java/com/code/design/member/MemberApi.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/src/main/java/com/code/design/member/MemberApi.java -------------------------------------------------------------------------------- /ch7/src/main/java/com/code/design/member/MemberEventHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/src/main/java/com/code/design/member/MemberEventHandler.java -------------------------------------------------------------------------------- /ch7/src/main/java/com/code/design/member/MemberRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/src/main/java/com/code/design/member/MemberRepository.java -------------------------------------------------------------------------------- /ch7/src/main/java/com/code/design/member/MemberSignUpRequest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/src/main/java/com/code/design/member/MemberSignUpRequest.java -------------------------------------------------------------------------------- /ch7/src/main/java/com/code/design/member/MemberSignUpService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/src/main/java/com/code/design/member/MemberSignUpService.java -------------------------------------------------------------------------------- /ch7/src/main/java/com/code/design/member/MemberSignedUpEvent.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/src/main/java/com/code/design/member/MemberSignedUpEvent.java -------------------------------------------------------------------------------- /ch7/src/main/java/com/code/design/order/Order.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/src/main/java/com/code/design/order/Order.java -------------------------------------------------------------------------------- /ch7/src/main/java/com/code/design/order/OrderApi.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/src/main/java/com/code/design/order/OrderApi.java -------------------------------------------------------------------------------- /ch7/src/main/java/com/code/design/order/OrderCompletedEvent.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/src/main/java/com/code/design/order/OrderCompletedEvent.java -------------------------------------------------------------------------------- /ch7/src/main/java/com/code/design/order/OrderEventHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/src/main/java/com/code/design/order/OrderEventHandler.java -------------------------------------------------------------------------------- /ch7/src/main/java/com/code/design/order/OrderRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/src/main/java/com/code/design/order/OrderRepository.java -------------------------------------------------------------------------------- /ch7/src/main/java/com/code/design/order/OrderRequest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/src/main/java/com/code/design/order/OrderRequest.java -------------------------------------------------------------------------------- /ch7/src/main/java/com/code/design/order/OrderService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/src/main/java/com/code/design/order/OrderService.java -------------------------------------------------------------------------------- /ch7/src/main/java/com/code/design/order/Orderer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/src/main/java/com/code/design/order/Orderer.java -------------------------------------------------------------------------------- /ch7/src/main/resources/application.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch7/src/main/resources/application.yml -------------------------------------------------------------------------------- /ch8/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch8/README.md -------------------------------------------------------------------------------- /ch8/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch8/build.gradle.kts -------------------------------------------------------------------------------- /ch8/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch8/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /ch8/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch8/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /ch8/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch8/gradlew -------------------------------------------------------------------------------- /ch8/gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch8/gradlew.bat -------------------------------------------------------------------------------- /ch8/settings.gradle.kts: -------------------------------------------------------------------------------- 1 | rootProject.name = "ch8" 2 | -------------------------------------------------------------------------------- /ch8/src/main/java/com/code/design/Ch8Application.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch8/src/main/java/com/code/design/Ch8Application.java -------------------------------------------------------------------------------- /ch8/src/main/java/com/code/design/Coupon.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch8/src/main/java/com/code/design/Coupon.java -------------------------------------------------------------------------------- /ch8/src/main/java/com/code/design/Member.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch8/src/main/java/com/code/design/Member.java -------------------------------------------------------------------------------- /ch8/src/main/java/com/code/design/MemberApi.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch8/src/main/java/com/code/design/MemberApi.java -------------------------------------------------------------------------------- /ch8/src/main/java/com/code/design/MemberFindService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch8/src/main/java/com/code/design/MemberFindService.java -------------------------------------------------------------------------------- /ch8/src/main/java/com/code/design/MemberRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch8/src/main/java/com/code/design/MemberRepository.java -------------------------------------------------------------------------------- /ch8/src/main/java/com/code/design/SignUpRequest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch8/src/main/java/com/code/design/SignUpRequest.java -------------------------------------------------------------------------------- /ch8/src/main/resources/application.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch8/src/main/resources/application.yml -------------------------------------------------------------------------------- /ch8/src/test/java/com/code/design/test_1/Junit5_1.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch8/src/test/java/com/code/design/test_1/Junit5_1.java -------------------------------------------------------------------------------- /ch8/src/test/java/com/code/design/test_1/Junit5_2.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch8/src/test/java/com/code/design/test_1/Junit5_2.java -------------------------------------------------------------------------------- /ch8/src/test/java/com/code/design/test_1/Junit5_3.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch8/src/test/java/com/code/design/test_1/Junit5_3.java -------------------------------------------------------------------------------- /ch8/src/test/java/com/code/design/test_2/Junit5.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch8/src/test/java/com/code/design/test_2/Junit5.java -------------------------------------------------------------------------------- /ch8/src/test/java/com/code/design/test_2/SpringBoot.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch8/src/test/java/com/code/design/test_2/SpringBoot.java -------------------------------------------------------------------------------- /ch8/src/test/java/com/code/design/test_3/Test_1.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch8/src/test/java/com/code/design/test_3/Test_1.java -------------------------------------------------------------------------------- /ch8/src/test/java/com/code/design/test_3/Test_2.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch8/src/test/java/com/code/design/test_3/Test_2.java -------------------------------------------------------------------------------- /ch8/src/test/java/com/code/design/test_4/CouponTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch8/src/test/java/com/code/design/test_4/CouponTest.java -------------------------------------------------------------------------------- /ch8/src/test/java/com/code/design/test_4/IntegrationTestSupport.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch8/src/test/java/com/code/design/test_4/IntegrationTestSupport.java -------------------------------------------------------------------------------- /ch8/src/test/java/com/code/design/test_4/MemberApiTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch8/src/test/java/com/code/design/test_4/MemberApiTest.java -------------------------------------------------------------------------------- /ch8/src/test/java/com/code/design/test_4/MemberFindServiceMockTestSupport.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch8/src/test/java/com/code/design/test_4/MemberFindServiceMockTestSupport.java -------------------------------------------------------------------------------- /ch8/src/test/java/com/code/design/test_4/MemberFindServiceTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch8/src/test/java/com/code/design/test_4/MemberFindServiceTest.java -------------------------------------------------------------------------------- /ch8/src/test/java/com/code/design/test_4/MockTestSupport.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch8/src/test/java/com/code/design/test_4/MockTestSupport.java -------------------------------------------------------------------------------- /ch8/src/test/java/com/code/design/test_4/RepositoryTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch8/src/test/java/com/code/design/test_4/RepositoryTest.java -------------------------------------------------------------------------------- /ch8/src/test/resources/member-set-up.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cheese10yun/code-design/HEAD/ch8/src/test/resources/member-set-up.sql -------------------------------------------------------------------------------- /ch8/src/test/resources/member-signup.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "yun" 3 | } --------------------------------------------------------------------------------