[ 一日30分 인생승리의 학습법] GN⁺: WASM by Example - 예제로 배우는 WASM (wasmbyexample.dev)

14P by neo 15시간전 | favorite | 댓글 1개

웹어셈블리(WebAssembly, Wasm) 소개

  • 웹어셈블리(Wasm)는 웹에서 실행되는 범용 로우레벨 바이트코드
  • Rust, AssemblyScript (Typescript와 유사), Emscripten (C/C++), TinyGo (Go) 등 다양한 언어의 컴파일 대상이 됨
  • 현재 모든 주요 브라우저에 제공되며 서버에서 실행하거나 WASI를 사용하여 시스템과 인터페이스하기 위한 런타임을 가지고 있음
  • Wasm은 소형 이진 형식을 제공하며, JavaScript 및 기타 호스트 언어와 함께 실행될 수 있는 예측 가능한 성능과 이식성을 갖춤

'Wasm By Example'이란?

  • 'Wasm By Example'은 코드 스니펫과 주석이 달린 WebAssembly 예제 프로그램을 사용하여 WebAssembly에 대한 간결하고 실용적인 소개를 제공
  • WebAssembly의 기본 개념을 설명하는 예제들과 이를 활용한 보다 큰 애플리케이션의 공통 기능 구축 방법을 보여주는 예제들을 포함

웹어셈블리(WebAssembly, Wasm)의 주요 개념 예제

  • WebAssembly의 주요 기본 개념을 표현하는 예제들을 제공함.
  • 이러한 예제들은 WebAssembly로 프로젝트를 구축하는 가장 편리하거나 생산적인 방법은 아닐 수 있으나, 학습이나 애플리케이션의 단순하거나 저수준 부분 개발에 적합함.
    • Hello World
    • Exports
    • WebAssembly Linear Memory
    • Importing Javascript Functions Into WebAssembly

개념을 적용한 예제

  • 개념적 예제를 확장하여 이러한 단순 예제들이 어떻게 더 큰 애플리케이션의 일반적인 기능을 구축하는 데 사용될 수 있는지 보여줌
    • Reading and Writing Graphics
    • Reading and Writing Audio

에코시스템 도구 및 언어 기능 예제

  • 선택한 프로그래밍 언어의 도구, 라이브러리, 기능을 강조하는 예제들을 제공
    • Passing High Level Data Types with wasm-bindgen
  • 이러한 생태계 구성 요소는 강력한 애플리케이션을 구축하는 데 크게 도움이 될 수 있음.

웹 브라우저 외부의 웹어셈블리(WebAssembly) 예제

  • WebAssembly System Interface(WASI), 독립 실행형 WebAssembly 런타임, WASI를 사용하는 애플리케이션을 위한 도구 및 클라우드 컴퓨팅, 사물인터넷(IoT) 장치와 같은 작업을 위한 사용 사례를 강조하는 예제들을 제공
  • WebAssembly는 브라우저 웹에 적합한 주요 기능을 가지고 있으며, 이러한 기능들은 브라우저 외부에서도 인기 있는 선택이 됨
    • WASI Introduction
    • WASI Hello World

GN⁺의 의견

이 글에서 가장 중요한 점은 WebAssembly(Wasm)가 다양한 프로그래밍 언어를 위한 컴파일 대상이며, 웹 브라우저뿐만 아니라 서버 및 다양한 시스템에서도 사용될 수 있는 범용성을 가지고 있다는 것임. 'Wasm By Example'은 초급 소프트웨어 엔지니어들이 WebAssembly를 쉽게 이해하고 실제로 적용해볼 수 있는 실용적인 예제들을 제공함으로써, 이 기술이 흥미롭고 매력적인 이유를 잘 보여줌. WebAssembly의 이식성과 성능은 현대 웹 개발에 있어 중요한 요소이며, 이 글은 그러한 기술을 배우고자 하는 사람들에게 유익한 정보를 제공함.

 
Hacker News 의견
  • WASM을 사용하여 다양한 언어로 작성된 라이브러리를 만들고, 이를 다른 언어에서 가져와 사용하는 것이 흥미로운 사례임.
  • 모든 주요 브라우저에서 지원되는 WASM 명령 세트는 매력적이지만, 간단한 'hello_world' 데모조차도 여러 메가바이트의 페이지를 생성하는 것에 대해 의문을 제기함.
  • WASM의 구조와 사용에 대한 개요와 설명이 예제와 함께 제공되어야 한다는 의견이 있음. 또한, Cloudflare 워커가 WASM을 엣지 서버에서 실행할 수 있고, Swift 커뮤니티도 WASM 컴파일을 지원한다는 점을 언급함.
  • 웹어셈블리(WebAssembly)의 S-expr 구문에 대한 이해를 돕기 위해 해당 카테고리를 추가하는 것이 유용할 것이라는 제안이 있음.
  • VSCode에서 WASM 디버깅을 작동시키는 방법에 대한 가이드를 작성한 사람이 있으며, 이는 새로운 WASM DWARF 디버깅 확장 기능을 사용함.
  • 직접 컴파일러를 만들면서 WASM을 배우는 책 'WASM from the Ground Up'이 진행 중이며, 현재까지 유익한 정보를 제공한다고 함.
  • WASM이 언젠가 브라우저에서 자바스크립트를 대체할지 궁금해하는 의견이 있음.
  • Unity 데모가 WASM과 WebGPU를 사용하여 실행되는 예시가 해커뉴스에 게시됨.
  • WASM 어셈블러 컴파일러에 대한 정보를 찾는 데 어려움을 겪고 있는 사람이 있음.
  • WASM을 사용하여 비자바스크립트 언어로 작성된 간단한 'add' 예제가 런타임에 매개변수를 받을 수 있는 상호작용적인 기능을 가지고 있음에 놀라움을 표현함.
  •  

