본문 바로가기

외주개발3

SwiftUI 알림 UX (Rive 애니메이션, 상태머신, 묶음규칙) 솔직히 고백하자면, 저는 알림 화면을 단순 리스트로 쌓아두는 것이 당연하다고 생각했습니다. 그러다 커뮤니티 앱 외주에서 알림 진입 후 행동 전환율이 18%에 머무는 것을 보고 뭔가 잘못됐다는 걸 깨달았습니다. 그 과정에서 배운 Rive 애니메이션 연동과 알림 묶음 규칙 설계를 지금부터 풀어보겠습니다.Rive 애니메이션과 SwiftUI 상태머신 연결하기처음 Rive 파일을 SwiftUI 프로젝트에 붙였을 때 솔직히 당황했습니다. 캐릭터가 그냥 멈춰 있는데, 이게 맞는 건지 틀린 건지조차 몰랐습니다. 알고 보니 상태머신(State Machine)을 따로 구동해줘야 했습니다. 여기서 상태머신이란 애니메이션의 여러 동작을 조건과 입력값에 따라 전환시키는 논리 구조입니다. 단순히 타임라인을 재생하는 것과 달리, .. 2026. 6. 6.
자동완성 드롭다운 (바닐라JS, 페이지네이션, UX패턴) 운영자 4명이 동시에 항의 메일을 보내온 날, 저는 제가 얼마나 틀렸는지를 실감했습니다. 무한 스크롤을 구현하고 뿌듯해하던 게 불과 사흘 전이었는데, 그날 이후로 저는 '편한 UI'와 '쓰기 좋은 UI'가 다르다는 걸 몸으로 배웠습니다. 이 글은 그 경험에서 출발합니다.바닐라JS로 자동완성 드롭다운 만들기자동완성 기능은 구현 자체는 단순합니다. 프레임워크 없이 순수 바닐라 JavaScript만으로도 충분히 만들 수 있습니다. 제가 직접 써봤는데, 핵심은 이벤트 리스너(Event Listener)를 input 요소에 거는 것입니다. 여기서 이벤트 리스너란 특정 동작이 발생했을 때 실행할 함수를 등록해두는 메커니즘으로, 사용자가 키를 누를 때마다 실시간으로 반응하게 만드는 장치입니다.구현 흐름은 이렇습니다... 2026. 6. 3.
VUI 설계 실전 (응답 지연, 대화 흐름, 폴백 처리) 스마트 스피커에 말을 걸었는데 아무 반응이 없어서 "듣고 있어?" 하고 다시 불러본 적 있으신가요? 저도 똑같은 상황을 외주 납품 직전에 겪었습니다. 헬스케어 VUI(Voice User Interface, 음성 사용자 인터페이스) 프로젝트였는데, 처음 설계에서 응답 지연이 평균 1.4초였습니다. 사용자가 '듣고 있느냐'고 다시 부르는 비율이 무려 28%에 달했고, 그때 처음으로 밀리초 단위가 사용자 경험을 얼마나 바꾸는지 실감했습니다.응답 지연 1.4초가 만든 참사솔직히 이건 예상 밖이었습니다. 1.4초면 짧다고 생각했는데, 음성 UI에서는 완전히 다른 이야기였습니다. 화면이 없으면 사람은 침묵을 오류로 해석합니다. 눈으로 로딩 스피너를 볼 수 없으니까요.직접 겪어보니 800ms가 하나의 임계값처럼 작동.. 2026. 5. 16.

소개 및 문의 · 개인정보처리방침 · 면책조항

© 2026 브레인스토밍 연구