pile·
프론트엔드·channel-talk채널톡·

화상회의 참여자 화면 최적 배치 알고리즘 개발기

문제화상회의에서 1명~수십 명을 다양한 화면 비율(모바일~21:9)에서 비율 제약(4:3~16:9, 최소 160px)을 지키며 공간 낭비 없이 동적으로 배치해야 했다.
접근GroupNode(그리드 시뮬레이션) + FlexNode(재귀 공간 분할) 계층 구조로 모든 조합을 시뮬레이션. 횡·종 배치를 비교해 총 박스 면적 최대화 방향을 선택한다.
결과1명~수십 명·화면 공유·다양한 디바이스 등 모든 시나리오에서 자동 최적화. React useMemo와 ResizeObserver로 성능까지 확보했다.
channel-talk
채널톡 블로그
원문은 여기서 이어서 읽을 수 있어요
원문 읽기
읽음 (0)

이 글과 비슷한

  1. 프론트엔드·여기어때 (GC컴퍼니)여기어때 (GC컴퍼니)·

    항공 프론트엔드 구축기 (7/10): 창구를 하나만 두었습니다

    여기어때 항공 서비스 프론트엔드가 웹과 앱 웹뷰 두 환경에서 동일한 함수 호출로 동작하는 앱 브릿지 추상화 레이어를 설계한 과정을 다룬다. iOS·안드로이드 규약 차이와 "웹에 존재하지 않는 브릿지를 어떻게 호출하나"라는 문제를 단일 추상화 층으로 해결한 구현 사례다.

    요약 이어보기
    #react#typescript#webview+2