[출처] https://news.hada.io/topic?id=11891

경축! 아무것도 안하여 에스천사게임즈가 새로운 모습으로 재오픈 하였습니다.
어린이용이며, 설치가 필요없는 브라우저 게임입니다.
https://s1004games.com

 

 

본 웹사이트는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
번호 제목 글쓴이 날짜 조회 수
1178 [ 一日30分 인생승리의 학습법] A Tutorial and Elementary Trajectory Model for the Differential Steering System of Robot Wheel Actuators : 로봇 휠 액츄에이터의 차동 조향 시스템에 대한 튜토리얼 및 기본 궤적 모델 file 졸리운_곰 2023.11.29 103
1177 [ 一日30分 인생승리의 학습법] Streamline Your MLOps Journey with CodeProject.AI Server : CodeProject.AI 서버로 MLOps 여정을 간소화하세요 file 졸리운_곰 2023.11.25 95
1176 [ 一日30分 인생승리의 학습법] Comparing Self-Hosted AI Servers: A Guide for Developers / : 자체 호스팅 AI 서버 비교: 개발자를 위한 가이드 file 졸리운_곰 2023.11.25 102
1175 [ 一日30分 인생승리의 학습법] Self-Hosted Artificial Intelligence: Keeping Control of Your Data : 자체 호스팅 인공 지능: 데이터 제어 유지 file 졸리운_곰 2023.11.25 94
1174 [ 一日30分 인생승리의 학습법] AI_머신러닝 기초 정리 file 졸리운_곰 2023.11.24 114
1173 [ 一日30分 인생승리의 학습법] 머신러닝 내용 요약 및 정리 졸리운_곰 2023.11.24 102
1172 [ 一日30分 인생승리의 학습법] 당신이 알아두어야 할 10가지 머신러닝 알고리즘 file 졸리운_곰 2023.11.24 100
» [ 一日30分 인생승리의 학습법] GN⁺: WASM by Example - 예제로 배우는 WASM (wasmbyexample.dev) 졸리운_곰 2023.11.17 93
1170 [ 一日30分 인생승리의 학습법] GHIDRA 소개 및 사용 file 졸리운_곰 2023.11.17 105
1169 [ 一日30分 인생승리의 학습법] [블록체인 이론] IPFS 쉽게 이해하기 file 졸리운_곰 2023.11.04 96
1168 [ 一日30分 인생승리의 학습법] 자바스크립트 - IPFS 접근 file 졸리운_곰 2023.11.04 133
1167 [ 一日30分 인생승리의 학습법] IPFS 사용하기 file 졸리운_곰 2023.11.04 93
1166 [ 一日30分 인생승리의 학습법] The Best 10 Open Source Projects for Developers to Contribute : 개발자가 기여할 수 있는 최고의 10개 오픈 소스 프로젝트 file 졸리운_곰 2023.10.29 3047
1165 [ 一日30分 인생승리의 학습법] WebAssembly 사용 현황 / 2023년 졸리운_곰 2023.10.27 105
1164 [ 一日30分 인생승리의 학습법] 웹 3(Web3) 란 무엇일까? : 분산 인터넷의 미래 file 졸리운_곰 2023.10.24 103
1163 [ 一日30分 인생승리의 학습법] keycloak 설치 및 사용 file 졸리운_곰 2023.10.12 128
1162 [ 一日30分 인생승리의 학습법] KEYCLOAK 서버 설치 및 계정 생성 file 졸리운_곰 2023.10.12 96
1161 [ 一日30分 인생승리의 학습법][Web3] React와 web3의 만남 - Web3-react로 NFT 민팅하기 (3) file 졸리운_곰 2023.10.05 102
1160 [ 一日30分 인생승리의 학습법][Web3] React와 web3의 만남 - Web3-react로 NFT 민팅하기 (2) file 졸리운_곰 2023.10.05 123
1159 [ 一日30分 인생승리의 학습법][Web3] React와 web3의 만남 - Web3-react로 NFT 민팅하기 (1) file 졸리운_곰 2023.10.05 92
대표 김성준 주소 : 경기 용인 분당수지 U타워 등록번호 : 142-07-27414
통신판매업 신고 : 제2012-용인수지-0185호 출판업 신고 : 수지구청 제 123호 개인정보보호최고책임자 : 김성준 sjkim70@stechstar.com
대표전화 : 010-4589-2193 [fax] 02-6280-1294 COPYRIGHT(C) stechstar.com ALL RIGHTS RESERVED