The question is self explanatory, just to add my thoughts :
As far as I have read, The presentation layer in Clean arch has the same responsibility as in MV in MVP.
How one decides to choose one pattern instead of the other?
Software Engineering Stack Exchange is a question and answer site for professionals, academics, and students working within the systems development life cycle. It only takes a minute to sign up.
Sign up to join this communityThe question is self explanatory, just to add my thoughts :
As far as I have read, The presentation layer in Clean arch has the same responsibility as in MV in MVP.
How one decides to choose one pattern instead of the other?
What Bob Martin called "Clean Architecture" is more a "meta architecture", a high level guideline for creating layered architectures. It does not say anything like
"There must be a Model layer, a View layer and a Presentation layer, and they must be implemented using MVP",
it contains only more general rules for the layers like "dependencies must go from the outer circles to the inner circles, not vice versa". And since in MVP, the View (=UI) might know the Presenter, but the Presenter is decoupled from the View by an interface, MVP is just one of many possible solutions which fulfills this rule.
Of course, one can use MVP inside a "Clean Architecture" system, but this is not the only one correct approach. Any UI design where the "inner layers" do not know anything special about the UI, and where the UI follows also the other "Clean Architecture" rules described in Bob Martin's article will be fine.