We have come to the third layer of product construction: the composition layer. In the following pages, we will discuss the composition together.
Object-Oriented Product View (4): The Mystery of Composition
Starting with the composition, we will start to discuss the HOW problem to understand how to build a product.
1. What is a combination
At the abstraction layer, we obtain the product vision, and at the decomposition layer, the vision is decomposed into many functions. Then in the composition layer, what we need to do is to assemble many functions in a certain way.
Countless parts are disassembled during disassembly, and assembly is to combine these parts into a machine that can function normally. The combination layer determines the specific structure of a product. A good structure can be as high as a skyscraper, reaching the sky straight into the sky; a bad structure is like a rural earth building, with a maximum of 3 floors, and it will crumble further up.
The basis for the combination
On what basis do we rely on combining parts into functioning machines? Based on use cases and scenarios.
Why them? A collection of related features of a product. The use of products by users is a long-term process, and the process of use will inevitably involve multiple scenarios and multiple different use cases. Therefore, combining according to the use cases and scenarios when users use the product is the normal way of combining a product structure.
Third, the combined process
The assembly process is divided into: building a shelf and assembling components.
1. Put on a shelf
The shelf is the most basic framework of a product, which consists of the "first-level modules" of the product. The so-called first-level module and the use case are related to each other, in fact, the use case is abstracted into a country email list simple functional concept. Such as business list, shopping cart, personal center, etc.
Building a shelf is to arrange and combine all the first-level modules. The shelf determines the most intuitive form of your product and the boundary of the product.
When building a shelf, pay attention to designing first-level modules according to functional classification. Generally speaking, the basic functions are in a separate category; the core functions are in a separate category, and some necessary functions and auxiliary functions can also be attached; the necessary functions are generally combined with the core functions into one category, and sometimes they can also be in a separate category.
A good shelf needs to meet the following conditions: ease of use, stability and scalability.
Ease of use: The first-level module needs to be completely related to the use case, and each first-level module is an abstraction of a complete use case.
Stability: A good underlying architecture can be used for a long time without major modifications for a long time in the future. Any changes to the underlying architecture will require users to spend a lot of time to adapt, which will greatly harm the user experience of the product.
Scalability: This one is closely related to stability. In fact, a stable architecture is almost equivalent to a scalable architecture. No product can be static, and certain functions will be added or removed in future iterations. A scalable architecture can well meet such requirements.
So is there any architecture on the market that can perfectly meet all my requirements? Have! It is WeChat that everyone is using.
Object-Oriented Product View (4): The Mystery of Composition
The perfect architecture that hasn't changed in 7 years
As shown in the picture above, the first-level module of WeChat has been the above four King Kong since 2012. Except for the replacement of Moments with Discovery in 2013, there has been no change for more than 7 years.
In the past 7 years, the functions of WeChat have undergone tremendous changes, from a simple chat tool to a super APP that affects all aspects of people's lives. But the underlying architecture is still these four big kings, and in the foreseeable future, these four big kings will still occupy the bottom of WeChat.