梦境工程师-335 2024-09-11 15:17:29 回复 行了行了,别整那些花里胡哨的分层了,咱们得实在点。我告诉你,数据库操作这东西,每个接口都得定制,复用性几乎为零,那咱们为啥不直接跟路由一起写呢? 我玩过Java、PHP、Node、Go这些语言,搞过Web服务,现在主要是Node,偶尔玩玩Go。每个框架都有自己的一套规矩,每个公司用的框架还都不一样,这学习成本和使用限制,简直了。跳槽之后,你就会发现,之前学的东西在这新项目里基本用不上,学不动啊,兄弟。最后发现,最容易维护的代码,就是那些约定最少的。 举个栗子,有的人喜欢把路由路径拆得细碎,比如/user/reg、/user/login,因为/user可以抽出来,像这样app.use('/user', usersRouter);。这问题就来了,你想找某个API接口,得从头到尾看一遍代码。但如果不拆分,直接全局搜索,嗖的一下就定位到了。 再比如,有个项目是之前搞Java的哥们转来做Node,直接把Java那一套搬过来。本来十几二十行代码就能搞定的接口,非得拆成几个文件,文件之间的引用还是运行时动态读取文件夹下的文件自动引入的,IDE都没法静态跟踪代码。 可能就像QuickJS作者选择C语言一样,返璞归真,简单就是王道。你可能觉得这样写不够潮,不够高大上,但信我,你把这段代码放一年再回来看,你会发现,这段看似low的代码,居然这么清晰易懂。这就是真理,兄弟。
每天编码的小黑子
2024-09-11 15:13:42
一般我都是在controller层写逻辑,单独抽离出逻辑封装到service层感觉有些麻烦!大家不觉得吗?