官术网_书友最值得收藏!

What is an application framework?

In the simplest terms, an application framework is comprised of a library of classes that, together, provide the most common functionality required by an application. By using an application framework, we can vastly reduce the amount of work and time that is required to create the various parts of the application. In short, they support the future development of the application.

In typical three-tier applications, the framework often extends through all layers of the application; the Presentation Layer, the Business Layer, and the Data Access Layer. In a WPF application using the MVVM pattern, we can, therefore, see aspects of the application framework in all three components of the pattern; the Models, the View Models, and the Views.

Apart from the obvious benefits of the reduced production times and effort involved in creating our application components, application frameworks also provide many additional benefits. Typical application frameworks promote reusability, which is one of the core aims of Object-Oriented Programming (OOP). They do this by providing generic interfaces and/or base classes that can be used to define the various application components.

By reusing these application framework interfaces and base classes, we also instill a sense of uniformity and consistency throughout the application. Furthermore, as these frameworks generally provide additional functionality, or services, the developers working on the application can save further time when requiring this particular functionality.

Concepts like modularity, maintainability, testability, and extensibility can also be realized by using an application framework. These frameworks often come with the ability to run individual components independently of each other and this fits WPF and the MVVM pattern extremely well. Additionally, application frameworks can also supply patterns of implementation to further simplify the process of constructing new application components.

Different frameworks are created for different technologies and WPF already have a few publicly available. Some are relatively lightweight, like the MVVM Light Toolkit and the WPF Application Framework (WAF), while others are more heavyweight, like Caliburn.Micro and the now open source Prism. While it is likely that you may have used one or more of these frameworks at work, instead of investigating these in this chapter, we'll look at how to create our own lightweight custom framework, that will implement just the features that we need.

主站蜘蛛池模板: 威远县| 来宾市| 台湾省| 普洱| 巴楚县| 新竹县| 秦安县| 彩票| 收藏| 宜州市| 当涂县| 屯留县| 莎车县| 张家界市| 景洪市| 鹤山市| 安远县| 虎林市| 黄陵县| 宜春市| 库车县| 铅山县| 延川县| 科技| 商水县| 伊吾县| 乳山市| 勃利县| 墨竹工卡县| 石狮市| 孟州市| 连平县| 淄博市| 丰顺县| 遂平县| 休宁县| 彰化市| 大关县| 开平市| 卢湾区| 江源县|