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

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.

主站蜘蛛池模板: 闽侯县| 桦南县| 合江县| 邵武市| 日土县| 夹江县| 南岸区| 阿坝县| 大城县| 宣化县| 永宁县| 岢岚县| 台北县| 嘉峪关市| 大港区| 辉南县| 龙里县| 东莞市| 衡阳市| 武冈市| 探索| 县级市| 扎囊县| 枝江市| 宁河县| 婺源县| 乌恰县| 玛曲县| 浦东新区| 屏山县| 武强县| 汝南县| 乌拉特后旗| 米泉市| 临沭县| 北川| 临沭县| 濉溪县| 庆城县| 金湖县| 汉阴县|