哈楼,我是老刘
我们现有的前后端分离的架构并不是一开始就这样,也是随着软件工程的发展,逐步演化来的。
而之所以变成这样,一个很重要的作用就是前后端技术栈的解耦。
所以前端可以不关心后端是用什么技术实现的,只需要调用后端的API,处理返回数据即可。
同样,后端也不用关心前端的实现,甚至不用关心前端是网页还是App。
对于后端与数据库来说也是这个道理。
所以,老刘觉得不应该有什么标配,做好解耦,在需要的时候可以切换技术栈而对其它端没有影响,应该才是好的系统和好的架构。
当然,即使不影响其它端,这种切换本身也会带来巨大的迁移成本。
就比如老刘四年前在客户端中加入Flutter,不需要考虑后端是否会受到影响
但是站在客户端的角度,也确实用了后几个月的时间才逐步趋于稳定。
所以,这种前后端的框架和语言选择其实没有什么相关性,各种组合都可以的。
但是有一种组合会很有意思,就是前端用Flutter,后端用Dart。
倒不是说这种组合在性能或者功能上有多大优势,关键是架构上看很合理。
看一下Clean架构
如果前后端的编程语言统一用Dart
是否架构的核心两层,完全可以使用统一的一套实现?
这样从业务逻辑的角度来看,可以保证高度的一致性。
当然具体实施起来,不同的代码放到哪一层合适,如何避免前后端修改相互影响,还是有很多细节需要权衡的。
点击免费领老刘整理的《Flutter开发手册》,覆盖90%应用开发场景。
可以作为Flutter学习的知识地图。