I Am rewriting a old implementation of a router that I had written for the TCP protocol.
You can only write good code if you implement the same thing twice or three times and now that I know more about how routers worked and solved the problems once already I'm trying to solve those problems better. By implementing design patterns like the builder pattern I'm improving the code to be OOP & reusable for other projects I might make in the future.