首页 > 解决方案 > 函数的职责

问题描述

我在 PHP 上编写一个函数,在编写函数时有一件事让我感到困惑。描述函数职责的最佳方式是什么?

function createWallet(int $userId) {
  // validate if user exists
  //create wallet
}

or
**client will validate if user exists then call createWalletFunction
function createWallet(int $userId) {
  //create wallet
}

标签: functionoopsingle-responsibility-principle

解决方案


根据 SOLID Principal 的说法,每个类/函数/方法应该只有一个职责,所以我建议后面的选项,客户端应该调用该方法来验证用户,并在成功时调用 createWallet() 方法。如果用户未经授权,这也将受益,然后客户端可以通知某种消息。


推荐阅读