Charly POLY - Sr Software Engineer at
Past
➡️ ex-Dashlane
➡️ ex-JobTeaser
Why talk about "Front-end architecture"?
➡️ Because the web has evolved!
1
00'
2
10'
3
20'
1
00'
2
10'
Back-end
Front-end
3
20'
A JS dedicated Ecosystem
JQuery / Prototype | Backbone | Angular / React |
---|---|---|
Cross-browsers API | MVP | MVV, MV* |
Animations | Component State management | Separation of Concerns |
- | Templating | Application State management |
- | - | modules |
DI |
3
20'
2
10'
1
00'
A Quality Attribute (QA) is a measurable or testable property of a system that is used to indicate how well the system satisfies the needs of its stakeholders
Software Architecture in Practice, p.63
Software Architecture in Practice, p.194
Software Architecture in Practice
Product
requirements +
constraints
Architecture QAs
Technical roadmap
Technical guide
Features updates
New features
Build a technical roadmap
Guidelines for new development
➡️ Enhance Modifiability, so :
reduce module size, increase cohesion and reduce coupling
- Components naming convention
- Redux as event-bus to defer binding of components
- Components refactoring to follow SRP principles
- Data HoC in order to prepare GraphQL migration
Components naming convention
Guidelines for new development
The GraphQL migration anticipation
View Component
REST HoC
View Component
GraphQL HoC
Guidelines for new development