社区
基础编程
帖子详情
对于OOP的方法归属有点疑惑.高手指教一下吧
maskdata
2011-02-23 10:13:46
比如某个论坛程序如果采用OOP方式进行设计
在创建类库的时候.有一个user类(用户类)和一个topic类(话题类)
然后有一个新增话题的方法(fn).那么这个fn应该属于哪个类呢?
用户可以增加帖子.而帖子可以被用户增加.
所以这个方法是应该属于user类中的一个方法.还是topic类中的一个方法呢?
因为用户类内可能有注册和登录方法.而话题类可能有获取话题列表和话题详情的方法
就是这种涉及2个对象关系的方法总是有点迷惑
...全文
171
6
打赏
收藏
对于OOP的方法归属有点疑惑.高手指教一下吧
比如某个论坛程序如果采用OOP方式进行设计 在创建类库的时候.有一个user类(用户类)和一个topic类(话题类) 然后有一个新增话题的方法(fn).那么这个fn应该属于哪个类呢? 用户可以增加帖子.而帖子可以被用户增加. 所以这个方法是应该属于user类中的一个方法.还是topic类中的一个方法呢? 因为用户类内可能有注册和登录方法.而话题类可能有获取话题列表和话题详情的方法 就是这种涉及2个对象关系的方法总是有点迷惑
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
SICTXK
2011-02-24
打赏
举报
回复
可以拿出来写,两个都不放。哪里需要时requrie一下。
helloyou0
2011-02-24
打赏
举报
回复
[Quote=引用 3 楼 maquan 的回复:]
一个简短的回答:都行。
稍微长一点的回答:这事儿没有一定之规。
^_^
如果你的 user / topic 这两个类是指实体类(类似于 EJB 里 EntityBean 的概念),那其实用哪个都不合适。如果是指工具类(类似于 EJB 里 SessionBean 的概念),用哪个都可以,甚至可以专门构建一个。真正要追求的目标是“解耦”,代码之间尽量减少复杂的、交叉的依赖引用。
[/Quote]
同意,
首先: 都行 :)
其次: 可以设想一下放在不同地方的后果:
尽量让代码更易于理解,
更少的code, 更少的参数,
更少的对其它对象的引用
maquan
2011-02-23
打赏
举报
回复
一个简短的回答:都行。
稍微长一点的回答:这事儿没有一定之规。
^_^
如果你的 user / topic 这两个类是指实体类(类似于 EJB 里 EntityBean 的概念),那其实用哪个都不合适。如果是指工具类(类似于 EJB 里 SessionBean 的概念),用哪个都可以,甚至可以专门构建一个。真正要追求的目标是“解耦”,代码之间尽量减少复杂的、交叉的依赖引用。
张吉Jerry
2011-02-23
打赏
举报
回复
user类用来操纵用户,如添加用户、修改用户信息;
topic类用来操纵话题,在addTopic()的时候将user类当做参数传进去就行。
程序猿之殇
2011-02-23
打赏
举报
回复
单纯的应该放到topic类里
用户类里如果有涉及添加话题的操作,直接调用$topic->fn()就可以了
aspectjrt.jar,aspectjweaver.jar
AOP是一种编程范式,旨在解决传统
OOP
中难以管理的横切关注点(cross-cutting concerns),如日志、事务管理、性能监控等。在AOP中,这些关注点被封装成独立的模块——切面(aspect),并在合适的时间点自动应用到多...
一个简单的CAD软件
这个软件是我几年前作的, 基与当时水品有限, 所以现在看来, 某些地方不够完善, 比如
OOP
编程的优点没充分利用,现在放上来, 是希望套用国外自由软件的思路, 请大家共同研究,提改进意见, 并且共同开发, 从而...
从程序设计
方法
学的角度比较 SP
方法
与
OOP
方法
从程序设计
方法
学的角度比较 SP
方法
与
OOP
方法
整理自 https://wenku.baidu.com/view/e2737ac684254b35eefd3491.html 文章目录从程序设计
方法
学的角度比较 SP
方法
与
OOP
方法
1. 引言2. SP
方法
3.
OOP
方法
4. SP
方法
与...
OOP
与AOP的区别与联系
面向对象的编程(
OOP
)
方法
是在面向过程的编程
方法
基础上进行的改进,而面向方面编程(AOP)
方法
又是在面向对象编程(
OOP
)
方法
的基础上进行改进而来的一种创新的软件开发
方法
。 1、区别: 面向领域不同 AOP...
PO
OOP
AOP IoC SOA全解
OOP
(Object Oriented Programming,面向对象编程):程序由单个能够起到子程序作用的单元或对象组合而成。
OOP
达到了软件工程的三个主要目标:重用性、灵活性和扩展性。为了实现整体运算,每个对象都能够接收信息、...
基础编程
21,891
社区成员
140,346
社区内容
发帖
与我相关
我的任务
基础编程
从PHP安装配置,PHP入门,PHP基础到PHP应用
复制链接
扫一扫
分享
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章