인프런 커뮤니티 질문&답변

강원빈님의 프로필 이미지
강원빈

작성한 질문수

[2024 최신] [코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

HomeScreen 구현하기

위젯과 클래스

작성

·

182

0

Boxdecoration()은 위젯이라고 볼 수 없는건가요? 볼 수 있는거 아닌가요?제가 이해하기로는 위젯과 위젯이 아닌 클래스의 차이로는위젯은 컨스트럭터 자체로 역할을 할 수 있고 위젯이 아닌 클래스는 컨스트럭터 자로 역할을 할 수는 없고, 그 컨스트럭터로 인스턴스를 만들고 그 인스턴스로 메서드나 멤버변수 이용라는걸로 이해하고 있습니다. 위 내용에 따르면 Boxdecoration()도 위젯 아닌가요?위젯과 위젯이 아닌 클래스를 나누는 명확한 기준이 있나오?

답변 1

0

코드팩토리님의 프로필 이미지
코드팩토리
지식공유자

안녕하세요!

컨스트럭터자로 역할을 할 수 없다는게 무슨 말씀이신지 잘 모르겠습니다.

말씀 하신대로 위젯은 클래스기 때문에 일반 클래스와 같이 컨스트럭터가 존재하고 사용이 가능합니다.

위젯은 단순히 Widget 클래스를 상속받은 클래스를 이야기 합니다.

이걸 조금 더 단순하게 개발자스럽지 않은 표현을 사용한다면 "화면에 보이는 컴포넌트"입니다.

BoxDecoration이 화면에 보이는게 아닙니다. Container가 화면에 보이는거고 BoxDecoration은 Container의 디자인을 다루는 역할을 합니다. (대체적으로 "화면에 보이는" 클래스가 위젯을 상속받는게 맞지만 어쨋거나 개발자라면 이건 좋은 표현이 아닙니다. 상속 관계로 이해하시는게 맞습니다.)

감사합니다!

강원빈님의 프로필 이미지
강원빈

작성한 질문수

질문하기