부트캠프 TIL

22.11.11~12 버거퀸 만들기

sweet-po 2022. 11. 12. 23:53

꼴랑 요만한 주문하기 프로그램인데 왤케 복잡하게 느껴지냐ㅠㅠㅠ

내가 직접 고안해서 만든게 아니라서 무슨 서비스인지 체화가 안되서 그런가

어차피 회사 들어가면 내가 만든 코드가 아닐텐데 그 큰 규모를 어떻게 파악하지

그때의 조금 더 나은 나는 파악할 수 있길 바라며.. 오늘도 버거퀸 익숙해지기..

 

일단 궁금한거..

왜 버거셋만 생성자를 통해 세트 구성하고 Setter 안만드나 다른애들은 생성자로 셋 못하나?

-각 햄버거 사이드 드링크에서 이미 set 한걸 가져오는거라 그런가  그런거.. 같아..

왜 버거셋에서는 케첩과 스트로우를 체크 안하나?

-composeSet할때 구성하네

 

상품 저장소에 상품 정보 상수로 만들어줘야 한다는데 뭘 상수로 만든거지 예제에서? 뭐 final 한것도 아니고

왜 cart에서 items에 0크기의 프러덕트 배열을 할당하나? - 나중에 한개씩 늘려서 복사함

private Product[] items = new Product[0];

 

Cart 클래스에서 왜 productRepository 는 생성자를 만들어서 초기화하는지 이것만 Cart 생성할때 필수로 받아와야 하는 이유가 뭔데? 그냥 말그대로 이게 필수로 필요한 리스트라서..? 안 와닿네

필드 선언 하면서 변수에 바로 인스턴스 할당해줄 수 있는데 왜 굳이 생성자를 만들어서 초기화를 시켜줄까? 이것도 객체 지향 위해 자율성을 높이기 위함인가? 외부에서 들여오게 하려고 그러는건가?

 

왜 중복 피하기 위해 객체 새로 만드는 newProduct는 햄버거구성을 product에 할당하는 if 문 뒤에 쓰는가? chooseOption전에 쓰여야 하는거 아닌가- 오 아니다 애초에 처음 들어갈때부터 new 인스턴스라 참조값 겹치는거 없고 넣기 전에 new 해주는게 맞지! 다고르고!

 

복제된 객체 복사 생성자 필요