- Mastering Windows Presentation Foundation
- Sheridan Yuen
- 380字
- 2021-06-24 16:49:05
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.
- Learning LibGDX Game Development(Second Edition)
- Learning Python Web Penetration Testing
- Spring 5.0 Microservices(Second Edition)
- 企業(yè)級(jí)Java EE架構(gòu)設(shè)計(jì)精深實(shí)踐
- Building Modern Web Applications Using Angular
- Visual Basic程序開(kāi)發(fā)(學(xué)習(xí)筆記)
- Visual C++串口通信技術(shù)詳解(第2版)
- PHP 編程從入門(mén)到實(shí)踐
- Java Web開(kāi)發(fā)技術(shù)教程
- INSTANT Django 1.5 Application Development Starter
- App Inventor創(chuàng)意趣味編程進(jìn)階
- 深入理解C指針
- Spring 5 Design Patterns
- SEO教程:搜索引擎優(yōu)化入門(mén)與進(jìn)階(第3版)
- C# 7.1 and .NET Core 2.0:Modern Cross-Platform Development(Third Edition)