GithubHelp home page GithubHelp logo

hexagonal-talk's Introduction

Blueprints and Hexagons

This talk was first given at Techmeetup Glasgow, on January 27th 2016.

The slides are available in the original Markdown format (hexagonal-ds.md), which can be opened using Deckset. As the theme isn't preserved, I used the "Next" theme with the blue-on-gray colouring (currently the second choice in that theme).

I've expanded the speaker notes from the original short note form to (still short) sentences explaining the ideas more fully.

If you don't have access to Deckset but still want the visuals alongside the notes, I've exported the slides as a PDF.

I'm also including the further reading and acknowledgements below, for your convenience.

Abstract

Architecture. Tests. Design. These sound like three separate aspects of your applications, but really they're all entwined.

Key Takeaways

  • You'll learn how to design applications that are easy to maintain and change.
  • You'll find out how your testing strategy and architecture strategy can and should be entwined.
  • You'll leave knowing how to structure your code better, at every level.

TODO

  • Add in parts to explain cross cutting domain entities vs bounded context entities
  • Possibly talk a little about DDD and bounded contexts
  • Relate to Dependency Inversion Principle
  • Talk about leaky abstractions and performance. Doesn't matter for most, possibly destructure once an area is proven to be an issue
  • Explain how to apply to legacy systems (branch by abstraction)
  • Cross-cutting concerns like Transactions
  • Wiring hexagons and adapters together using DI i.e. build flexibly, bind late
  • Convince other people to structure and separate, rather than that initial velocity boost you get from Rails/Spring Boot etc. -> Remind them of past pain. Possibly start with Rails/Boot but have triggers for structuring.

Learn More


Acknowledgements

hexagonal-talk's People

Contributors

garyfleming avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.