TIL

[TIL] 내일배움캠프_Unity 최종 프로젝트 3주차: 추가 기능 구현2, 기술 면접 대비 18일차

Hwone 2023. 11. 10. 23:28

팀 회의 내용

- 프로젝트 회고 

- 중간 발표 내용 정리 

- 진행상황 점검 

 

구현한 내용 

- 판매 결산 판매 금액, 소지금 연결

- 페기된 재료 데이터 연결 

- 영업 결과에 따라 달라지는 데이터 설정

- 영업 종료 후 Scene 이동 

- UI 디자인 수정 

 

판매 결산도 그닥 어려운 내용은 없었다 사실 다른 팀원분이 하시던걸 인수인계 받아서 진행하게 되었고 추가로 더 구현해야할 내용이 그렇게 많지 않아서 금방 끝내고 다른 추가기능을 구현할 수 있을 것 같다 사실 손님쪽이랑 연계되는 부분이 있어서 그쪽에서 데이터를 끌어오면 되는거긴 한데 이게 좋은 점은 편하지만 분리를 해야할 수도 있다고 생각이 들었다 

게임중 생긴 데이터를 받아와서 사용하는 건 알겠지만 가공까지 해서 보내준다는 것은 너무 많은 역할을 가지고 있다고 생각이 들기도 한다 이 부분은 좀 더 생각해볼 것 

 

기술 면접 대비 18일차  

Q:  상속이란 무엇인지 프로젝트 내에 저용해 본 부분과 함께 예를 들어 설명해주세요 

 

A: 기존 클래스의 데이터 멤버와 메서드를 새로운 클래스에서 그대로 사용하거나 재정의할 수 있게 해주는 기능으로 이를 통해 코드의 재사용성과 서로 관련된 클래스를 계층 관계로 표현함으로써 클래스의 구조적인 관계 파악을 쉽게 해줍니다 또한 클래스의 확장을 위해서 사용하기도 하는데요 저는 Action 게임 프로젝트를 했을 때 몬스터를 구현하는 과정에서 모든 몬스터가 공통적으로 가져야 하는 기능들을 기본 몬스터 클래스에서 정의하고, 각각의 몬스터는 이 클래스를 상속받아 각각의 몬스터 종류에 맞게 스킬, 새로운 상태 등 기능을 추가하거나 재정의 하였습니다

 

Q: 오버로딩과 오버라이딩의 차이점을 설명해주세요 

 

A: 오버로딩은 동일한 메서드가 매개변수의 차이의 따라 다르게 동작하게 하는 것이고, 오버라이딩은 상위 클래스에게 상속 받은 동일한 메서드를 재정의 하는 것으로 객체지향의 다형성을 실현하는 중요한 요소 중 하나입니다저는 Action 게임 프로젝트를 할 때 몬스터를 상속을 사용해서 구현하였는데 각 몬스터는 기본적으로 Attack 메서드를 부모에게서 상속 받아서 각각의 몬스터가 다른 공격을 할 수 있게 재정의(오버라이드) 해주었습니다 이렇게 동일한 이름의 메서드를 호출하더라도 다른 동작을 하게 되어 유연하고 다양한 동작을 구현하였습니다