samchon
469
2016-06-21 18:56:40
2
3014

[TypeScript-STL] C++ STL을 TypeScript (JavaScript) 에서 사용하자


Typescript-STL



이번에 오픈소스 라이브러리 (Typescript-STL) 를 하나 빌드하게 되어 이렇게 글을 씁니다.

Typescript-STL은 C++의 STL (Standard Template Library) 의 컨테이너와 알고리즘 일체를 TypeScrip로 구현한 라이브러리로써, STL에 있는 강력한 컨테이너와 알고리즘들을 (우선은 제가) 자바스크립트에서 사용코자 만들었습니다. C++ 표준협회에서 정의한 모든 컨테이너와 알고리즘 일체를 구현하였으며, Typescript를 이용하여 개발시에, 템플릿(제네릭)을 통한 강력한 유효성 검증 (타입검사, 컴파일 에러) 도 느껴보실 수 있습니다.


현재 지원되는 컨테이너 및 알고리즘은 다음과 같습니다.

- 컨테이너
  - 선형 컨테이너
    - Vector
    - List
    - Deque
    - 기타
      - Stack
      - Queue
      - PriorityQueue
  - 트리 컨테이너
    - TreeSet, TreeMultiSet
    - TreeMap, TreeMultiMap
  - 해쉬 컨테이너
    - HashSet, TreeMultiset
    - HashMap, HashMultiMap
- 알고리즘
  - <algorithm>
  - <functional>
  - <utility>


아래 링크를 통해 Typescript-STL에 대해 더욱 자세하게 알아보실 수 있습니다.

Typescript-STL의 GitHub repository 에 접속하여 소스코드와 설계도 일체를 보시거나 가이드 문서(Wiki)를 읽어보실 수 있습니다. 오픈소스 프로젝트에 참여하시어 Typescript-STL을 개선해주실 수도 있습니다. 더불어 API 문서를 통해 각 클래스 및 메소드 상세내역을 파악하실 수도 있습니다.

  - GitHub Repository
  - Guidebook (wiki)
  - API Documents
  - Class Diagram

2
0
  • 댓글 2

  • 하마
    6k
    2016-06-22 10:24:34

    멋집니다. :-)  


    Node

    npm install -g typescript-stl

    TypeScript
    global["std"] = require("typescript-stl");
    let list: std.List<string> = new std.List<string>();
    Pure JavaScript
    var std = require("typescript-stl");
    var list = new std.List();

    Browser

    In HTML Document
    <script src="typescript-stl.js"></script>

    0
  • j2doll
    776
    2019-08-22 18:01:42

    awesome!

    0
  • 로그인을 하시면 댓글을 등록할 수 있습니다.