J'essaie de trouver une convention de dénomination des pages afin que chaque page d'une application Web que je développe ait l'URL la plus conviviale possible. La structure URL actuelle de l'application Web est la suivante:
http://foo.example.com/webapp/pageName
La seule partie de l'URL que je vais modifier est pageName
. L'application est un système CRUD de base et possède une interface utilisateur composée principalement de formulaires et de listes. Il existe des noms de page orientés objet et tâche - par exemple addEvent
, eventManager
, eventReview
, imageUploader
, editEvent
, addItem
, editItem
, bulkAddItems
, bulkEditItems
, etc. Compte tenu de ces contraintes, j'évalue quelques styles d'URL différents pour ces noms de page:
http://foo.example.com/webapp/add-event
, http://foo.example.com/webapp/event-manager
, ouhttp://foo.example.com/webapp/Add-Event
, http://foo.example.com/webapp/Event-Manager
http://foo.example.com/webapp/add_event
, http://foo.example.com/webapp/event_manager
, ouhttp://foo.example.com/webapp/Add_Event
, http://foo.example.com/webapp/Event_Manager
Stack Exchange et Smashing Magazine utilisent un style quelque peu similaire à 2A, par exemple:
- http://ux.stackexchange.com/questions/9093/senior-usability-and-navigation
- http://www.smashingmagazine.com/2011/07/25/email-is-still-important-and-here-is-why/
Wikipedia utilise le style 3B, par exemple:
- http://en.wikipedia.org/wiki/Extreme_Programming
Je penche vers le style 3B. Il met en valeur le nom de la page avec une majuscule, et le trait de soulignement semble être un délimiteur Word plus clair et plus intuitif que le trait d'union.
Qu'en pensent les autres? Dans quelle mesure ces différents styles d'URL se prêtent-ils mieux à l'UX en fonction du type d'application Web (blog, site de questions/réponses, encyclopédie, qu'avez-vous) pour laquelle ils sont utilisés?
Si vous recherchez les URL les plus conviviales pour le référencement qui sont également lisibles par l'homme, je recommanderais d'utiliser toutes les URL en minuscules et avec trait d'union, car c'est ce que Google recommande dans leur documentation des outils pour les webmasters . Cependant, si le référencement n'a pas d'importance pour votre application Web (si, par exemple, tout cela se cache derrière une exigence de connexion), vous pouvez utiliser le suppresseur de votre choix.
Je fortement vous recommande d'éviter les URL de cas de chameau à moins que vous ne soyez prêt, vous acceptez les URL sans capitalisation appropriée aussi ... rien n'est plus frustrant pour un utilisateur que d'être invité à aller à www.example.com/FooBar.html et à obtenir un 404 quand ils tapent à la place www.example.com/foobar.html (et oui, cela se produit vraiment ... certains des anciens systèmes de mon faire ça, et c'est désagréable!)
Les parties de l'URL sous le nom de domaine racine sont généralement sensibles à la casse sur les serveurs Web UNIX et ne respectent pas la casse sur les serveurs Web Windows. Certains les serveurs Web Unix utilisent le module Apache mod_speling pour rechercher un mélange de cas alternatif si l'URL donnée n'est pas trouvée.
Pour réduire la probabilité d'une erreur `` page 404 non trouvée '', vous pouvez créer vous-même une page 404 qui peut mettre en minuscule l'URL non trouvée et vérifier son existence et si elle est trouvée, rediriger la page. C'est une petite fonctionnalité que personne n'a besoin de connaître.
Mais ce petit Tweak sera beaucoup plus difficile si vous avez CamelCase ou MixeD_CasE dans vos URL, car il est facile de tout mettre automatiquement en minuscule - pas si facile de tout mettre en minuscule!
Optez pour 2A. Rendez la vie plus flexible dès le premier jour et réduisez les risques de maux de tête plus tard.