Shiny 프로덕션 2025: 워크숍

R-Blogger · 블로그·해설 · 2025-05-22

R-Blogger블로그·해설한국어2025-05-22

Shiny 프로덕션 2025: 워크숍

Shiny in Production 2025: 워크숍Shiny in Production가 이번 10월에 영국 뉴캐슬에 있는 The Catalyst에서 다시 열립니다! 워크숍과 하루 종일 진행되는 강연이 준비되어 있으며, 연사 명단은 곧 발표됩니다. 아래에서 워크숍 상세 정보를 확인하고, 컨퍼런스 웹사이트에서 지금 바로 신청하세요. Shiny를 처음 사용하든 여러 해 동안 활용하든, Shiny와 기타 웹 기반 개발 도구를 직접 체험할 수 있는 좋은 기회가 될 것입니다.컨퍼런스 첫째 날(10월 8일 수요일)은 13:30–17:00에 네 개의 병행 워크숍이 진행되며, 저녁에는 네트워킹과 오늘 배운 내용을 정리하는 리셉션이 제공됩니다. 지금 등록하세요.워크숍 1: {shiny}의 End‑to‑End 테스트와 Playwright, {golem} - Colin Fay개발 단계에서 눈부신 Shiny 애플리케이션이라도, 프로덕션에서 사용자 흐름이 깨지거나 데이터 파이프라인이 변동하거나 브라우저가 예기치 않게 동작하면 금세 무너지게 됩니다. 자동화된 End‑to‑End(E2E) 테스트는 이러한 위험을 방지하는 안전망이며, Playwright는 Chrome, Firefox, WebKit 전반에 걸쳐 테스트를 수행하는 표준 도구로 급부상하고 있습니다. 이번 실습 워크숍에서는 Playwright 테스트를 작성·실행·관리하는 워크플로를 단계별로 살펴보겠습니다.다루는 내용:E2E 테스트가 이미 유닛 테스트가 있더라도 중요한 이유Playwright를 {golem} 프로젝트에 {pw}스크립팅으로 설치·구성하기핵심 사용자 흐름—클릭, 입력 등—작성스냅샷과 어설션을 이용한 데이터·UI 상태 검증CI 파이프라인(GitHub Actions, GitLab CI, Posit Connect)에서 헤드리스 테스트 실행Shiny 전용 특수 상황 디버깅실패한 테스트 처리필요 사항: 노트북과 직접 사용 중인 Shiny 앱 하나.워크숍을 마치면 Playwright테스트 환경을 바로 프로젝트에 적용할 수 있으며, 금요일에 자신 있게 배포할 수 있는 자신감을 얻게 됩니다.학습 목표:Shiny 배포 파이프라인에서 End‑to‑End 테스트의 역할을 이해한다.R에서 Playwright를 설치하고 테스트 스케폴딩을 할 수 있다.Shiny 앱 내 사용자 흐름을 포착하는 표현력 있는 Playwright 스크립트를 작성한다.브라우저별 로컬 및 CI 환경에서 병렬 테스트를 실행한다.강연자 소개: Colin Fay는 ThinkR의 수석 개발자로, 프랑스에 기반을 둔 R 전문 에이전시에서 기업이 R의 잠재력을 최대한 활용하도록 도와줍니다. 웹 애플리케이션(프론트엔드·백엔드), 프로덕션 환경의 R, 확장 가능한 소프트웨어 개발 등에 전문성을 가지고 있습니다. 또한 오픈소스 활동가이자 국제 강연자이며, 장거리 러너이기도 합니다. 그는 {golem} 프레임워크와 Building Production‑Grade Shiny Apps의 주 저자입니다.워크숍 2: 비동기 Shiny - Dr. Russ Hyde예를 들어 “Shiny in Production”에 등록하려고 할 때, 다른 사용자가 등록 절차를 진행 중이라면 “Buy tickets on EventBrite” 버튼을 클릭할 수 없게 된 상황을 생각해 보세요. 현대 웹 애플리케이션에서는 이런 “블로킹”이 일어나서는 안 되지만, Shiny에서는 흔히 발생합니다. 이는 단일 R 프로세스가 여러 사용자의 서버‑사이드 처리를 동시에 담당하기 때문에, 하나의 장기 실행 작업이 다른 모든 작업을 방해하게 됩니다.Shiny의 비동기 프로그래밍 지원을 활용하면 이러한 문제를 해소할 수 있습니다. 비동기 방식에서는 작업을 시작하고 결과를 기다리지 않으며, 이를 위해서는 프로그래머의 사고 전환이 필요합니다. 이 워크숍에서는 비동기 프로그래밍의 기본 개념과 실전 적용 방법을 다룹니다.학습 목표:Shiny 앱에서 세션 내부와 세션 간 블로킹이 어떻게 발생하는지 이해한다.비동기 연산의 기본 원리를 습득한다.future/promise를 사용해 세션 간 블로킹을 해소한다.ExtendedTask로 현대적인 방식의 블로킹을 해결한다.강연자 소개: Russ는 분자생물학 및 바이오인포매틱스 분야에서 경력을 쌓았으며, 분자생리학 박사와 수학 석사를 보유하고 있습니다. 그는 여러 CRAN 패키지의 저자이며, R‑for‑Data‑Science 커뮤니티의 멘토로 활동하고 있습니다.워크숍 3: Shiny에서 지도 활용 - Pedro Silva지도는 Shiny 애플리케이션에서 데이터를 시각적으로 강조하는 강력한 도구입니다. {leaflet} 패키지를 이용하면 마커, 아이콘, 도형 등을 추가해 특정 위치를 강조하거나, 데이터 값에 따라 지도 영역의 색상을 변경할 수 있습니다. 사용자는 관심 영역으로 확대해볼 수 있습니다.이번 워크숍에서는 Shiny 앱에 지리 데이터를 표시하는 방법을 배우며, 실제 예시를 통해 {leaflet}을 활용하는 실습을 진행합니다.※ 워크숍 4와 이후 일정은 추후 공지됩니다.관심 있는 분은 컨퍼런스 웹사이트에서 지금 바로 등록해 주시기 바랍니다.
원문 URL
전체 글은 원문 페이지에서 이어서 읽을 수 있습니다.
원문에서 전체 글 읽기
작성자
R-Blogger
출처
R-Blogger
플랫폼
R-Blogger
분류
블로그·해설
언어
한국어
발행일
2025-05-22