2

같은 말을 쓰려면 무엇을 정해야 하나

Matter 개요와 판

학습 목표
  • Matter 가 정한 세 가지를 든다
  • 기능 목록을 정하는 것과 설명 방식을 정하는 것의 차이를 안다

규격이 기능을 정하는 것이 아니다

앞 코스에서 Matter 를 「여러 무선 위에서 같은 말을 쓰게 한 것」이라고 했습니다. 그러면 그 말은 무엇으로 이루어질까요.

흔한 오해는 규격이 기능 목록을 정한다고 보는 것입니다. 조명은 이런 걸 하고 도어록은 저런 걸 한다는 식이지요. 실제로 Matter 가 정한 것은 그보다 한 겹 아래입니다. 기기가 자기를 설명하는 방식을 정했습니다. 그래서 처음 보는 기기라도 「너는 무엇이고 무엇을 할 줄 아느냐」를 물어서 알아낼 수 있습니다.

Matter 가 정한 세 가지

세 가지를 정했다

첫째는 설명하는 방식입니다. 기기가 자기 구조와 능력을 정해진 틀로 내놓습니다. 이것이 데이터 모델이고 이 코스의 절반을 차지합니다.

둘째는 말을 주고받는 규칙입니다. 값을 읽고 쓰고 명령을 부르고 변화를 구독하는 방식이 정해져 있습니다. 이것을 상호작용 모델이라 부르고 모듈 2 에서 다룹니다.

셋째는 누가 그 기기를 쓸 수 있는가입니다. 한 기기를 여러 앱이 함께 쓰게 하려면 신원과 권한을 다루는 구조가 있어야 합니다. 이것이 모듈 4 의 Fabric 입니다.

이것이 만드는 쪽에 뜻하는 것

설명 방식을 정해 두면 기능이 늘어도 규격을 안 고쳐도 됩니다. 새 기기는 자기를 새 방식으로 설명하는 것이 아니라 같은 방식으로 다른 내용을 말합니다.

뒤집어 말하면 만드는 쪽의 일은 이렇게 바뀝니다. 「어떤 기능을 넣을까」가 아니라 **「우리 기기를 어떤 엔드포인트와 클러스터 조합으로 표현할까」**를 정하는 일이 됩니다. 이 문장이 이 코스 전체를 요약합니다.

규격이 설명 방식을 정하면 개발은 기능 구현이 아니라 모델링이 됩니다.

용어