Je suis assez novice dans cette frénésie de frameworks MV* côté client. Il n'est pas nécessaire que ce soit Angular.js, mais je l'ai choisi parce qu'il me semble plus naturel que Knockout, Ember ou Backbone. Bref, comment se déroule le travail ? Les gens commencent-ils par développer une application côté client en Angular.js, puis y connectent-ils le back-end ? Ou l'inverse, en construisant d'abord le back-end en Django, Flask ou Rails, puis en y rattachant une application Angular.js ? Existe-t-il une "bonne" façon de procéder, ou s'agit-il simplement d'une préférence personnelle en fin de compte ?
Je ne sais pas non plus si je dois structurer mon projet en fonction des pratiques de la communauté Flask ou Angular.js ?
Par exemple, l'application minitwit de Flask est structurée comme suit :
minitwit
|-- minitwit.py
|-- static
|-- css, js, images, etc...
`-- templates
|-- html files and base layout
L'application du tutoriel Angular.js est structurée comme suit :
angular-phonecat
|-- app
`-- css
`-- img
`-- js
`-- lib
`-- partials
`-- index.html
|-- scripts
`-- node.js server and test server files
Je peux m'imaginer une application Flask toute seule, et il est assez facile de voir une application Angular.js comme ToDo List toute seule, mais lorsqu'il s'agit d'utiliser ces deux technologies, je ne comprends pas comment elles fonctionnent ensemble. On dirait presque que je n'ai pas besoin d'un framework web côté serveur alors que vous avez déjà Angular.js, un simple serveur web Python suffira. Dans l'application Angular to-do, par exemple, MongoLab est utilisé pour communiquer avec la base de données à l'aide de Restful API. Il n'était pas nécessaire d'avoir un framework web en back-end.
Peut-être que je suis juste terriblement confus et qu'Angular.js n'est rien de plus qu'une bibliothèque jQuery fantaisiste que je devrais utiliser comme j'utiliserais jQuery dans mes projets Flask (en supposant que je modifie la syntaxe des modèles d'Angular pour quelque chose qui n'entre pas en conflit avec Jinja2). J'espère que mes questions ont un sens. Je travaille principalement sur le back-end et ce framework côté client est un territoire inconnu pour moi.