Esse método de desenvolvimento tem nos auxiliado muito mesmo na empresa em que trabalhos. (Eu e o autor trabalhamos na mesma "firma").
Temos conversado sobre alguns pontos de implementação para o futuro. Dentre estas, destaco:
- A criação de componentes no backend.
- Esses componentes retornariam um objeto padrão que seria consumido pelo front. Podendo ser alterado para suprir a necessidade de cada especificidade. Ex: a action, que retorna um padrão para o button. Ja retornaria dados padrão, que podem ser alterados para serem usados na tela específica... como label, url, icon, color, size, etc, etc.
- Uma prop de form
- Isso poderia conter diversos inputs, que seriam distribuidos em tela, linha a linha. Contendo ainda uma prop de size, (seguindo os padrões do bootstrap, por exemplo), seria possivel dispor em tela diversos inputs para formar um formulário em tela
- Você pode com isso inclusive validar quais campos são obrigatórios ou não, como será enviado o body na request e todos o necessário. Temos ja um projeto disso, (DynamicForm), mas falta dar um "grau" no componente.
Enfim, a mudança de paradigma em nossa empresa foi muito grande. Em um primeiro momento causa uma certa estranheza e um desconforto em fazer. Mas é só a primeira olhada. Ao iniciar o desenvolvimento já é possivel perceber os benefícios.
Parabéns pelo artigo Sr. Autor! :P