• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    미해결

컴포넌트 와 클래스의 차이

21.08.23 06:03 작성 조회수 824

0

정확하게 이 강의 에 해당하는 질문인지는 모르겠으나,
인프런중 최고의 강의라고 생각되어 이곳에서 다시 도움을 받고자 합니다.
IT 업무를 하면서 클래스 다이어그램을 그려라 . 컴포넌트 다이어그램을 그려라
라는 이야기를 종종하는데
이 클래스와 컴포넌트 차이를 정확하게 구분 못하겠네요.. 도움 바랍니다.

답변 1

답변을 작성해보세요.

0

우일님 안녕하세요! 최고의 강의라니 칭찬 감사합니다 :)
굉장히 좋은 질문인것 같아요! 정의에 대한 의문을 품는 것은 어떤 분야든 필요한 것 같습니다.

일단 컴포넌트와 클래스는 유니티 뿐만 아니라 다양한 곳에서 사용되는 용어입니다.
먼저 유니티에 대해서만 설명을 드리자면, 컴포넌트는 유니티에서, 클래스는 C#에서 쓰이는 용어다! 라고 이해하시면 이해가 쉽습니다.

유니티 컴포넌트를 검색해보시면 컴포넌트는 'GameObject의 기능적인 조각'이라고 표현하고 있습니다. 즉, GameObject에 부착되어 어떠한 기능을 담당하는 요소라는 뜻이죠. 반면 클래스는 이러한 '컴포넌트를 C#으로 구현하는 틀'입니다. 우리가 C# 스크립트에 클래스를 정의하고, 이를 GameObject에 컴포넌트로써 부착한 것을 상상하시면 될 것 같아요! 

하지만 이것이 프로그래밍 전반에서 쓰이는 정확한 정의라고 할 순 없을 것 같습니다. 가령, React에서 컴포넌트는 어떤 UI 요소를 뜻하기도 하거든요. 따라서, 컴포넌트라는 의미 자체를 생각하실 때에는 '기능적인 혹은 시각적인 하나의 요소'로 생각해주시는게 좋을 것 같습니다. 이를 클래스로 구현할 수도 있고, 함수로 구현할 수도 있는것이죠! 클래스가 무엇인가에 대한 설명은 강의 내 클래스를 다시 참고하셔도 좋을것 같습니다 ㅎㅎ

조금 장황해졌는데 이해가 잘 되셨을지 모르겠네요 읽어보시고 궁금하신 점 있으시면 추가 질문 남겨주세요. 감사합니다 :)