To have a grasp on Swift NIO I decided to port my toy project OSCCore on top of it and see if it can work out. Today I reached the completed status so both the core module and the examples now powered by Swift NIO.
What I learned so far
- The learning curve was a bit steep to me. Dealing with futures and promises (why do they both exist?) is still challenging.
- However building blocks are easy to understand. To extend the pipeline with a byte pack to OSC message converter was a piece of cake.
- The whole project looks very Java-ish. It's ok to me, but I hope it will be transformed to more Swift friendly in the future.
My work can be found here: https://github.com/segabor/OSCCore/tree/nio
I appreciate your suggestions and tips.