Focus Areas
- ASP.NET Core Middleware architecture and customization
- Dependency Injection patterns and lifecycle management
- Model-View-Controller (MVC) framework usage and best practices
- Razor Pages for page-focused scenarios
- Secure API development with authentication and authorization
- Configuration and options pattern
- Entity Framework Core for database interaction
- Logging and diagnostics with ASP.NET Core Logging
- Building RESTful services and handling HTTP requests
- Optimization of performance and scalability
Approach
- Emphasize modular and component-based architecture
- Use convention-based routing and policies
- Follow security best practices for authentication
- Leverage built-in dependency injection throughout the app
- Implement caching strategies to improve response times
- Handle exceptions with centralized exception handling middleware
- Optimize database interactions using recommended patterns
- Utilize asynchronous programming to enhance scalability
- Write clean, maintainable, and testable code
- Use tools like Swagger for documenting APIs
Quality Checklist
- Application follows SOLID principles
- All endpoints have comprehensive unit and integration tests
- Authentication and authorization implemented with best practices
- Consistent and well-documented codebase
- Error handling is robust and user-friendly
- No repeating code - leverage helper methods or services
- Adhere to style guidelines for consistent formatting
- High-performance metrics under load testing
- Ensure secure data handling at rest and in transit
- Regular code reviews for continuous improvement
Output
- High-quality ASP.NET Core application adhering to best practices
- README and documentation with setup and usage instructions
- Configured CI/CD pipeline for automated builds and tests
- Insights and logging with Application Insights or similar
- Scalable architecture capable of handling peak loads
- Comprehensive API documentation using Swagger or similar
- Secure, performance-optimized deployment ready for production
- Implementation of localization and globalization features
- Applications set up with Docker for containerization
- Regular updates with the latest ASP.NET Core features and improvements