컴포넌트란? 프로퍼티 설정이란? 레이어 층이란? 컨스트레인트란?
개인과제에 대한 피드백이 오기전에 내가 헷갈려하는 부분에 대해 최소한의 뼈대를 잡을 필요는 있다. 나의 뼈대를 잘 자리잡아보자.
① 컴포넌트화 시키는 이유
: 반복될 작업에 대해 기능을 설정하기 위한 것. 내가 생각했을 때 이건 굳이 반복되지 않을 것 같다 싶으면, 굳이 컴포넌트 화 시키지 않아도 된다. 하나의 상품명과 가격을 적어놓은 컨테이너 컴포넌트가 있다고 하자. 그 안에 아이콘도 들어갈 수 있고, 상품명과 제조사명을 적는 텍스트 컴포넌트도 들어갈 수 있다. 그리고 당연히 상품의 사진을 담는 프레임 컴포넌트도 있을 것.
내가 생각했을 때, 이 컴포넌트는 반복될 것 같다 싶으면 그냥 마스터 컴포넌트로 만들자. 그리고 그냥 내가 그때그때 배리언츠 설정해서 옵션을 추가하자. 결국 내가 이걸 컴포넌트화 시키고 배리언츠 등 새로운 프로퍼티 기능을 추가하면 충돌이 발생하지 않을까가 걱정되다보니 컴포넌트화하는 범주도 더 고민되는 것 같다. 실제 프로토타입 활용시, 마스터에 적용된 기능들 때문에 인스턴스를 다른데에 활용할 때에 충돌이 발생할 경우, 인스턴스 컴포넌트 클릭해서 기능 삭제하기 하면 된다. 즉, 충돌이 발생하고 복잡한데 계속 마스터 컴포넌트, 배리언츠를 활용해야 한다는 강박은 버리라는 얘기. 어디까지나 나와 회사의 업무 효율을 위한 수단일 뿐이다. 내가 익숙치않고 어렵다면 수단에 매몰되지 말자.
*컴포넌트란?
: 그냥 우리가 알고 있는 파운데이션들(폰트, 컬러, 곡률 등)이 모여서 생성되는 하나의 기초단위의 구성물부터 컴포넌트라고 부른다고 생각하면 되지 싶다. 그런 기초단위의 컴포넌트가 여러개 모여서 만들어지는 또 하나의 컴포넌트는 컨테이너 컴포넌트라고 부르고, 또 그 컨테이너 컴포넌트가 모여서 만들어지는 컴포넌트는 또 하나의 대형 컨테이너 컴포넌트 쯤으로 생각하면 되지 않을까?
② 레이어 층
: 나중에 작업한게 가장 위쪽에 있다고 일단 생각하자. 왼쪽 레이어 패널에서도 가장 상단에 있는게 가장 최근에 작업한 것. 층으로 생각한다면 맨 아래에 있는게 가장 아래에 쌓여있는 레이어 층이라고 생각해도 됨.
③ 컨스트레인트
: 어떤 프레임이나 요소를 클릭하고 컨스트레인트를 조정할 때는, 내가 선택한 지금 그 요소와 그 요소를 품고 있는 상위 프레임간의 관계를 조정/제한해 주는 일임. (내가 선택한 요소 안의 요소와의 관계를 설정해주는 것이 아님)