Design and Implementation of plug-in GIS application framework 1.1.1 introduction to Application Framework

Source: Internet
Author: User
1. Enter the plug-in GIS application framework

1.1 Application Framework

1.1.1 application framework Overview

"Framework (FrameworkIs a reusable design of all or part of a system. It is usually composed of a group of abstract classes and classes"1.

The development of software products is a complex system engineering. As the complexity of the problems to be solved increases, the software product R & D process has evolved from the past "Workshop-style" development to today's compliance with a series of industrial standards and specifications. The specific application requirements of software products have become increasingly diversified, and the scale of software project development has become increasingly large. These two factors make the management of software development teams increasingly complex, the Controllability of software development projects becomes increasingly unstable.

To find the silver bullet ",ItThe industry has adopted a variety of methods, including the development of various software development standards and specifications and the creation of highly productiveProgramming Language, Develop a better compiler and Runtime (Runtime) To provide a more powerful component library and explore a better software development model. But for ApplicationsProgramFor members, various standards, specifications and emerging programming languages are not within their control. In most cases, we can only start from the perspective of software engineering, at the design level, we adopt some unique software architecture and design patterns to achieve the following objectives we expect:

NImprove software reusability as much as possible to avoid unnecessary repeated coding;

NEnhance component encapsulation;

NImprove software modularization;

NSeamless integration between different functional modules;

NThe software has flexible scalability;

NScalability and development of software products are standard;

NSoftware products have the advantages and portability for different application layers.

To meet these requirements, more and more software products begin to adopt the application framework (Application FrameworkIdea for software structure design. Application Framework is a widely used term and has become a very practical and common programming specification and design architecture in software development.

We must have seen many software products that claim to be "frameworks". Some may feel disdainful and fewCodeDoes a program call itself a certain form of application framework? In fact, the application framework has nothing to do with the size. Like a house, a skyscraper and a bucket are both houses, but their scale and sophistication are quite different.

However, in any case, a software product qualified as an "Application Framework" must reflect the essential characteristics of the application framework, that is, it can provide an associated and coordinated Context Environment (Context) And specific work modes (Work Model) For access and compliance by framework users. The Application Framework provides programmers with templates and general methods for developing application components, and hides the running and coordination processes of application components in the framework background. Programmers will "cook" the functional components they need with "instructions" and "cooking ingredients" without worrying about whether the "pots and pans" are missing or damaged. In this way, developers will be able to focus more on the code implementation of specific application logic, without having to worry about other aspects, reducing the workload and distractions.



1 Johnson r e. Frameworks = (Component + patterns) [J]. Communication of the ACM, 1997,40 (10): 39-42

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.