Carl Kadie - 9 Rules for Creating (...) Data Structures - Rust Linz

Create effective data structures in Rust by following these 9 rules, including prioritizing performance, testing, and user experience, to write efficient and reusable code.

Key takeaways
  • Create data structures that fit into standard libraries and avoid reinventing the wheel
  • Consider the performance of your data structure and test its speed
  • Use profiling tools like Flame Graph to identify slow functions
  • Create iterators for your data structure and implement traits like Clone and Iterate
  • Consider the user’s experience and design constructors that make it easy to use your data structure
  • Use set operations like union, intersection, and difference to manipulate your data
  • Use a tree-based data structure to improve performance
  • Create a data structure that guarantees properties like sorted and disjoint elements
  • Test your data structure thoroughly and provide examples in your documentation
  • Consider using a tool like Criterion for benchmarking and profiling
  • Don’t fight the compiler and follow the Rust rules
  • Plagiarize from standard libraries to avoid mistakes and improve performance
  • Provide good documentation and consider using a tool like Clippy for code review
  • Consider the need for error handling and define what constitutes a valid input
  • Design your data structure with iterators and traits in mind
  • Consider the use of symbols like | for set union and implement the corresponding method

  • Follow the nine rules of good application program interface design (refer to the article for details)