• ByteReader
    • ByteWriter
    • RawReader
    • Reader
    • Writer
      它们之间的关系是:
    1. | ______ _ |
    2. | | ___ \ | | |
    3. | | |_/ /___ __ _ __| | ___ _ __ |
    4. | | // _ \/ _` |/ _` |/ _ \ '__| |
    5. | | |\ \ __/ (_| | (_| | __/ | |
    6. | |
    7. | +---------------------------------------------------------+ |
    8. | | ______ ______ _ | |
    9. | | | ___ \ | ___ \ | | | |
    10. | | | // _` \ \ /\ / / // _ \/ _` |/ _` |/ _ \ '__| | |
    11. | | | |\ \ (_| |\ V V /| |\ \ __/ (_| | (_| | __/ | | |
    12. | | \_| \_\__,_| \_/\_/ \_| \_\___|\__,_|\__,_|\___|_| | |
    13. | | +-----------------------------------------------------+ | |
    14. | | |______ _ ______ _ | | |
    15. | | || ___ \ | | | ___ \ | | | | |
    16. | | || ___ \ | | | __/ _ \ // _ \/ _` |/ _` |/ _ \ '__|| | |
    17. | | || |_/ / |_| | || __/ |\ \ __/ (_| | (_| | __/ | | | |
    18. | | |\____/ \__, |\__\___\_| \_\___|\__,_|\__,_|\___|_| | | |
    19. | | | |___/ | | |
    20. | | +-----------------------------------------------------+ | |
    21. | +---------------------------------------------------------+ |
    22. +-------------------------------------------------------------+

    其中 ByteReaderByteWriter 是用于对字节序列的读写,它本身跟 hprose 序列化无关,可以单独作为字节序列读写的工具来用,因为是读写分离的,所以性能上要比 bytes 包下面的那几个用于对字节序列化读写的结构体高效一点点,但是功能也少一些。

    WriterReader 用于对数据进行 hprose 的细粒度序列化和反序列化操作。