묻고 답해요
160만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨오브젝트 - 기초편
도메인 모델을 잘 정의하기 위해서 어떻게 해야할까요?
안녕하세요. 좋은 강의를 통해 값진 지식을 얻어갔습니다. 감사합니다.다름이 아니라 완강 이후 "좋은 도메인 모델은 어떻게 만드는 것인가?" 라는 의문이 들었습니다.강의를 통해 도메인 모델과 변경의 관점에서 설계를 평가하는 방법과 책임을 부여하는 패턴들을 통해 개발자의 변경에 유연한 코드를 만드는 실마리는 얻었지만 한편으로는 이러한 부분들은 문맥을 제공하는 도메인 모델이 잘 정의되어있을 때, 빛이 발하는 것이 아닌가 생각이 들었습니다.사실 현업에서 도메인 모델을 따로 정의하고 의식하면서 개발을 해본 경험이 없기 때문에 어떻게 하는 것이 좋을지 잘 모르겠습니다. 따라서 아래의 세부 의문점에 대해 답변해주실 수 있으면 감사하겠습니다.도메인 모델은 개발 프로세스 중 어느 시점에 정의하는 것이 좋은지?도메인 모델을 정의하는 것은 개발자가 주도적으로 이끄는 것인지 아니면 기획자와 같은 다른 팀원들과 함께 만들어 나가는 것인지?만들어진 도메인 모델을 토대로 설계 및 개발을 진행하다 도메인 모델을 변경해야만 하는 순간이 있는지?좋은 도메인 모델을 만들었는지 평가해볼만한 방법들이 있는지?
-
미해결김영한의 실전 데이터베이스 - 설계 1편, 현대적 데이터 모델링 완전 정복
단일 키로 행을 식별할 수 없을 때 어떻게 설계하나요?
실무에서 단일 컬럼 PK만으로 행을 식별할 수 없는 경우가 있습니다.예를 들어 영화 예매 시스템에서 ‘상영회차’와 ‘좌석’ 정보를 조합해야만 특정 예매 내역을 정확히 구분할 수 있을 때가 있죠.이런 경우 복합키를 사용하게 되는데, 실제 설계에서는 어떤 방식으로 복합키를 구성하고, 단일 PK와 비교했을 때 어떤 장단점이 있는지 경험 기반으로 설명해주실 수 있나요?
-
미해결카카오 코테 6주 합격! 실전 파이썬 코딩테스트
선행으로 공부하면 좋을 이산수학 종류를 알고싶어요.
강의 중 교과서 공부라는 내용은 나오는데, 좀 추상적으로 느껴져서요.적절한 범위 내에서만 공부하는 게 좋을 것 같은데, 추천하는 범위, 단원, 종류 등 간단하게 알 수 있을까요?
-
미해결김영한의 실전 데이터베이스 - 설계 1편, 현대적 데이터 모델링 완전 정복
혼합 모델링의 선택 기준
정규 테이블과 JSON 컬럼을 함께 사용할 때, 정규화를 유지할지 JSON으로 비정규화할지 어떤 기준으로 결정하나요?
-
미해결김영한의 실전 데이터베이스 - 설계 1편, 현대적 데이터 모델링 완전 정복
정규형은 종속 분리의 연속으로 받아들이면 될까요?
제 1,2,3 정규형 강의를 들었을 때, 정규형은 종속 분리의 연속이다라는 생각이 들어서 질문 남깁니다. 앞에서부터 '제1 정규형 만족 -> 제2 정규형 만족 -> 제3 정규형 만족' 이라는 과정이 종속 분리가 차근차근 진행되는거죠? 제가 생각한 것처럼 이해하면 될까요?
-
미해결김영한의 실전 데이터베이스 - 설계 1편, 현대적 데이터 모델링 완전 정복
‘데이터베이스 설계를 잘한다’ 혹은 ‘데이터 모델링을 잘한다’는 게 어떤 의미인가요?
안녕하세요, 강사님. 강의를 들으면서 데이터베이스 설계와 모델링의 중요성을 많이 느끼고 있습니다.문득 ‘데이터베이스 설계를 잘한다’ 혹은 ‘데이터 모델링을 잘한다’는 게 어떤 의미인지 궁금해졌습니다.설계 과정에는 개념적, 논리적, 물리적 모델링 등 여러 단계가 있고, 각 단계마다 좋은 설계의 기준이 조금씩 다를 것 같은데요.실무에서는 이런 기준을 어떤 방식으로 판단하시나요?만약 같은 요구사항을 모델링했을 때 한쪽은 유지보수성이 높고 다른 쪽은 성능이 좋은 경우, 어떤 관점에서 우선순위를 정하시는지도 궁금합니다. 좋은 강의 제작해주셔서 감사합니다!
-
해결됨김영한의 실전 데이터베이스 - 설계 1편, 현대적 데이터 모델링 완전 정복
RDB 선택 기준에 대해서 질문드립니다!
안녕하세요 이번 강의 정말 잘 들었습니다!강의에서는 주로 MySQL을 사용했는데 현업에서도 PostgreSQL대신 MySQL을 많이 사용하는지 궁금합니다. RDB를 선택할 때 기준같은게 있는지도 궁금합니다!
-
미해결김영한의 실전 데이터베이스 - 설계 1편, 현대적 데이터 모델링 완전 정복
명확한 명세서 없이 진행된 프로젝트
스키마 명세서, 요구사항 명세없이 유지보수, 개발된 프로젝트의 경우 스키마 명세서를 나중에라도 추가해서 관리하는게 훨씬 좋을까요?/./
-
미해결김영한의 실전 데이터베이스 - 설계 1편, 현대적 데이터 모델링 완전 정복
DAP 자격증 현업에서 유용한가요?
DAP 데이터 설계 자격증 현업에서 유용하거나 인정해주는 자격증인가요
-
미해결김영한의 실전 데이터베이스 - 설계 1편, 현대적 데이터 모델링 완전 정복
PK타입 UUID
물리적 모델링에서 PK의 타입을 선택할 때 대부분 BIGINT를 사용하고 용량 차이도 크지않다는 강의가 매우 좋았습니다.그런데 논리적 모델링에서 PK로 UUID도 사용한다고 들었는데 UUID는 128바이트로 16바이트로 정수 PK보다 2배 더 크고 식별하기도 힘들것이라고 생각되는데 사용한 경험이 있으실까요?아니면 어떠한 상황에서 장점이 있는지 궁금합니다.
-
미해결시스템 디자인 첫걸음: 면접에서 돋보이는 백엔드 아키텍처 설계하기
로드밸런싱 관련 질문
안녕하세요 강사님! 강의 잘 듣고 있습니다.실제 서비스 환경에서 로드 밸런서를 두는 시점(예: 트래픽 기준이나 서버 수 기준)을 어떻게 판단하시는지 궁금합니다.단순히 서버 부하율이 높아졌을 때 적용하는 건지, 아니면 아키텍처 설계 초기에 미리 구성하는 경우가 더 일반적인지도 궁금합니다.
-
해결됨오브젝트 - 기초편
getter 사용에 대한 질문입니다.
안녕하세요. 객체지향 설계에서, 객체의 상태를 getter로 직접 꺼내서 사용하기보다 객체에 메시지를 보내 처리하라는 원칙을 따르려고 합니다.그런데 만약 특정 로직이 코드 전체에서 단 한 번만 사용되는 경우에도, 이 원칙을 지키기 위해 객체 내부에 새로운 메서드를 구현하는 것이 올바른 방법일까요? 아니면 이런 예외적인 경우에는 실용성을 고려해 getter를 사용하는 것이 더 나을까요?
-
미해결김영한의 실전 데이터베이스 - 설계 1편, 현대적 데이터 모델링 완전 정복
개발자로서 차별화
AI 도구가 발전한 지금, 개발자로서 차별화되는 실력은 어떤 부분에서 나타나나요?
-
해결됨오브젝트 - 설계 원칙편
7-3 Reader의 소유권 이동에 관해
pdf의 17~18 페이지, 강의의 4:54Reader를 reader 패키지에서 game 패키지로 이동시켜 reader 패키지가 game 패키지를 의존하게 만들 수 있다고 하셨는데 패키지란게 Java의 기능인가요? 그렇다면 C++에 대응될 만한 기능이 있을까요?
-
미해결김영한의 실전 데이터베이스 - 설계 1편, 현대적 데이터 모델링 완전 정복
실전 2편에서는 어떤 것들을 준비 중인지 궁금합니다
안녕하세요 강사님 강의 너무 잘 듣고 있습니다! 아직 많은 DB설계를 해보진 않아서 알려주시는 개념들이 차곡차곡 잘 정립되는 것 같아 도움이 많이 되고 있습니다.실제 조금 더 복잡한 프로젝트들에서의 DB 설계, 성능이나 쿼리들도 궁금한데 혹시 앞으로 이에 관한 내용들도 강의하실 예정에 있으신지 궁금합니다. 또 실전 2편이 기다려지는데 어떤 것들을 준비 중에 있는지 궁금합니다!
-
미해결김영한의 실전 데이터베이스 - 설계 1편, 현대적 데이터 모델링 완전 정복
PK 타입에 관한 문의
강의를 너무 잘 듣고 있습니다.PK 타입과 관련되어 문득 궁금한 점이 생겨 문의 드립니다.혹시 대규모 시스템에서 UUID를 PK를 사용할때 실무에서 고민하셨던 팁이 있으신지 궁금합니다.보안성이나 마이그레이션 가능성이 있는 테이블들에 부분적으로 UUID를 적용해 보았으나, 대규모 환경에서는 어떤 설계 팁이 있을지 궁금하네요.감사합니다^^ * 이건 질문은 아니나 사소한 오타 제보입니다.수업 자료중 1-A. 윈도우 - MySQL 설치 안내 파일의4P 맨 아래'mysql-installer-community-8.0.x.dmg`로 되어 있습니다. 참고하시면 좋을 것 같습니다.
-
해결됨김영한의 실전 데이터베이스 - 설계 1편, 현대적 데이터 모델링 완전 정복
장기간 진행된 프로젝트, 지금이라도 용어사전 작성이 필요할까요?
안녕하세요 영한강사님!강의를 듣다가 문득 궁금한 점이 있어 질문을 남기게 되었습니다~ 다름이 아니라, 강의 중에서 '용어사전'에 대해 중요성을 강조하셨는데, 현재 제가 실무에서 맡고 있는 프로젝트가 있습니다! 근데 이 프로젝트가 이미 3-4년 전부터 계속 고도화 및 디벨롭하며 진행 되고 있는 프로젝트입니다..ㅎㅎ 이런 상황에서 해당 프로젝트에 대해서 지금이라도 용어사전을 만드는게 좋을까요..? 실무를 하다보니 '용어사전'에 대해 아주 깊게 중요하다는 것을 깨닫게 되었는데, 막상 이제와서 만들려고 하니 막막하고 뭐부터 어떻게 작성해야할지 감이 안잡히네요 😅앞으로 새롭게 시작하는 프로젝트가 있다면 무조건 '용어사전'을 만들고 시작할텐데, 이미 진행중인 프로젝트에 대해서는 어떻게 해야할지, 만드는게 좋을지 아니면 그냥 지금처럼 없이 계속 진행할지 고민이 듭니다..! 조언해주시면 감사드리겠습니다..!
-
해결됨오브젝트 - 기초편
6-1. 변경과 설계 마지막 추상화 관련 질문 입니다.
안녕하세요.이번에 설계의 관점에서의 배움을 위해 강의를 듣고 있습니다.실 생활(영화) 의 예시로 알려주셔서 이해하고, 생각해보는데 도움이 되고 있습니다. 6-1 강의 마지막에 추상화를 변경이 일어날 것을 미리 추측하여 만들지 말고 간단하게 하는 것이 좀더 나은것 같다고 이야기 해주셨는데요.이부분에 대해서 현 영화의 예시로 본다면, 할인 정책이 만약 정액재 (금액 할인) 정책만 존재한다면정책 인터페이스를 만들 필요 없이 금액 정책 클래스만 만들어 활용하는게 더 좋다는 의미로 이해했습니다. 이렇게 말씀해주신 이유를 생각해보았는데, 추상화를 활용해 message 만 일치한다면 다양한 방식의 정책을 동적으로 활용할 수 있다는 장점이 있습니다. 다만 코드의 동작 분석에 있어 실제 runtime 단계에서 어떤 구현체가 사용되는지 확인 해야 하는 어려움이 있기 때문에 위와 같이 말씀 에 동의할 수 있는거 같습니다. 만약, 변경이 일어날 것을 추측이 아닌 실제로 일어나게 된다면 최소 몇개의 변경이 있어야 ( Ex ) 정책이 3개 ) 추상화를 하는게 좋다는 강사님만의 기준이 있을까요??
-
미해결김영한의 실전 데이터베이스 - 설계 1편, 현대적 데이터 모델링 완전 정복
실무에서 느린쿼리나 벡엔드 성능 테스트하는 방법이 궁금합니다.
75강 인덱스 설계 - 실습 관련강의 중에 느린 쿼리를 로그 분석을 하거나 성능 테스트를 통해서 실제 쿼리 패턴과 성능을 측정해서 특정 컬럼에 인덱스를 적용해야 한다고 하셨는데요.로그를 하나씩 확인하면서 각 쿼리별로 비교하기가 조금 불편하고 어려울 것 같습니다. 또한 몇가지 쿼리 케이스만으로 성능을 일반화하기도 쉽지 않을 것 같구요.실무에서 느린쿼리나 다양한 벡엔드 성능 테스트를 수행하는 별도의 모니터링 프로그램이나 방법론이 존재하는지 궁금합니다.또한 저희 실습에서 사용한 MySQL에서는 어떤 식으로 테스트를 수행하면 좋을지 알려주세요.
-
해결됨분산 데이터 모델링
분산 환경을 고민해야 하는 시점
안녕하세요!시스템 개발 및 설계 과정에서 '대규모 시스템', '분산 환경', '분산 데이터 모델링'과 같은 개념들을 본격적으로 고려하고 도입해야 하는 시점은 언제일까요?실무에서 경험해보지 못해서 '대규모' 라는 말이 막연해서 실무에서 어떤 것을 기준으로 고려하는지 혹은 지표 같은 것을 측정하는 방법이 있는지 궁금해서 질문 드립니다!