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

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.

主站蜘蛛池模板: 九寨沟县| 新源县| 民县| 红原县| 泰来县| 鄢陵县| 嘉兴市| 南康市| 缙云县| 巴彦县| 双柏县| 弥渡县| 常山县| 湟中县| 宜川县| 铁岭市| 巴彦淖尔市| 嘉鱼县| 靖宇县| 玉门市| 宜城市| 逊克县| 鹰潭市| 紫阳县| 万州区| 尚义县| 凤山县| 平遥县| 潢川县| 新源县| 阳信县| 慈利县| 藁城市| 文水县| 江西省| 衡阳县| 韶山市| 广德县| 台山市| 铜川市| 富川|