# Phoenix LiveView 1.0.0 출시

> Clean Markdown view of GeekNews topic #18099. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=18099](https://news.hada.io/topic?id=18099)
- GeekNews Markdown: [https://news.hada.io/topic/18099.md](https://news.hada.io/topic/18099.md)
- Type: GN+
- Author: [neo](https://news.hada.io/@neo)
- Published: 2024-12-04T12:34:35+09:00
- Updated: 2024-12-04T12:34:35+09:00
- Original source: [phoenixframework.org](https://www.phoenixframework.org/blog/phoenix-liveview-1.0-released?release=1.0)
- Points: 2
- Comments: 1

## Topic Body

- 첫 커밋 후 6년만에 1.0 마일스톤 달성  
- **LiveView의 시작과 이유**  
  - LiveView는 서버 렌더링 애플리케이션을 JavaScript 없이 만들기 위해 시작됨.  
  - 실시간 폼 검증, 쇼핑 카트 수량 업데이트, 실시간 스트리밍 업데이트 등 복잡한 문제를 간단하게 해결할 수 있음.  
  - Elixir와 Phoenix는 이러한 접근 방식에 적합함.  
- **실시간 기반의 장점**  
  - 모든 사용자와 UI에 실시간 양방향 기반을 제공하여 개발자가 기능 구현에 집중할 수 있게 함.  
  - Elixir를 통해 다른 플랫폼에서는 불가능한 기능을 구현할 수 있음.  
- **LiveView의 초기 구현**  
  - React와 유사하게 상태 변경 시 자동으로 UI가 업데이트되는 서버 기반 UI를 구현.  
  - Phoenix Channels를 사용하여 수백만 개의 연결을 지원할 수 있음.  
- **프로그래밍 모델 최적화**  
  - LiveView의 차별화된 엔진은 템플릿의 동적 부분만 실행하고 최소한의 데이터만 전송함.  
  - 정적 부분과 동적 부분을 분리하여 효율적인 업데이트를 가능하게 함.  
- **최고 수준의 지연 시간**  
  - LiveView는 작은 페이로드와 상태 유지 연결을 통해 최적의 성능을 제공함.  
  - 서버 메모리 사용량은 적지만, 수십만 개의 동시 연결을 지원할 수 있음.  
- **HEEx를 통한 재사용 가능한 컴포넌트**  
  - HTML 검증 및 컴파일 타임 속성 검사를 제공하는 선언적 컴포넌트 시스템을 도입함.  
  - 컴포넌트 호출 시 잘못된 속성 사용에 대해 컴파일 타임 경고를 제공함.  
- **HEEx 문법 간소화**  
  - 태그 본문 내에서 값을 직접 삽입할 수 있는 간소화된 문법을 도입함.  
- **인터랙티브 업로드**  
  - 파일 업로드를 위한 단일 추상화를 제공하여 클라우드 및 서버 직접 업로드를 지원함.  
  - 업로드 진행 상황을 반영하거나 고급 파일 작업을 쉽게 구현할 수 있음.  
- **스트림과 비동기 처리**  
  - 대량의 컬렉션을 효율적으로 처리하기 위한 스트림 프리미티브를 도입함.  
  - 비동기 작업을 쉽게 처리하고 결과를 렌더링할 수 있는 기능을 제공함.  
- **LiveView가 메인스트림으로**  
  - LiveView와 .NET Blazor는 비슷한 시기에 시작되어 이 프로그래밍 모델의 채택을 이끌었음.  
  - 다른 언어 커뮤니티에서도 이 모델을 다양한 방식으로 채택하고 있음.  
- **향후 계획**  
  - JavaScript 훅 통합, 웹 컴포넌트 통합 강화, 내비게이션 가드 지원 등을 계획 중임.

## Comments



### Comment 32027

- Author: neo
- Created: 2024-12-04T12:34:35+09:00
- Points: 1

###### [Hacker News 의견](https://news.ycombinator.com/item?id=42312301) 
- Phoenix의 창시자가 Elixir/Phoenix/LiveView에 대한 질문을 받으며 새로운 설치 프로그램을 소개함
  - 새로운 설치 프로그램은 Elixir와 Phoenix 프로젝트를 단일 명령어로 설치할 수 있게 함
  - macOS/Linux와 Windows에 대한 설치 명령어 제공
  - 공식 Elixir 설치 프로그램을 확장한 것임
  - 비 |sh 설치 가이드도 제공됨

- LiveView는 Rails의 한계를 극복한 기능으로, 초기에는 "채널" 기능으로 시작되었음
  - LiveView는 정적 뷰와의 통합이 어려웠으나, 시간이 지나면서 코드 공유가 가능해짐
  - Phoenix 1.7은 새로운 레이아웃과 철학을 도입하여 웹 앱 개발에 혁신적임

- LiveView를 사용하여 스타트업을 구축했으나 실패했음
  - React와의 통합이 원활했으며, 복잡한 라이브러리와의 연결도 문제없었음
  - React에서 해결했던 문제들을 LiveView에서 처음부터 해결해야 했음

- LiveView를 사용한 여러 생산 앱을 구축했으며, WebSocket 연결이 필요하지만 여러 장점이 있음
  - 코드 생성이 생산성을 높이고, Elixir를 사용하여 프론트엔드를 렌더링하는 것이 효율적임
  - WebSocket을 통해 실시간 기능 추가가 용이함
  - 비즈니스 로직을 Contexts에 유지하여 API 제공이 용이함

- LiveView를 사용하여 웹 개발에 대한 열정을 되찾았으며, 생산성이 매우 높음
  - LiveView 학습을 위한 강좌를 제공하며, 더 많은 사람들이 이 프레임워크를 익히길 바람

- 전형적인 웹 앱에서 프론트와 백엔드 개발자 간의 조정 비용이 가장 비쌈
  - LiveView는 이러한 문제를 무시하고 풀스택 개발을 가능하게 함
  - 적은 개발자로 더 많은 기능을 제공할 수 있음

- LiveView를 2019년부터 사용해왔으며, 개발이 즐거웠음
  - ElixirConf EU에서 LiveView가 처음 소개되었음

- LiveView 1.0 릴리스에 대한 의견을 블로그에 작성함

- LiveView와 JS 기반 기술의 채택에 대한 트레이드오프에 대한 의견을 듣고 싶음
  - JS의 다양한 라이브러리와 AI 기술의 채택 가능성에 대한 논의 필요

- LiveView는 매우 생산적인 개발 경험을 제공하지만, 불안정한 연결에서의 문제를 해결하기를 바람
  - 오프라인 지원은 어렵지만, 불안정한 연결에 대한 지원이 필요함
