不知不觉间,又是一年三月五日。
不知不觉间,离 SparkHome 这个项目的诞生,已经整整过去两年。
这个项目是我正式成为一位 “Developer” 的标志,也是我所有现代应用项目的起点。 因此,在与她度过的第三个年头到来之际,我以此文回顾近一年来在开发方面的历程与进步。
项目动态
首先,自然是关于这个项目本身的动态。
大概是在农历癸卯年(2023 年)新年伊始,我着手用 React 重构这个项目。 彻彻底底的重构,一边学习 React,一边更新代码,补全功能,努力向现代项目开发的流程与模式跟进。
按照原本的计划,23 年的暑期结束,这个项目至少应该是重构完成,功能和重构前的 jQuery 版本达到一致。
但可惜,这个任务直到 24 年的 2 月初才算完成,最新版本得以上线。
但是,随着我对更新框架和技术的了解,对这个作品的重新思考,我又一次决定——重构。是的,第三次重构。
这次重构,前端上准备使用 Next.js 框架,并将整个应用的架构思路从完全的 “SPA”(零路由)的思路, 转变为将 OneSearch 的不同功能以不同路由实现与区分,从而摆脱之前 “Window” 的概念。
在后端上,准备抛弃之前的全异步 WebSocket 实现,而是将 OneSearch 的端点转已到了开发和维护上更轻量方便 的 HTTP-based API 上。语言方面采用 TypeScript & Python 混合编写,由 Python 提供 NLP 支持,以暴露本地 HTTP 端点 的方式供 Node.js 调用。
技术提升
这一年来,随着这个项目渐渐与时下主流的开发框架、流程接轨,我算是正式走上了开发者的道路。
23 年中考结束的暑假,我踏上一段旅途,与认识半年的几位 喵友 相见,很开心。同时,喵友们也得以让 寒寒有一个新鲜的、与一线开发人员相连的消息渠道,能认识你们,感到很高兴。
日常生活中,我也受到切身体会的一些痛点的启发,立下了不少项目,这些项目,有的算是实验性质, 只是为了测试或练手而立项,不过大部分的项目最终还是会落地成为产品,为我们的数字生活服务。
在 24 年新年,我也是接触到了 Vue.js 和 Nuxt,并着手开发了一款之前 构思过的项目 WonderyDays,用大约 25 小时的开发时间从头开始学习 Vue 语法,Nuxt 框架的使用,并完成了诸如国际化、无障碍等应用底层基础设施的构建。
未来展望
很多次问过自己,未来怎么走?应该开发什么样的软件?
我的很多项目构思中,前端所需要的开发精力往往是大于后端的。 这是因为我想在前端,也就是面向使用者的那一端,提供最棒的体验。
我知道,我开发的应用,UI 可能不是最华丽的,交互设计可能不是最有创意的,动画也可能不是最丰富的,但在体验上,她们一定要是最有诚意的。
此外,更重要的是,
她们是自由的。
这里的自由有很多种含意,其中最为直接则可以理解为“开源”。但还是会有一些项目,代码因为种种因素不便公开,
我也会尽可能让这些项目保持以下准则:
- 使用者所产生的数据,归其本人所有,并能够随时随地获取自己的数据备份。
- 我们向使用者提供的数据备份,格式应当公开透明,内容至少应该包含使用者在此应用中产生的主要数据。这意味着,即使我们的产品无法继续提供维护,兼容的替代品可以在导入数据备份后,可以提供和之前差不多的使用体验。