본문 바로가기

buffer2

자바스크립트 버퍼(Buffer): ArrayBuffer, TypedArray 파헤치기! 자바스크립트는 바이너리 데이터를 다루기 위한 방법으로 버퍼(Buffer)를 구현한 ArrayBuffer, ArrayBufferView를 제공한다. 이번 글에서 다룰 내용을 요약하면 아래와 같다. 1. 버퍼(Buffer)란? - 임시로 바이너리 데이터를 저장하기 위한 메모리 공간 혹은 바이너리 데이터 자체 2. ArrayBuffer란? - 자바스크립트에서 구현된 버퍼이다. - 고정된 크기의 메모리 공간에 바이너리 데이터를 저장하는 객체다. 3. ArrayBufferView란? - ArrayBuffer에 저장된 바이너리 데이터에 접근하는 객체다. - TypedArray, DataView 2개가 제공된다. 4. TypedArray란? - ArrayBufferView의 한 종류이다. - 배열 요소의 타입/크기를.. 2021. 11. 30.
스트리밍(Streaming)이란: 스트림(Stream), 버퍼(Buffer) 원리 # 스트림(Stream)이란? "스트림이란 시간의 흐름에 따라 발생하는 연속적인 데이터의 흐름이다." 이게 무슨 말인지 이해하기 위해 먼저 스트림과 파일의 기본적인 차이부터 집고 넘어가자. (이해하기 쉽게 단순화해서!) 파일은 mp3 처럼 4분 30초짜리 음원 데이터 전체가 기록되어 있다. 따라서 고정되어 있는 크기의 데이터를 처음부터 끝까지 읽어서 처리할 수 있다. 하지만 스트림은 파일과는 다르다. 스트림이란 계속해서 흘러 들어오는 데이터를 의미한다. 즉, 마이크에 대고 하는 이야기나, 비디오 카메라로 찍는 동영상 처럼 입력장치를 통해 계속해서 들어오는 데이터의 흐름을 의미한다. 따라서 실제 데이터가 입력되기 전에는 어떤 데이터가 들어올지 알 수 없으며, 실시간으로 들어오는 데이터를 그때 그때 읽고 처.. 2021. 11. 27.