forked from 0voice/developkit_set
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
8fd5697
commit 1d87493
Showing
1 changed file
with
180 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,180 @@ | ||
# c_cpp_opensource_set | ||
## 2019年最新总结,值得推荐的c/c++开源框架与库。持续更新中。 | ||
|
||
|
||
|
||
<br> | ||
|
||
### 标准库,算法与函数 | ||
##### [C++ Standard Library](http://en.wikipedia.org/wiki/C%2B%2B_Standard_Library) : 是一系列类和函数的集合,使用核心语言编写,也是C++ISO自身标准的一部分。 | ||
##### [Standard Template Library](https://en.wikipedia.org/wiki/Standard_Template_Library) : 标准模板库, STL | ||
##### [C POSIX library](https://en.wikipedia.org/wiki/C_POSIX_library) : POSIX系统的C标准库规范 | ||
##### [ISO C++ Standards Committee](https://github.com/cplusplus) : C++标准委员会 | ||
|
||
<br> | ||
|
||
### 框架 | ||
##### [Apache C++ Standard Library](http://stdcxx.apache.org/) : 是一系列算法,容器,迭代器和其他基本组件的集合 | ||
##### [ASL](http://stlab.adobe.com/) : Adobe源代码库提供了同行的评审和可移植的C++源代码库。 | ||
##### [Boost](https://github.com/boostorg) : 大量通用C++库的集合。 | ||
##### [BDE](https://github.com/bloomberg/bde) : 来自于彭博资讯实验室的开发环境。 | ||
##### [Cinder](https://libcinder.org/) : 提供专业品质创造性编码的开源开发社区。 | ||
##### [Bxxomfort](http://ryan.gulix.cl/fossil.cgi/cxxomfort/index) : 轻量级的,只包含头文件的库,将C++ 11的一些新特性移植到C++03中。 | ||
##### [Dlib](http://dlib.net/) : 使用契约式编程和现代C++科技设计的通用的跨平台的C++库。 | ||
##### [EASTL](https://github.com/paulhodge/EASTL) : EA-STL公共部分 | ||
##### [ffead-cpp](https://github.com/sumeetchhetri/ffead-cpp) : 企业应用程序开发框架 | ||
##### [Folly](https://github.com/facebook/folly) : 由Facebook开发和使用的开源C++库。 | ||
##### [JUCE](https://github.com/WeAreROLI/JUCE) : 包罗万象的C++类库,用于开发跨平台软件 | ||
##### [libphenom](https://github.com/facebookarchive/libphenom) : 用于构建高性能和高度可扩展性系统的事件框架。 | ||
##### [LibSourcey](https://github.com/sourcey/libsourcey) : 用于实时的视频流和高性能网络应用程序的C++11 evented IO | ||
##### [LibU](https://github.com/koanlogic/libu) : C语言写的多平台工具库 | ||
##### [Loki](http://loki-lib.sourceforge.net/) : C++库的设计,包括常见的设计模式和习语的实现。 | ||
##### [MiLi](https://code.google.com/p/mili/) : 只含头文件的小型C++库 | ||
##### [openFrameworks](https://openframeworks.cc/) : 开发C++工具包,用于创意性编码。 | ||
##### [Qt](https://www.qt.io/developers/) : 跨平台的应用程序和用户界面框架 | ||
##### [Reason](http://code.google.com/p/reason/) : 跨平台的框架,使开发者能够更容易地使用Java,.Net和Python,同时也满足了他们对C++性能和优势的需求。 | ||
##### [ROOT](https://root.cern.ch/) : 具备所有功能的一系列面向对象的框架,能够非常高效地处理和分析大量的数据,为欧洲原子能研究机构所用。 | ||
##### [STLport](http://www.stlport.org/) : 是STL具有代表性的版本 | ||
##### [STXXL](http://stxxl.sourceforge.net/) : 用于额外的大型数据集的标准模板库。 | ||
##### [Ultimate++](https://www.ultimatepp.org/) : C++跨平台快速应用程序开发框架 | ||
##### [Windows Template Library](https://sourceforge.net/projects/wtl/) : 用于开发Windows应用程序和UI组件的C++库 | ||
##### [Yomm11](https://github.com/jll63/yomm11) : C++11的开放multi-methods. | ||
|
||
<br> | ||
|
||
### 异步事件循环 | ||
##### [Boost.Asio](https://think-async.com/Asio/) : 用于网络和底层I/O编程的跨平台的C++库。 | ||
##### [libev](http://libev.schmorp.de/) : 功能齐全,高性能的时间循环,轻微地仿效libevent,但是不再像libevent一样有局限性,也修复了它的一些bug。 | ||
##### [libevent](http://libevent.org/) : 事件通知库 | ||
##### [libuv](https://github.com/joyent/libuv) : 跨平台异步I/O。 | ||
##### [libco](https://github.com/Tencent/libco) : 协程,微信支持8亿用户同时在线的底层IO库。功能强大 | ||
##### [ntyco](https://github.com/wangbojing/NtyCo) : 纯c版的协程框架,代码短小精悍,适合嵌入工程。 | ||
##### [libgo](https://github.com/yyzybb537/libgo) : golang风格的并发框架,C++11实现协程库 | ||
|
||
<br> | ||
|
||
### 音频库 | ||
##### [FMOD](https://www.fmod.com/) : 易于使用的跨平台的音频引擎和音频内容的游戏创作工具。 | ||
##### [Maximilian](https://github.com/micknoise/Maximilian) : C++音频和音乐数字信号处理库 | ||
##### [OpenAL](http://www.openal.org/) : 开源音频库—跨平台的音频API | ||
##### [Opus](http://opus-codec.org/) : 一个完全开放的,免版税的,高度通用的音频编解码器 | ||
##### [Speex](https://www.speex.org/) : 免费编解码器,为Opus所废弃 | ||
##### [Tonic](https://github.com/TonicAudio/Tonic) : C++易用和高效的音频合成 | ||
##### [Vorbis](http://xiph.org/vorbis/) : Ogg Vorbis是一种完全开放的,非专有的,免版税的通用压缩音频格式。 | ||
|
||
<br> | ||
|
||
### 生态学 | ||
##### [lisequence](http://molpopgen.github.io/libsequence/) : 用于表示和分析群体遗传学数据的C++库。 | ||
##### [SeqAn](http://www.seqan.de/) : 专注于生物数据序列分析的算法和数据结构。 | ||
##### [Vcflib](https://github.com/vcflib/vcflib) : 用于解析和处理VCF文件的C++库 | ||
##### [Wham](https://github.com/zeeev/wham) : 直接把联想测试应用到BAM文件的基因结构变异。 | ||
|
||
<br> | ||
|
||
### 压缩 | ||
##### [bzip2](http://www.bzip.org/) : 一个完全免费,免费专利和高质量的数据压缩 | ||
##### [doboz](https://bitbucket.org/attila_afra/doboz/src) : 能够快速解压缩的压缩库 | ||
##### [PhysicsFS](https://icculus.org/physfs/) : 对各种归档提供抽象访问的库,主要用于视频游戏,设计灵感部分来自于Quake3的文件子系统。 | ||
##### [KArchive](https://projects.kde.org/projects/frameworks/karchive) : 用于创建,读写和操作文件档案(例如zip和 tar)的库,它通过QIODevice的一系列子类,使用gzip格式,提供了透明的压缩和解压缩的数据。 | ||
##### [LZ4](https://code.google.com/p/lz4/) : 非常快速的压缩算法 | ||
##### [LZHAM](https://code.google.com/p/lzham/) : 无损压缩数据库,压缩比率跟LZMA接近,但是解压缩速度却要快得多。 | ||
##### [LZMA](http://www.7-zip.org/sdk.html) : 7z格式默认和通用的压缩方法。 | ||
##### [LZMAT](http://www.matcode.com/lzmat.htm) : 及其快速的实时无损数据压缩库 | ||
##### [miniz](https://code.google.com/p/miniz/) : 单一的C源文件,紧缩/膨胀压缩库,使用zlib兼容API,ZIP归档读写,PNG写方式。 | ||
##### [Minizip](https://code.google.com/p/miniz/) : Zlib最新bug修复,支持PKWARE磁盘跨越,AES加密和IO缓冲。 | ||
##### [Snappy](https://code.google.com/p/snappy/) : 快速压缩和解压缩 | ||
##### [ZLib](http://zlib.net/) : 非常紧凑的数据流压缩库 | ||
##### [ZZIPlib](http://zziplib.sourceforge.net/) : 提供ZIP归档的读权限。 | ||
|
||
|
||
<br> | ||
|
||
### 并发性 | ||
##### [Boost.Compute](https://github.com/boostorg/compute) : 用于OpenCL的C++GPU计算库 | ||
##### [Bolt](https://github.com/HSA-Libraries/Bolt) : 针对GPU进行优化的C++模板库 | ||
##### [C++React](https://github.com/schlangster/cpp.react) : 用于C++11的反应性编程库 | ||
##### [Intel TBB](https://www.threadingbuildingblocks.org/) : Intel线程构件块 | ||
##### [Libclsph](https://github.com/libclsph/libclsph) : 基于OpenCL的GPU加速SPH流体仿真库 | ||
##### [OpenCL](https://www.khronos.org/opencl/) : 并行编程的异构系统的开放标准 | ||
##### [OpenMP](https://www.openmp.org/) : OpenMP API | ||
##### [Thrust](http://thrust.github.io/) : 类似于C++标准模板库的并行算法库 | ||
##### [HPX](https://github.com/STEllAR-GROUP/hpx/) : 用于任何规模的并行和分布式应用程序的通用C++运行时系统 | ||
##### [VexCL](https://github.com/ddemidov/vexcl) : 用于OpenCL/CUDA 的C++向量表达式模板库。 | ||
|
||
|
||
<br> | ||
|
||
### 密码学 | ||
##### [Bcrypt](http://bcrypt.sourceforge.net/) : 一个跨平台的文件加密工具,加密文件可以移植到所有可支持的操作系统和处理器中。 | ||
##### [BeeCrypt](https://github.com/klchang/beecrypt) : 快速的加密图形库,功能强大,接口方便。 | ||
##### [Botan](https://botan.randombit.net/) : C++加密库 | ||
##### [Crypto++](https://www.cryptopp.com/) : 一个有关加密方案的免费的C++库 | ||
##### [GnuPG](https://www.gnupg.org/) : OpenPGP标准的完整实现 | ||
##### [GnuTLS](https://www.gnutls.org/) : 实现了SSL,TLS和DTLS协议的安全通信库 | ||
##### [Libgcrypt](https://gnupg.org/related_software/libgcrypt/) : 基于GnuPG的加密图形库。 | ||
##### [Libmcrypt](https://github.com/winlibs/libmcrypt) : 线程安全,提供统一的API。 | ||
##### [LibreSSL](http://www.libressl.org/) : 免费的SSL/TLS协议,属于2014 OpenSSL的一个分支 | ||
##### [LibTomCrypt](https://github.com/libtom/libtomcrypt) : 一个非常全面的,模块化的,可移植的加密工具 | ||
##### [libsodium](https://github.com/jedisct1/libsodium) : 基于NaCI的加密库,固执己见,容易使用 | ||
##### [Nettle](http://www.lysator.liu.se/~nisse/nettle/) : 底层的加密库 | ||
##### [OpenSSL](https://www.openssl.org/) : 一个强大的,商用的,功能齐全的,开放源代码的加密库。 | ||
##### [Tiny AES128 in C](https://github.com/kokke/tiny-AES-c) : 用C实现的一个小巧,可移植的实现了AES128ESB的加密算法 | ||
|
||
<br> | ||
|
||
### 数据库 | ||
##### [hiberlite](https://github.com/paulftw/hiberlite) : 用于Sqlite3的C++对象关系映射 | ||
##### [hiredis](https://github.com/redis/hiredis) : 用于Redis数据库的很简单的C客户端库 | ||
##### [LevelDB](https://github.com/google/leveldb) : 快速键值存储库 | ||
##### [LMDB](https://symas.com/lmdb/technical/) : 符合数据库四大基本元素的嵌入键值存储 | ||
##### [MySQL++](https://tangentsoft.com/mysqlpp/home) : 封装了MySql的C API的C++ 包装器 | ||
##### [RocksDB](https://github.com/facebook/rocksdb) : 来自Facebook的嵌入键值的快速存储 | ||
##### [SQLite](https://www.sqlite.org/index.html) : 一个完全嵌入式的,功能齐全的关系数据库,只有几百KB,可以正确包含到你的项目中。 | ||
##### [Redis](https://redis.io/) : 一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库. | ||
##### [MongoDB](https://www.mongodb.com/) : 一个基于分布式文件存储的数据库 | ||
|
||
<br> | ||
|
||
### 调试 | ||
##### [Boost.Test](https://www.boost.org/doc/libs/master/libs/test/doc/html/index.html) : Boost测试库 | ||
##### [Catch](https://github.com/catchorg/Catch2) : 一个很时尚的,C++原生的框架,只包含头文件,用于单元测试,测试驱动开发和行为驱动开发。 | ||
##### [CppUnit](https://www.freedesktop.org/wiki/Software/cppunit/) : 由JUnit移植过来的C++测试框架 | ||
##### [CTest](https://cmake.org/cmake/help/v2.8.8/ctest.html) : CMake测试驱动程序 | ||
##### [GoogleTest](http://code.google.com/p/googletest/) : 谷歌C++测试框架 | ||
##### [ig-debugheap](https://github.com/deplinenoise/ig-debugheap) : 用于跟踪内存错误的多平台调试堆 | ||
##### [libtap](https://github.com/zorgnax/libtap) : 用C语言编写测试 | ||
##### [MemTrack](http://www.almostinfinite.com/memtrack.html) : 用于C++跟踪内存分配 | ||
##### [MicroProfile](https://bitbucket.org/jonasmeyer/microprofile/src/default/) : 跨平台的网络试图分析器 | ||
##### [minUnit](http://www.jera.com/techinfo/jtns/jtn002.html) : 使用C写的迷你单元测试框架,只使用了两个宏 | ||
##### [Remotery](https://github.com/Celtoys/Remotery) : 用于web视图的单一C文件分析器 | ||
##### [UnitTest++](http://unittest-cpp.sourceforge.net/) : 轻量级的C++单元测试框架 | ||
|
||
|
||
<br> | ||
|
||
### 容器 | ||
##### [C++ B-Tree](https://code.google.com/p/cpp-btree/) : 基于B树数据结构,实现命令内存容器的模板库 | ||
##### [Hashmaps](https://github.com/goossaert/hashmap) : C++中开放寻址哈希表算法的实现 | ||
|
||
<br> | ||
|
||
### 游戏引擎 | ||
##### [Cocos2d-x](https://cocos2d-x.org/) : 一个跨平台框架,用于构建2D游戏,互动图书,演示和其他图形应用程序。 | ||
##### [Grit](http://gritengine.com/) : 社区项目,用于构建一个免费的游戏引擎,实现开放的世界3D游戏。 | ||
##### [lrrlicht](http://irrlicht.sourceforge.net/) : C++语言编写的开源高性能的实时#D引擎 | ||
##### [PolyCode](http://polycode.org/) : C++实现的用于创建游戏的开源框架(与Lua绑定)。 | ||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|