Feature-Driven Development for React
Presentation Resources:
• screencast: | the feature-u presentation video |
• slides: | presentation slides (PDF) |
• teaser: | what is feature-u? |
• basic concepts: | intro and basic concepts |
• docs: | comprehensive documentation |
• repo: | source code |
• feature-redux: | redux plugin (state management) |
• feature-redux-logic: | redux-logic plugin (managing business logic and async processes) |
• feature-router: | StateRouter plugin (feature-driven navigation using redux state) |
• eatery-nod-w: | a PWA web app using feature-u (a Date Night Random Restaurant Selector) |
Presentation Syllabus:
Feature-Driven Development (FDD) has become more prevalent in today's landscape, and for good reason! FDD is a lightweight Agile technique, manifest in a project structure where your code is organized by what it accomplishes (i.e. features), rather than lumping all modules of like types into separate blobs of components, routes, logic, actions, etc. This technique greatly improves your code comprehension because there is a direct correlation between the problem space (the requirements) and the implementation (the code)!
However, FDD involves more than just organizing your project's directory structure into features. You want to encapsulate your features into isolated and self-sufficient modules, and yet they must also be able to collaborate with other features.
Truly isolated FDD is something that is incredibly powerful! You can improve the modularity of your system by loosely coupling your features, making your app easier to understand, develop, test, and refactor. If done right, your features actually become "miniature applications" that simply plug-and-play (where the mere existence of a feature dynamically exudes the characteristics it implements)!
As it turns out there are a number of hurdles to overcome in order to accomplish this. Rather than being left to fend for yourself, a new utility called feature-u has already tackled these hurdles (check out this teaser).
feature-u promotes a new and unique approach to code organization and app orchestration.
With feature-u ...
In short, your features can become more playful ... they can plug-and-play!
feature-u opens new doors into the exciting world of FDD. It frees you up to focus your attention on the "business end" of your features!