Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add scenario based optimization module #129

Open
Kaliumhexacyanoferrat opened this issue Nov 3, 2020 · 0 comments
Open

Add scenario based optimization module #129

Kaliumhexacyanoferrat opened this issue Nov 3, 2020 · 0 comments
Labels
enhancement New feature or request

Comments

@Kaliumhexacyanoferrat
Copy link
Owner

Kaliumhexacyanoferrat commented Nov 3, 2020

As the developer of a web application, I would like my application to be automatically optimized based on some hints, so that it is fast in generation and consumption.

Example

var website = Website.Create() 
                     .Optimize(Aspect.Website | Aspect.Static | Aspect.UseMemory);

Host.Create()
    .Handler(website)
    .Optimize(Aspect.Secure)
    .Run();

Acceptance criteria

  • The functionality is implemented in a new Optimization module which deprecates the Practices module
  • The functionality is implemented as a concern which can be added to handlers and/or the host
  • All aspects are well documented in their purpose and implication
  • Aspects can be combined which may implies a different implementation
  • Aspects are inherited down through the handler chain (to be respected, not to be imlemented)
  • Optimizations which are already applied on higher level (e.g. compression) are not duplicated
  • The aspects above are refined during implementation
  • Acceptance tests have been added to ensure the functionality
@Kaliumhexacyanoferrat Kaliumhexacyanoferrat added the enhancement New feature or request label Nov 3, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant