Finally we come to the User Interface Layer, logically this can be the simplest part of your application with something like a web service that simply exposes a set of APIs calls to your business layer or by far the most complex part of your application with something like a multi-threaded winform.
The most important thing to remember is just like every other layer, the UI layer ONLY contains UI logic:
- Navigation: One of the most important and visible parts of your application, it doesn't matter how good your content is, if you can’t navigate through it. The basic rules are: Keep it simple, Intuitive, and Consistent if your customers have to think about how to navigate, there is a problem.
- Event Handling: The basic process of taking input from the customer and responding to it appropriately.
- Application State: Keeping track of where the user is and what they are doing can be very complex or fairly simple depending on the type application your working on.
- Displaying: This is basically everything the the user sees from controls to the application output and has the same basic rules as Navigation for the same reasons, if your application is hard to use, your users wont use it.