前台和后台功能相同时,代码和模块如何复用?

发布于 2022-08-29 16:29:10 字数 279 浏览 10 评论 0

这里所说的前台是指直接面向用户的网站,后台是指仅仅面向系统管理员的网站。

不管是前台还是后台,操作的都是一个数据库,后台只是具备一些管理的功能。一般情况下前台和后台有大量的功能是重复的。
比如:
前台用户有添加、编辑、修改、删除新闻的功能;
后台管理员也有添加、编辑、修改、删除新闻的功能,还有批量删除、批量审核等功能。

大家是采用怎么的方式尽可能得复用代码的?

如果前台和后台是由2组人马开发的2个站点,是不是应该单独开发一套REST API接口给2组开发人员调用?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

浅紫色的梦幻 2022-09-05 16:29:10

以前写的一篇文章:自己动手设计 PHP MVC 框架

月依秋水 2022-09-05 16:29:10

这是个好问题。

我的想法是:总是按照REST的思想去做事。

首先选定网站的思路,是前后台各起一套,还是前台混杂管理功能+后台补充特权功能。这两种方法都正确,看个人取舍。

但在真正后台接受并请求的部分,记住一定跟着REST的原则走:相同的行为一定是相同的请求方式去实现。

举例:如果是相同的“添加文章”功能,则无论前台用户添加,还是后台管理员添加……

  • 对:均为POST /api/article/add
  • 错:用户为POST /api/user/article/add/,管理员为POST /api/admin/article/add/
  • 对:根据对加文章这件事本身,用户是否有权限进行限权
  • 错:根据用户身份是否是管理员进行限权

记住:对于相同的1个功能,后台开发组只起1套api接口,绝对不允许重复。

至于前台开发组,就跟着网站前台的样子走就好了。前后分离就是两套样式,混杂就是一套样式。

递刀给你 2022-09-05 16:29:10

题主我可以理解为你是这样认为的么?

后端代码已经写了一遍CURD,为何还要在前台再写一遍呢?

功能差不多话,其实代码拷贝过去就行了啊在Controller,如果封装的好的话,Mobel层直接拿上来也可以用了啊,还用纠结重用问题么?

我个人觉得如果网站不是涉及到很深的权限问题的话,不用想得太复杂,直接拷贝Controller再改改好了。

前端的代码重用就涉及到设计上面,这块不讨论了。。。

笑,眼淚并存 2022-09-05 16:29:10

如果已经分开了, 就不要考虑复用了,否则为什么分开呢?
这里有一个回答:
https://softwareengineering.s...

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文