问一个简单的功能模块划分的问题

2015-07-26 11:16:57 +08:00
 hellogbk

如果有 用户 跟 文章 这两个模块。

那么 查看用户所发布的文章 这个功能,应该算到用户这个模块里面还是算到文章这个模块里面?
为什么呢?

谢谢大家。

2174 次点击
所在节点    程序员
5 条回复
yakczh
2015-07-26 11:42:46 +08:00
文章模块 "查看"这是是主观的表达, 从客观上说,这个功能操作的是文章的数据主体, 或者换种说法是文章"显示"功能, 归到哪个模块的依据,主要看大部分的业务代码是操作哪个表
bramblex
2015-07-26 17:20:42 +08:00
你觉得文章的搜索是用户模块的还是文章模块的?

用户发文章的记录可以看成按用户搜索文章不是么?
lyning
2015-07-27 00:01:29 +08:00
你的意思是说,"查看"这个行为,或者叫做方法、函数应该写在用户的数据访问层(数据库操作),还是文章的数据访问层吗?如果是这个意思的话,你要根据这个项目来分,如果文章的数据库操作行为很多,那就写在文章里面,跟用户模块分开,减少耦合度,方便维护,反过来,如果文章涉及到数据库访问的行为比较少,你完全可以写到用户模块里去,这也方便维护,方正规矩是死的,看你怎么灵活应用
zjqzxc
2015-07-27 00:49:28 +08:00
文章。说白了这个功能就是一种带附加条件的查询文章列表嘛。
比如正常的查询工作是SELECT title FROM article WHERE keys=xxx
这个的查询大概就是 SELECT title FROM article WHERE user=xxx
如果把查询都归到用户模块感觉不太合适吧
flyingghost
2015-07-27 23:13:42 +08:00
如果你是产品狗,从功能来说(基本等同于从UI交互来说):
查看我的文章列表,查看某人的信息->TA的文章列表,都是属于用户模块。
查看某人的文章列表,与其说是文章模块,不如说是搜索模块更常见一些。

如果你是程序猿,从逻辑实现来说:
以上所有情况,妥妥的属于“文章”模块,如果你有这个模块的话。
理由是:文章表变更的时候,或者文章模块重构的时候,这部分逻辑要一起动。而userid,仅仅是个参数而已。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/208397

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX