• Guides
  • Api Reference
  • FAQ
  • Guides
  • Overview
  • Philosophy
Show / Hide Table of Contents
  • Overview
    • Introduction
    • Getting Started
    • Philosophy
    • FAQ
    • Upgrading to 1.0
  • Triggers
    • HTTP Triggers
      • Overview
      • Routing
      • Responses
      • Authorization
      • Claims Mapping
      • Headers
      • Swagger / OpenAPI
    • Service Bus Triggers
      • Queues
      • Topic and Subscriptions
      • Message Properties
      • Message Sessions
    • Cosmos DB
      • Overview
      • Error Handling
    • SignalR
    • Timer Triggers
    • Azure Storage Triggers
      • Queues
      • Blobs
    • Event Hub Triggers
  • Output Bindings
  • Cross Cutting Concerns
    • Connection Strings
    • IoC Containers
    • Logging
    • Trigger Contexts
    • Validation
    • Serialization
    • Suggested Solution Structure
  • Contributing
    • Compiling
    • Debugging

Philosophy - Why Develop this Framework?

For some of my underlying thinking (if you are interested!) its worth reading the comments I made about the mediator framework Function Monkey makes use of.

Really what I wrote their also applies to Function Monkey and I wanted to apply the same philosophy to Azure Functions.

Beyond that - I'm currently designing and implementing a number of serverless architectures and I wanted to accelerate my development and deal with some of the common pain points.

And I'm not very keen on the attribute model used by the Azure Functions team though I can see and appreciate why they went for that. In general I dislike the attribute model except in some very specific use cases as I find it makes for hard to read code that tends to start muddling concerns and bleed out into a broader codebase.

Its also very different putting together an API that abstracts itself from opinions about implementation compared to one that makes strong opinions about implementation.

  • Improve this Doc
  • 0 Comments
Back to top Copyright © 2018 James Randall