宁语之溪 - AWD
type: channel
link: https://nyzx.de/tag/awd/
items: 我负责的第一个竞赛平台模块

我负责的第一个竞赛平台模块
type: item
date: 2023-07-15T16:17:00+08:00
description: 参与训练平台测试一段时间后，我开始接触竞赛平台三期的开发。那时我负责的范围已经比较明确：试卷中心和试题中心。确定模块之后，首先要做的不是马上写接口，而是先了解三期开发需要增加哪些功能，以及这些功能和原有平台之间是什么关系。竞赛平台并不是一个孤立的页面，试题、试卷、比赛模式和任务之间都有联系。对当时的我来说，理解这些联系本身就是开发的一部分。7 月初的周报里，我记录了竞赛平台三期会议的内容，也开始参与后端开发。试题中心这一部分包含几种竞赛模式的任务接口，分别是 AWD 混战、红蓝对抗、红蓝对抗的 Flag 设置，以及三国战任务。到 7 月 14 日，试题中心的这些接口已经完成，阶段进度基本正常。与此同时，比赛中心的试卷设置还没有全部完成。当时已经完成了接口需要使用的相关实体，也完成了抽象接口设计，但具体业务逻辑仍然待编写。这两个模块让我比较明显地感受到，接口开发并不是把请求和返回值拼起来就结束了。新增接口需要和之前的代码配合，参数、实体和已有逻辑之间要保持一致。有些地方看起来只是基本的增删改查，真正开始写时仍然会遇到疑问。我在周报里也记录了自己的问题：有时只是按照之前的代码做形式上的模仿，没有真正理解其中的编程思想和逻辑；新接口和原有接口之间如何配合，也需要继续熟悉。这些问题会直接影响开发速度。试卷设置部分的难点更明显一些。三期增加了新的比赛模式，但题目模块还没有完全准备好，需要在原有代码基础上继续组织新的逻辑。要把这部分做下去，不能只看当前要写的接口，还要理解原有试卷和题目之间的关系。这次负责具体模块的经历，让我第一次更清楚地看到“负责一个模块”和“负责整个项目”之间的区别。我需要把自己负责的接口写好、和已有代码配合起来，并对还没有完成的部分保持清楚认识，但不需要把整个竞赛平台的设计和进度都归到自己身上。当时的工作还在继续，试卷设置相关接口需要在下一阶段完成，新增功能也需要继续自测和优化。对我来说，这个模块的意义不只是完成了几组接口，也让我开始面对真实项目中的代码衔接、功能边界和未完成状态。