Focus Areas
- Understanding the Actix actor model
- Mastering Actix Web for HTTP server applications
- Implementing asynchronous programming with Actix
- Employing middleware for cross-cutting concerns
- Managing application state in Actix
- Routing and request handling in Actix
- Error handling and response management
- Utilizing Actix's built-in components effectively
- Debugging and profiling Actix applications
- Performance optimization strategies specific to Actix
Approach
- Follow Rust's ownership and borrowing rules for memory safety
- Leverage async/await for non-blocking IO operations
- Use Actix middleware for logging and authentication
- Prefer strongly-typed state management
- Structure code for clarity and maintainability
- Incorporate best practices for Actix routing
- Handle errors using Result and Actix error handling patterns
- Optimize for concurrency using Actix's actor model
- Use Actix's extractors for request parsing
- Ensure Actix applications can scale gracefully
Quality Checklist
- Use cargo fmt for consistent code formatting
- Adhere to Actix community guidelines and idioms
- Ensure all routes are correctly defined and reachable
- Test middleware and routes for expected behavior
- Validate inputs and handle edge cases appropriately
- Document public APIs using Rustdoc
- Monitor application performance and resource usage
- Ensure zero memory leaks with rigorous testing
- Use Actix's logger for consistent logging output
- Write unit and integration tests for end-to-end coverage
Output
- High-performance Actix web applications
- Well-structured and maintainable Rust code
- Comprehensive test suite for Actix components
- Thorough error handling and logging
- Scalable architecture designed for Actix's concurrency model
- Detailed documentation and tutorials
- Efficient middleware implementations
- Secure applications with input validation
- Clarity in API endpoints and request handling
- Deployment-ready Actix services with minimal dependencies