본문 바로가기

전체 글

[3편 2단위 팀프로젝트 기술-개인] 수강 도메인 분투기: Stacked Branch 활용과 개인 트러블슈팅 💡 [Java/Spring] LXP 회원 및 수강 신청 도메인 구축 시리즈1편 (종합 회고): [ERD에서 도메인 중심으로: LXP 수강 신청 시스템 개발 및 KPT]2편 (기술-공통): [JPA 양방향 매핑과 Soft Delete의 덫: LXP 프로젝트를 지탱한 5가지 기술적 의사결정]3편 (기술-개인): [수강 도메인 분투기: Stacked Branch 활용과 개인 트러블슈팅] (현재 글)1. 🚀 수강(Enrollment) 도메인 개발의 병목 현상제가 담당한 '수강(Enrollment)' 도메인은 그 특성상 강의(Course), 회원(Member), 장바구니(Cart) 등 다른 핵심 도메인들의 개발이 어느 정도 완료되어야만 원활하게 기능을 붙일 수 있는 구조였습니다.선행 도메인의 개발이 끝날 때까.. 더보기
[2편 2단위 팀프로젝트 기술-공통] JPA 양방향 매핑과 Soft Delete의 덫: LXP 프로젝트를 지탱한 5가지 기술적 의사결정 💡 [Java/Spring] LXP 회원 및 수강 신청 도메인 구축 시리즈1편 (종합 회고): [ERD에서 도메인 중심으로: LXP 수강 신청 시스템 개발 및 KPT]2편 (기술-공통): [JPA 양방향 매핑과 Soft Delete의 덫: LXP 프로젝트를 지탱한 5가지 기술적 의사결정] (현재 글)3편 (기술-개인): [수강 도메인 분투기: Stacked Branch 활용과 개인 트러블슈팅]1. 🎯 배경: RDBMS 패러다임과 객체지향 패러다임의 간극처음 프로젝트를 설계할 때 팀원들을 가장 괴롭혔던 것은 '도메인 중심(객체지향) 설계'에 대한 모호함이었습니다. RDBMS는 데이터 간의 연관관계를 파악하고 엑셀과 같은 행열 중심의 데이터를 적재하는 관점을 가지는 반면, 도메인 중심 설계는 다소 뜬구름.. 더보기
[1편 2단위 팀프로젝트 회고] ERD에서 도메인 중심으로: LXP 수강 신청 시스템 개발 및 KPT 💡 [Java/Spring] LXP 회원 및 수강 신청 도메인 구축 시리즈1편 (종합 회고): [ERD 중심에서 도메인 중심으로, LXP 프로젝트 팀 협업 및 KPT 회고] (현재 글)2편 (기술-공통): [JPA 양방향 매핑과 Soft Delete의 덫: LXP 프로젝트를 지탱한 5가지 기술적 의사결정]3편 (기술-개인): [수강 도메인 분투기: Stacked Branch 활용과 개인 트러블슈팅]1. 🚀 배경 및 목표단순한 ERD 중심의 데이터 모델링 관성에서 벗어나, 도메인의 '행위(Behavior)'를 중심으로 설계하는 비즈니스 로직을 구현하고자 LXP(Learning eXperience Platform) 회원 및 강의 신청 도메인 구축 프로젝트를 진행했습니다.가장 핵심적인 목표는 JPA를 적극.. 더보기
1차 프로젝트 회고 서론 포텐업 부트캠프를 시작한지 한달이 되어 가는 시점에 1차 프로젝트를 진행하고 1회차 프로젝트 마무리를 지었습니다(짝짝짝). 1차 프로젝트인 만큼 서툰 점도 많았고 의욕만 앞서고 아쉬웠던 점들이 많았던 만큼 잘한점, 부족한 점, 개선할 점들을 찾고 점을 찍고 넘어가고자 합니다.본론 1차 프로젝트는 jdbc와 java 순수 콘솔을 통해서 LXP 강의 및 강좌 등록 도메인을 구축하는 것이 목표였습니다. 이를 위해서 인프런, 유데미, 패스트 캠퍼스 등의 사이트들을 분석하고 이를 통해서 ERD작성 → 요구사항 도출 및 기능명세서 작성 → 프로젝트 셋팅(git 전략 및 코딩컨벤션) → 프로젝트 구현 순서로 진행했습니다.통합 ERD 인프런, 유데미, 패스트캠퍼스 등의 강좌 도메인 사이트들을 분석.. 더보기
Codility Lesson 12 - CommonPrimeDivisors( JAVA ) https://app.codility.com/programmers/lessons/12-euclidean_algorithm/common_prime_divisors/ CommonPrimeDivisors coding task - Learn to Code - Codility Check whether two numbers have the same prime divisors. app.codility.com 문제 - prime divisor( 이하 pd )란 P라는 정수를 나눌 수 있는 소수를 의미한다. - 예를들어, 20의 pd는 2, 5가 된다. - 우리의 목표는 N, M 2개의 양수들에서 동시에 가진 pd를 구하는 것이다. - 예시 N = 15 and M = 75, the prime divisors are th.. 더보기
Codility Lesson 12 - ChocolatesByNumbers( JAVA ) https://app.codility.com/programmers/lessons/12-euclidean_algorithm/chocolates_by_numbers/ ChocolatesByNumbers coding task - Learn to Code - Codility There are N chocolates in a circle. Count the number of chocolates you will eat. app.codility.com 문제 - 양수 N, M이 주어지며, N은 원에 나열된 초콜렛들을 의미하며 0 ~ N-1까지 넘버링 되어있다. - 0번째 초콜릿 부터 먹으며, 그 다음은 M번 째 초콜릿을 먹는다. - 빈포장지를 만났을 때, 먹는 것을 멈춘다. - 예시 : N=10, M=4일 때, 0, .. 더보기
Codility Lesson 11 - CountSemiprimes(JAVA) https://app.codility.com/programmers/lessons/11-sieve_of_eratosthenes/count_semiprimes/ CountSemiprimes coding task - Learn to Code - Codility Count the semiprime numbers in the given range [a..b] app.codility.com 문제 - prime은 소수를 의미 : 2, 3, 5, 7, 11 ...( 1과 나 자신만이 약수인 수 ) - semiprime은 자연수 중 2개의 소수로 이루어진 수를 의미 : 4, 6, 9, 10, 14 ... - M개의 정수들로 이루어진 P, Q배열이 주어질 때, Query K는 1 더보기
Codility Lesson 11 - CountNonDivisible(JAVA) https://app.codility.com/programmers/lessons/11-sieve_of_eratosthenes/count_non_divisible/ CountNonDivisible coding task - Learn to Code - Codility Calculate the number of elements of an array that are not divisors of each element. app.codility.com 문제 - 배열 A가 주어지며, N개의 정수들로 이루어져 있다. - 배열 A의 각 원소들에서 나누어지지 않는 수들의 개수를 구하라. - 예시 : A[0] = 3 A[1] = 1 A[2] = 2 A[3] = 3 A[4] = 6 A[0] = 3, the non-diviso.. 더보기