**附件5**
{width="3.136111111111111in"
height="0.7034722222222223in"}
**光电信息与计算机工程学院**
**专业综合技能实习周志**
**专业: [计算机科学与技术]{.underline}**
> **学号: [2235062316]{.underline}**
**姓名: [金予乐]{.underline}**
**实习单位:[苏州矩子智能科技有限公司]{.underline}**
> **实习岗位: [3D项目组 开发]{.underline}**
**校内导师:\_\_\_\_\_\_\_\_\_\_\_袁健\_\_\_\_\_\_\_\_\_\_\_\_**
**实习时间:\_2025-09-08\_\_**
**\**
**一、实习内容(本周具体实习时间及实习内容)**
这周我重点着手 DataSend01
的代码修改,加入了几个全新模块并改进了原版的用户界面(UI)。新增文件包括
DataSendCompLoader.cpp.h 和
CompetionListener.cpp,用于实现界面组件加载和事件监听逻辑。相比于原版,这些文件封装了机器选择、路径配置、模式切换等控件初始化与响应机制,提升了配置过程的复用性和界面动态反应能力。
我还深入分析了 DataSendDlg.cpp 在 DataSend01
中的变化,比如替换原来的各类输入控件,改用了 ListenedUI 命名空间下的
Control 成员,如 dbIp、dbQueryButton、machineInfoList、testModeComboBox
等。界面初始化逻辑整合进 ListenedUI::init(),简化了原版的手动绑定过程。
**二、实习收获(描述实习内容的细节,以及如何通过实习提升了能力。)**
通过这些修改,我进一步体会到 UI
与后台逻辑解耦的重要性------将控件加载和事件监听独立到
DataSendCompLoader 和
CompetionListener,使主对话框更聚焦于界面布局本身。
这也让我认识到,合理的代码结构改进会让团队后续维护更高效,新增界面内容时只需在
loader 或 listener 模块里扩展即可,减少主界面的冗杂逻辑。
此外,我加强了对 MFC 控件封装、消息映射和动态列表操作的理解,提升了对
C++ 界面编程的信心。
**三、存在的问题及后续改进措施(描述当前实习存在的问题,以及后续如何解决这些问题)**
1\. Loader 和 Listener
的协作逻辑尚未完全规范,例如事件触发后的响应流程需要理清。
改进措施:梳理组件加载、事件注册与处理的整体流程图,方便后续扩展或代码审查
2\. 与 ListenedUI 相关的静态控件引用存在生命周期管理风险。
> 改进措施:评估是否应切换为智能指针或生命周期可控的容器,减少潜在野指针风险。
>
> 3\. 新增模块缺乏自动化测试覆盖。
改进措施:编写对应的单元测试或手动测试脚本,验证 loader 和 listener
的交互正确性。
**注:每次周志不少于500字\**
**指导教师意见(根据课程目标,针对学生撰写的周志给出指导性建议)**