SDD 2017 Schedule
This is a rating on a scale from 1 to 5 to indicate how much demo coding the session will contain (as opposed to slides) – 1 means no code demos, and 5 means nothing but.
This is a rating on a scale from 1 to 5 to indicate how advanced the session is (in terms of the specific topic that is being covered) – 1 means that it’s introductory, and 5 means that it’s aimed at attendees who already have significant experience in the relevant area.
Wednesday 17 May 2017
Managing data in Single Page Applications with Flux
What is Flux? Flux is a pattern developed by FaceBook to simplify data management in its own web applications. Why do we need Flux? Building a single page application using the MVC pattern via two-way data-binding frameworks, such as KnockoutJS or AngularJS, is very compelling. However, as the application grows and the interactions between view models and views become more complex then data management gets harder – many cascading updates cause unforeseen side-effects and the application can become unpredictable, difficult to reason about and hard to debug. Flux specifies a uni-directional flow of data where all data changes are represented by ‘actions’ that are dispatched to ‘stores’ that control all management of data and then generate notifications to the UI. The UI never directly changes data but creates and dispatches actions instead. This is very explicit and leads to a better separation of concerns, making the application much easier to understand. We will look at the Flux pattern in detail – in particular, actions, dispatchers and stores – and use Facebook’s Flux implementation and React to build an application.
Simon is co-founder of software development consultancy Rock Solid Knowledge, and a former course author and instructor at training companies DevelopMentor and QA. He has been writing code for a living for more years than he cares to remember, using a range of technologies including Visual Studio, ASP.NET, Web Services, and MSBuild. http://rocksolidknowledge.com