TypeScript 프로젝트 내에서 매우 빠른 C 컴파일을 위해 Bun의 FFI를 활용합니다. 처음에는 C 코드를 TypeScript와 통합하는 것이 복잡한 작업이라고 생각했지만 Bun의 FFI(외부 함수 인터페이스)는 프로세스를 놀랍도록 단순화합니다. TypeScript 코드에서 직접 네이티브 C 성능을 달성하는 방법은 다음과 같습니다.
초기 설정: TypeScript 오류 방지
Bun으로 새 프로젝트를 초기화하여 적절한 TypeScript 설정을 확인하세요.
<code class="language-bash">bun init -y # Skips interactive prompts</code>
C를 TypeScript로 컴파일하는 이유는 무엇입니까?
이 접근 방식을 사용하면 JavaScript 환경 내에서 C의 원시 속도를 활용할 수 있습니다. Bun v1.2의 bun:ffi
을 사용하면 TypeScript로 C를 직접 컴파일할 수 있으므로 WebAssembly 또는 node-gyp
가 필요하지 않아 기본 실행 속도가 향상됩니다.
간단한 "Hello, World!" 예시
기본 C 함수를 만들어 보겠습니다.
<code class="language-c">// hello.c #include <stdio.h> void hello(const char* name) { printf("Hello %s from C!\n", name); }</code>
이제 해당 TypeScript 코드(main.ts
):
<code class="language-typescript">import { cc } from "bun:ffi"; const { symbols: { hello } } = cc({ source: "./hello.c", symbols: { hello: { args: ["cstring"], returns: "void" } } as const, }); const name = "World"; const cString = Buffer.from(name); hello(cString); // Output: "Hello World from C!"</code>
다음으로 실행:
<code class="language-bash">bun run main.ts</code>
성능 및 실제 적용
벤치마킹 결과 놀라운 속도가 나타났습니다. 호출당 약 6.26ns(2ns Bun 오버헤드 포함).
실제 사용 사례는 다음과 같습니다.
중요 고려사항
빠른 시작 가이드
<code class="language-bash">curl -fsSL https://bun.sh/install | bash</code>
<code class="language-bash">bun init -y</code>
hello.c
및 main.ts
파일을 추가하세요.추가 튜토리얼과 업데이트를 보려면 내 블로그를 팔로우하세요!
추가 자료: Bun FFI 문서, Bun 블로그
위 내용은 Typescript와 BON에서 C 컴파일 : 빠르고, 기본 및 단순의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!