arch-spatula / arch-spatula.github.io

Arch-Spatula의 레시피
https://arch-spatula.github.io/
3 stars 0 forks source link

[Draft] 도메인 지식 문서 페이지 추가하기 #278

Closed arch-spatula closed 4 months ago

arch-spatula commented 4 months ago

글쓰기 주제

draft/domain

참고할 자료

arch-spatula commented 4 months ago

산업 공학은 무엇인가요?

경영학의 생산관리를 공학적으로 접근하고 연구한다고 보면 됩니다.

수학이나 통계학에 의존한다고 합니다. 상상공학(Imaginary Engineering)이라고 비판도 많이 받습니다. 대부분 근거가 빈약한 사회과학연구를 활용한다는 점에서 그렇습니다.

이런 도메인은 ERP를 그냥 거창하게 연구한다고 봐도 괜찮을 것 같습니다.

ERP라고 하는데 운송 최적화는 아닙니다. 고객 주문, 설비 가동률, 작업처리시간, 납기일 등 생산 현장 내에서 최적화입니다.

arch-spatula commented 4 months ago

MRP(자재 소요량 계획)

PSI

arch-spatula commented 4 months ago

도메인을 학습하는 방법은 무엇인가?

ERD 부터 그려보기 바랍니다.

김영한 선생님이 추천해주신 방법입니다. 그외의 방법은 아직 잘 모릅니다.

용어는 정리해보는데 회사 밖에서 검색해봤을 때 있으면 정리하고 보여주고 없으면 회사 고유한 용어일 수 있어서 안 보여줍니다.

용어를 정리하면 어피니티 다이어그램으로 정리하기 바랍니다.

arch-spatula commented 4 months ago

도메인지식을 코드에 추가하기 전에 다양한 선행 요건들이 있습니다.

먼저 객체지향 프로그래밍에 대한 지식이 풍부해야 합니다.

다음은 디자인 패턴에 대한 지식이 풍부해야 합니다.

그 후에 도메인 주도 개발에 대한 지식을 갖고 설계 실력을 향상 시켜야 합니다.

유저가 접하는 부분마다 문서화를 잘해야 합니다. UX는 개발자도 잘 알아야 합니다.

산업 도메인지식 뿐만 아니라 기술 도메인 지식도 모델링을 잘해야 합니다.

프론트엔드라고 거리가 먼 이야기라고 생각하고 넘기면 곤란합니다. 어느 순간 hook이 정착했습니다. 하지만 hook을 조금만 생각해보면 비즈니스 로직을 캡슐화한다는 관점, getter와 setter를 호출자에게 제공한다는 관점, 호출마다 클로저라 독립적인 인스턴스를 생성한다는 점을 생각하면 hook은 사실 클래스입니다. hook을 클래스라는 관점을 갖고 다시 코드베이스를 보기 시작하면 객체지향적 설계를 시도해볼 여지가 많습니다.

arch-spatula commented 4 months ago

이론적으로만 좋다고 하고 본인이 적용할 때 잘 적용 못하는 문제도 있습니다. 도메인지식과 객체지향 지식 모두 어중간할 때 발생하는 문제입니다.