Usability expert Jakob Nielsen (www.useit.com) urges developers to pay attention to URLs and provides the following guidelines for high-quality URLs. You should provide:
- A domain name that is easy to remember and easy to spell
- Short URLs
- Easy-to-type URLs
- URLs that reflect the site structure
- URLs that are hackable to allow users to move to higher levels of the information architecture by hacking off the end of the URL
- Persistent URLs, which don't change
Traditionally, in many web frameworks such as Classic ASP, JSP, PHP, and ASP.NET, the URL represents a physical file on disk. For example, when you see a request for http://example.com/albums/list.aspx, you can bet your kid's tuition that the website has a directory structure that contains an albums folder and a List.aspx file within that folder.
In this case, there is a direct relationship between the URL and what physically exists on disk. A request for this URL is received by the web server, which executes some code associated with this file to produce a response.
This 1:1 relationship between URLs and the filesystem is not the case with most MVC-based web frameworks, such as ASP.NET MVC. These frameworks generally take a different approach by mapping the URL to a method call on a class, rather than some physical file.
As you saw in Chapter 2, these classes are generally called controllers because their purpose is to control the interaction between the user input and other components of the system. And the ...