Three major entry points for software development

Source: Internet
Author: User
In the world of software, what really matters is thought, not the tool itself.

1: ApplicationProgramFramework:

In addition to the "net, MFC, ATL, Owl (C ++ builder Library), Windows API ",

In fact, there are many application frameworks such as QT and Java, all of which are cross-platform libraries.

However, for all the application framework libraries, their corresponding class names and functions may be different, but their corresponding

The core idea is the same: a combination of tree-like UI window components that can be combined at any level,

The widget notifies external applications through the event mechanism.

And they are all committed to solving some common computer problems, such as serialization, runtime type recognition,

Exception Handling, message routing, generic consistent indirect function call invoke etc.

The UI provides a series of basic elements such as menus, toolbar, and dialog boxes.

Understand this. Not all frameworks are the same.

2: View display, data definition,Algorithm

In fact, in a hierarchical design system, the UI and application framework transmit the original mouse and keyboard messages

In fact, the workload at the logic business layer usually accounts for about 1/8 of the work in a large system, and the entire technology

It is not difficult. The remaining view, data, and algorithms are the core of the software.

3: Software Architecture Design

In addition, the software framework design concept is completely unrelated to the application framework,

It can only be implemented with the help of C ++ features (encapsulation, inheritance, polymorphism.

Here I also want to talk about the fact that many of our good designs can be used directly with the good design of many good libraries for flexibility.

Apply to our system: for example, the Com idea, the implementation method of ATL to implement COM

STL ideas and implementation techniques, such as MFC, wtl, and owl.

Com is really a good thing. Maybe you will never actually Use ATL or MFC for com, however, you can build a large, flexible, and large system based on the idea of COM.

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.