No, not always.
It depends on the application very much, in particular, on its complexity, functional requirements to UI, need in inversion of control (
http://en.wikipedia.org/wiki/Inversion_of_control[
^]) and other factors.
In many cases you would prefer you own home-baked approach. Such cases can be either very simple cases, or on rare occasion, extremely complex ones, where you might use the ideas of the well-known architectural patterns or some combination and add something else. However, I would think in majority of cases one of the well-know
architectural patterns (
http://en.wikipedia.org/wiki/Architectural_pattern[
^]) will be the best.
Anyway, it's good to have good understanding of the following architectural patterns:
MVVM — Model View View Model,
http://en.wikipedia.org/wiki/Model_View_ViewModel[^],
MVC — Model-View-Controller,
http://en.wikipedia.org/wiki/Model-view-controller[^]),
MVA — Model-View-Adapter,
http://en.wikipedia.org/wiki/Model–view–adapter[^],
MVP — Model-View-Presenter,
http://en.wikipedia.org/wiki/Model-view-presenter[^].
—SA