Clean Architecture Pattern
The Clean Architecture Pattern, in its simplest terms, means to write a clean code, by separating it into layers, with the outer layer being your implementations and the inner layer being the business logic. An interface connects these two layers, controlling how the outer layers use the inner layers.
This kind of code architecture pattern is also known as Onion Architecture because of its different layers, as seen in the following figure:

Figure 2.2.4
The inner layers have no idea about the outer layers. The outer layer uses the components from the inner layers based upon its needs, meaning the outer layers are dependent on the business logic implementations of the inner layers. Hence, the dependency points inwards.
Understanding the layers of Clean Architecture
Understanding the various layers present in this architecture helps to achieve a code implementation that is clean and independent. I will outline the layers in the figure, but focus more on the Clean Architecture...