个人博客系统开发 & 成长
Published on Dec 22, 2022, with 56 view(s) and 0 comment(s)
Ai 摘要:本文介绍了个人博客系统的开发过程,分享了开发中遇到的困难与收获。作者详细阐述了系统的功能设计、技术选型及实现过程,包括前端界面、后端逻辑和数据库搭建等。开发中遇到了技术难题和性能优化问题,通过查阅资料和实践逐步解决。整个项目不仅提升了作者的技术能力,也加深了对系统架构的理解,为后续开发积累了宝贵经验。

一. 项目背景与成果:

个人博客项目开始于2022年10月8日,当时学校仍然处于疫情风控期间。实际完成1.0版的时间是在当年的11月10号,2.0版于12月3号,比预估时间推迟了半个月。

开发初衷是为了巩固串联所学知识,同时拥有一个属于自己的个人笔记库。所以项目很少引用一些现成组件库,从0到1,从UI到部署开发。博客使用vue3+ts,node+express+mysql去完成项目的开发,后期出于服务端渲染的需要又使用了nuxt3对博客对前台进行了重构。

项目致力于简洁轻量,无论是从其页面UI还是从代码角度都达到了目标的要求。能够很好地满足日常书写要求。项目前台首页加载时间在没有使用cdn的情况下从1.0地平均11s到后来的平均6s左右也达到了要求。此外项目还有良好的SEO优化,能够使更多的优质文章能够得到用户的阅读。

二. 项目开发基本过程与重难点:

1、初期 UI 设计,通过查看大量的优质博客样式最终确定了自己的 UI。 2、技术选型,主要以较新的技术为主,主要是想培养一下对新技术的快速上手能力。 3、需求分析、数据库与数据库 ER 图设计。Api 设计严格遵循 Restful 规范。 4、项目结构搭建与前后端项目文件规范制定,包括 Eslint 规范 和 Git 提交规范。后端采用 MVC 软件架构设计模式。 5、日常业务开发。 6、部署与日常bug修复。

难点:项目优化 1、首屏加载速度优化:首页图片懒加载与图片压缩,数据分页,插件按需引入。 2、页面的响应式优化:通过 flex 和 媒体查询实现了手机,大屏显示器,平板,笔记本电脑的适配。 3、CDN 加速:通过把一些用到的图片文件,静态资源文件等放到免费的云 CDN 服务器上,优化页面图片加载速度。 4、SEO:使用 Nuxt3 时,通过配置每个详情页面的 关键字与描述,利于搜索引擎爬取,从而利于SEO。

三. 项目结构介绍:

左--->右:前台,服务端,后台管理

Description

这个大家都能看得懂,不过多赘述。

四. 项目中发现的不足与努力方向:

1、开发过程中没有做好记录,零零散散的笔记自己都懒得看。 2、项目开始之前没有对需求做好整理,想到哪做到哪,导致数据库在后期有很大变动,非常影响开发效率。 3、在项目结束短时间内没有做好项目复盘,时隔两个月的复盘也是很多解决方案需要很长时间回想。

五. 项目优化方向:

1、后台管理端年度计划模块。 2、评论自动审核,回复通知到人。 3、相关问题