分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 代码编程

设计模式:6大设计原则(PHP版本)

发布时间:2023-09-06 01:44责任编辑:胡小海关键词:PHP

1.单一职责

单一职责原则的英文名称是Single Responsibility Principle,简称是SRP,单一职责原则的定义是:应该有且仅有一个原因引起类的变更。

  

样例1:将用户管理拆分为两个接口,IUserBO负责用户的属性,简单地说,IUserBO的职责就是收集和反馈用户的属性信息;IUserBiz负责用户的行为,完成用户信息的维护和变更

<?php ???/** ????*Business Object(业务对象),负责用户收集和反馈用户的属性信息 ????*/ ???interface IUserBo{ ???????function setUserId(/* String */ $userId); ???????function getUserId(); ???????function setPassword(/* String */ ?$password); ???????function setUserName(/* String */ ?$userName); ???????function getUserName(); ???} ???/** ????*Business Logic(业务逻辑),负责用户的行为,完成用户信息的维护和变更 ???*/ ???interface IUserBiz{ ???????function changePassword(/* String */ ?$userId, /* String */ $password); ???????function deleteUser(/* IUserBo */ $userBo); ???????function mapUser(/* IUserBo */ $userBo); ???????function addOrg(/* IUserBo */ $userBo, /* String */$orgId); ???????function addRole(/* IUserBo */ $userBo, /* String */$roleId); ???} ???/** ????*Business Logic (业务逻辑),负责处理用户的行为 ????*/ ???interface IUserInfo extends IUserBo, IUserBiz{ ???} ?class UserInfo implements IUserInfo(){ ?}

  样例2:

    

 ???/** ????*Business Object(业务对象),负责用户收集和反馈用户的属性信息 ????*/ ???interface IUserBo{ ???????function setUserId(/* String */ $userId); ???????function getUserId(); ???????function setPassword(/* String */ ?$password); ???????function setUserName(/* String */ ?$userName); ???????function getUserName(); ???} ???/** ????*Business Logic(业务逻辑),负责用户的行为,完成用户信息的维护和变更 ???*/ ???interface IUserBiz extends IUserBo{ ???????function changePassword(/* String */ ?$userId, /* String */ $password); ???????function deleteUser(/* IUserBo */ $userBo); ???????function mapUser(/* IUserBo */ $userBo); ???????function addOrg(/* IUserBo */ $userBo, /* String */$orgId); ???????function addRole(/* IUserBo */ $userBo, /* String */$roleId); ???} ?class UserBo implements IUserBo { ?} ???class IUserBiz implements IUserBiz{ ?}

设计模式:6大设计原则(PHP版本)

原文地址:https://www.cnblogs.com/onlycat/p/8492480.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved