Question

J'évalue Rails comme cadre d'un nouveau projet Web. Ma seule préoccupation est que pour autant que je sache, Rails a été construit avec une très forte inclinaison vers les applications CRUD et SQL.

Le style d'architecture de mon application sera piloté par un domaine avec une base de données NoSQL, presque l'opposé des racines des rails. J'ai également l'impression que les applications Rails sont fortement liées à une seule base de données.

J'ai vu un travail en essayant de rendre les rails adaptés aux Nosql, en particulier Datamapper 2 semble très intéressant (et prendre beaucoup de temps), mais je me demande si l'architecture des rails actuelle convient aux projets DDD (enregistrement antiactif).

Idéalement, je voudrais utiliser des rails pour sa maturité, sa communauté et son rubis. Mais j'ai également vu de nombreux projets matures qui ont eu des problèmes pour adopter de nouveaux styles de programmation qui n'étaient pas pris en compte dès le début.

J'envisage également un micro-travail comme Sinatra qui devrait me donner la flexibilité d'utiliser mon propre style d'architecture. Le seul inconvénient de cela, je préférerais qu'un cadre s'occupe de autant de choses que possible (aucune longue expérience du développement Web).

Était-ce utile?

La solution

On dirait que Sinatra est votre meilleur pari.

Certains des concepts que vous avez décrits ne sont pas, traditionnellement, hors de la boîte Donc, parler pour une application Rails - et la configuration de plusieurs bases de données NoSQL avec DataMapper vous donnera des maux de tête.

Avec Sinatra, vous obtenez le meilleur des deux mondes. C'est un langue spécifique au domaine, pas un framework - vous pouvez donc le personnaliser exactement comme vous en avez besoin. Bien qu'il faudra du travail à la configuration, ayant un contrôle complet sur le cadre que votre application utilise est très satisfaisant. Construisez-le à partir de zéro.

Ne vous méprenez pas, j'adore les rails, mais au moment où je dois commencer à jouer avec ses internes, il vaut mieux le construire vous-même avec Sinatra.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top