业务笔记
在数据库中存表情
什么时候选择前后分离,什么时候选择数据绑定?
通常我们经常说前后分离比数据硬绑定来得优雅,来的方便,however,不同的方式有不同的业务需求。
举个例子:对于app的个人用户界面,如果采用前后分离调接口的方式,那么会出现界面加载完毕,而数据后加载,也就是说:我本身已经登录了这个app,在下拉后有短时间的==请登录==三个字停留,这样用户体验是相当不好的,至少用户对你这个系统的稳定性、公司的稳定性和安全性产生了怀疑,让用户抱着怀疑的态度用你的产品,如果你的产品不是特别刚需和具有独特性,可能你就宣布GG了。
举例二:比如你的文章列表和文章界面使用了前后分离,即使是数据后显示出来,这样也是合情合理的,因为用户可能认为数据过大,后加载也很正常,那么用户能接受,也能理解,这种情况下,使用前后分离是比较合适的。
所以,目前简单总结下:
- 如果前后分离对用户的认知没有挑战的,可以使用前后分离
- 对于多文本类型的使用前后分离
- 对于使用前后分离挑战用户体验和信任的,可以使用前后分离,但是要处理好数据与模版之间的显示关系,否则应当换种其他方式,比如数据硬绑定,这样数据也来的安全。
在项目开发中为什么不使用golang=>前端,而使用golang=>.net=>前端?
声明:
golang主要做数据接口方面,为了方便理解,可以粗暴的理解为:读取数据
.net:这里主要是做控制层的东西,调接口,绑数据。
前端:这个不用说了吧
当只使用golang和前端的时候
- golang的模版渲染是一直被人所诟病的,这是其一。
- 其二,js的代码是可见,那么golang的接口就直接被暴露在外面,安全性不能得到保证。
使用golang=>.net=>前端的时候
- 使用.net的最主要的原因是:对golang后端的数据接口做一次转发,这样golang的数据接口能够很好的隐藏起来。
- 使用.net后,可以在控制层做不同的安全验证,这样就尽量把不符合要求的请求拦截在上一层,这样也降低了后面的压力。
- 同时也解决了golang模版渲染的毛病。