Als Architekt, so dass die Anwendung, die ich bauen werde ein REST-konforme URL-Schema hat, die die Domäne genau darstellt, möge ich einen Weg Konvention zu erzwingen, die die folgenden Eigenschaften hat:Wie kann ich URL-Konventionen für meine Webanwendung erzwingen?
- Grube Erfolg (einfacher für Entwickler es richtig, als es falsch zu tun)
- folgt Klasse Konvention, es sei denn, es nicht der Fall ist, in welchem Fall es overridable
- Routen gespeichert sind, an einem zentralen Ort in der Codebasis
- nimmt ist Vorteil type system (stark typisierte Controller-Aktionen anstelle der Überprüfung von Anfragevariablen fo r Parameter innerhalb der Aktion)
- versionierbar
Meiner Erfahrung nach Klassennamen und Aktion Namenskonventionen auseinander fallen schließlich (das Domänenmodell des Objektmodell nicht genau folgen, oder Entwickler finden es schwierig, zu debuggen Routen), und die Anwendung kehrt zum Attribut-Routing zurück. Das Attribut-Routing hat eine Reihe von Nachteilen und kann zu einer Wild-West-Umgebung werden, in der mehrere URL-Stile zusammenwachsen.
Was gibt es da, um dieses scheinbar häufige Problem zu lösen?