上一节我在每个项目环节都介绍了一下对应的设计思路,这一节我将在想法整理、产品原型设计、数据库选用、缓存服务选用四个方面展开介绍一下我的具体实践措施。
想法整理
最初的想法大致成型之后,一定要记录笔记,我用的是 OneNote。
使用 OneNote 的原因主要在于习惯吧,因为过去几年以来一直都是使用 OneNote 记录笔记,但是由于近期频繁使用笔记软件,逐渐发现 OneNote 的一些缺点:笔记层级是固定的,又因固定层级导致某些笔记无法细分,所以都记录在同一个笔记内,导致笔记较为杂乱。
现在我在尝试更换到有道云上记录笔记,有道云的层级是可以无限嵌套下去的,解决了我最大的困扰,目前暂时没发现不好用的地方。
对于笔记软件的选择,使用自己习惯的笔记软件记录就行,主要目的是将你最初的想法记录下来,作为后续项目推进的一个参考标准。
往往最初想法和最终实现都是有一定差距的,比如:
- 用户模块,我一开始设计使用邮箱注册、登录时,验证邮件可以配置成验证链接
也可配置成邮件内包含验证码
但是后来代码写完之后,我发现发送验证链接的方式,一定会是跳转到一个网页,在后续的回调流程会相对比较麻烦,因此我把这部分功能删除了
- 自建内容,我一开始设计后台管理页面有一个编辑富文本的页面,用于维护平台原创文章。但是兴趣点详情页面在设计上是支持外部资讯的,所以我后来放弃了自建内容的想法,如果真的有需要发布原创文章,我完全可以在其他平台发布,然后用外部引用的方式维护到数据库中
- 小程序套壳,一开始我是想通过小程序嵌 H5 页面的方式,来增加入口的,但是由于泉州旅游指南项目需要跳转到外部 H5 页面,因此只能放弃小程序套壳的想法
- MAUI 套壳,MAUI 是微软的跨平台 APP UI 框架,本来我想把 H5 页面用 MAUI 技术封装成 APP,但是由于 MAUI 的 WebView 默认不打开定位权限,所以泉州旅游指南部分页面无法正常使用。MAUI WebView 支持定位的解决方案应该是有的,但是鉴于我对 MAUI 不是特别熟悉,也暂时未打算去学习,因此暂时放弃
最初的想法肯定存在过度理想、欠缺考虑的问题,但是及时记录下来,后续随着项目的推进再进一步调整想法即可。
产品原型设计
产品原型设计的目的和记录最初想法差不多,就是为了把你最开始想要实现的 UI 记录下来。我使用的是摹客 RP 。
当然,如前所述,你可以用你喜欢的软件、方式去记录。
数据库选用
数据库基本就是从开源数据库里选择一款你比较熟悉的使用,正如上一节所说,我建议自己买台云服务器手动搭建,因为这能节省很多成本。
机器配置方面,我建议选购 2G2C 及以上的配置,主要看你的使用量,够用就行。
云平台的选择,首选你自己常用的平台,比如很多人其实一开始接触云平台都是阿里云,然后可能也已经在阿里云上多多少少有一些机器、服务了,我现在建议你换成腾讯云、Azure 之类的,你也未必真会换,因为换平台真的挺麻烦的。
我个人使用的是腾讯云,因为一直以来腾讯云的价格都是比较低的,我自己也用了好几个年头了,我用来搭建数据库的机器是 2G2C,CPU 是 AMD 的,不要问我为什么,问就是便宜省钱。
缓存服务选用
这个就不多说了,选一个自己常用的服务,和数据库装在同一台机器上,这台机器作为基础设施服务器,问就是省钱。
最后
下一节我将开始介绍后台管理系统的搭建,也许你会惊讶于使用 Amis 搭建后台管理系统的速度。