设计 & 实现
基于现代的、标准的ANSI C++编写,使用C++ STL库。模块化设计,极少的外部依赖,易于编译和使用。结合传统的面向对象与现代的C++设计,代码易读,代码风格统一,以及至关全面的测试用例。 正则表达式
支持平台
- 桌面/服务器: Windows, Linux, Mac OS X, Solaris, HP-UX, AIX
- 嵌入式系统: Windows Embedded CE, Embedded Linux (uClibc or glibc), iOS, QNX, VxWorks, Android
- 最低系统要求: 75 MHz ARM9, 8 MB RAM (Embedded Linux).
License
- Boost Software License 1.0
核心特性
- 支持Any 和 DynamicAny 的动态类型
- 提供缓存框架
- 日期和时间
- 事件与通知框架
- (libPoco.com翻译,转载请注明)
- 基于PCRE的正则表达式
- 动态库加载
- 完美的指针和内存管理 (buffer, pool)
- 字符串格式化和工具
- tuples
压缩
加密
- 支持多种hash算法
- 支持X509数字证书
- 对称的和 RSA算法
- 支持streams加解密
- 基于OpenSSL
数据库
- 不一样的数据库提供了统一的访问接口(SQLite, MySQL, ODBC)
- 自动数据类型匹配
- 支持集合类 (std::vector, std::set, std::map, etc.)
- 支持记录集和tuples
- 支持链接池
文件系统
- 跨平台的文件路径操做
- 目录列表
- 通配符支持
- 文件属性管理
日志
- 可扩展的日志框架,可拔插的日志通道和消息格式化
- 日志可输出到终端,日志文件,syslog,远程syslog,Windows事件服务
多线程
- 线程和线程同步类库
- 线程池
- 工做队列
- 活动对象
- 任务管理
- 定时器
网络
- 流,数据报,多播,服务器和原生socket.
- TCP服务器框架(多线程)
- 反射服务器框架
- HTTP(S)客户和服务器框架
- HTTP认证
- CSP(C++ Server Page)编译器
- FTP客户端
- SMTP和POP3客户端
- (libPoco.com翻译,转载请注明)
- 支持URI, UUID
- HTML表单处理
- MIME支持
- 基于 OpenSSL支持SSL/TLS
- WebSocket (RFC 6455) 客户和服务器
进程管理和 IPC
流
- Base64 和 HexBinary 编解码
- 压缩(zlib)
- 行结束符车换
- 内存stream
- 文本编码转换
- URI流读取
文本编码
- 支持UTF-8 和 Unicode
- 文本编码和转换
- 字符分类
工具类
- 支持命令行和服务器程序框架
- 命令行参数解析器
- 配置文件解析
- 支持Unix和Windows后台服务
XML
- 基于 Expat 的XML解析
- SAX2 (Simple API for XML, version 2) 解析器
- DOM (Document Object Model, Level 1-3) 解析器
- XML生成器