최근 객체 지향 UI 디자인과 관련된 책을 읽고 있는데 아주 흥미롭습니다. 예시로 도서관의 도서 장부 시스템을 들더군요.
- 태스크 지향의 예시: 처음 시스템에 들어갔을 때 도서 등록, 도서 삭제 이렇게 버튼이 뜨고 도서 등록을 누른 다음 책 제목 등 정보를 입력
- 객체 지향의 예시: 처음 시스템에 들어갔을 때 등록된 책 목록이 쭉 보임. +버튼을 누르면 등록이 가능하고 등록된 책 옆에 휴지통 버튼을 누르면 그 책이 삭제되고, 연필 버튼을 누르면 정보 수정이 가능함.
생각해보면 바이브코딩으로 만들어진 플랫폼은 태스크 지향으로 만들어지기 쉽습니다. 왜냐하면 저희가 AI에게 작업을 요구하는 프롬프트가 그럴 수 밖에 없기 때문이죠. 예컨대 '도서 등록 및 삭제가 가능한 도서 관리 시스템 만들어줘' 라고 입력하게 되잖아요. 원인을 덧붙이자면 책에서도 이야기 하지만 이미 저희가 쓰는 90% 가량의 플랫폼이 태스크 지향 UI 디자인으로 이루어져 있어 나쁜 사례가 훨씬 많다는 겁니다. AI는 확률 기계에 불과하니 이런 오답을 답습할 가능성이 농후하죠. 그래서 요즘은 제가 설령 태스크 지향으로 프롬프팅해도 알아서 객체 지향 UI를 구현할 수 있도록 시스템을 구축하는 방향으로 UI 관련 하네스 엔지니어링을 다듬어 보고 있습니다. 여러분들도 이러한 관점에서 만드신 플랫폼을 살펴보시기 바랍니다. 사용자 입장에서는 플랫폼에 들어갔을 때 해야할 일들만 잔뜩 나열되어 있으면 숨이 막히고 뭐하는 곳인지 파악하기 어렵습니다. 그냥 버튼을 눌러보며 가지고 놀고 싶을 뿐