IO子系统
Nebula3的IO系统相对于Nebula1和2是一个巨大的进步, 新系统的主要设计目标有:
使用更标准的机制, 如用URI来定位资源, 用MIME类型来区分数据格式
一个灵活的流模型,...它不关心数据是来自文件, 内存, HTTP连接还是其它地方
从流读写不数据的数据类型也更方便, 例如要读取的XML格式数据来自文件/内存/网络都没问题
另外, 新的流和读写类可以在运行时注册到IO系统中...例如你可以把IO::XmlReader连接到IO::FileStream来从文件系统读取XML格式的数据, 或者连接到IO::HttpStream来从HTTP连接读取XML格式的数据....值得注意的是URI对象比字符串占用更多的内存, 所以有时把URI保存在字符串中, 并在需要分割的时候才使用IO::URI类会更好一些....HTTP服务器文件
Stream reader和writer类提供了一些舒适的接口专门处理特定的数据格式.