**附件5**
{width="3.136111111111111in"
height="0.7034722222222223in"}
**光电信息与计算机工程学院**
**专业综合技能实习周志**
**专业: [计算机科学与技术]{.underline}**
> **学号: [2235062316]{.underline}**
**姓名: [金予乐]{.underline}**
**实习单位:[苏州矩子智能科技有限公司]{.underline}**
> **实习岗位: [3D项目组 开发]{.underline}**
**校内导师:\_\_\_\_\_\_\_\_\_\_\_袁健\_\_\_\_\_\_\_\_\_\_\_\_**
**实习时间:\_2025-09-08\_\_**
**\**
**一、实习内容(本周具体实习时间及实习内容)**
本周我学习了jcustomer模块的代码。该模块采用C++实现,目录下有多个以"cust"开头的源文件和头文件,每个文件对应不同客户的定制化逻辑。例如针对某些客户的检测流程、数据导出格式、报表样式或特殊检测规则,都会在这里实现。模块中还包含了对tinyxml等库的调用,用于解析和生成客户所需的配置文件或数据接口。
在阅读代码时,我发现jcustomer的实现方式相对独立,采用插件化思路,将通用的AOI检测框架与客户特定的逻辑解耦。这样,在保持主程序稳定的前提下,开发人员可以为不同客户编写专属模块,满足个性化需求而不破坏整体架构。
**二、实习收获(描述实习内容的细节,以及如何通过实习提升了能力。)**
通过本周的学习,我对软件的客户化开发有了直观认识:
一方面,工业软件不同于标准化的桌面应用,每个客户的产线工艺、质量要求、数据报表可能存在差异,因此需要灵活的定制接口。jcustomer模块正是这种灵活性的体现。
另一方面,从软件工程角度看,客户化模块的存在也提示我在设计系统时,要考虑模块化与扩展性。例如,在MES系统开发中,我们也可能需要根据不同客户的需求,调整接口协议、统计报表的字段或数据导出格式。
在计算机专业联系上,这让我联想到课程中学到的"软件架构设计模式"与"插件机制",而在工业场景下,它们的应用可以帮助企业快速响应客户需求,提高交付效率。
**三、存在的问题及后续改进措施(描述当前实习存在的问题,以及后续如何解决这些问题)**
1\. 模块中文件较多,不同客户逻辑分散,初期阅读时难以快速掌握差异点。
改进措施:建立一个对照表,将各cust文件对应的客户名称和主要功能整理出来,方便理解和后续查找。
2\. 对于tinyxml在配置文件生成与解析中的具体应用还不够熟悉。
改进措施:动手编写一个小例子,练习如何用tinyxml生成、修改和读取配置文件,加深理解。
3\. 对客户化逻辑与主程序交互的机制理解不够。
改进措施:在IDE中调试一条完整流程,观察客户化模块的入口函数是如何被主程序调用的,从而掌握插件式扩展的调用关系。
**注:每次周志不少于500字\**
**指导教师意见(根据课程目标,针对学生撰写的周志给出指导性建议)**