Internship-conclusion

实习总结:

在我实习期间,我有机会深入了解了软件开发的全流程,包括售前、设计、研发和测试等各个环节。我在这个过程中接触到了各种不同的角色和工作内容,但我的主要工作侧重于研发阶段。

在研发阶段,我主要负责了一个名为 Face-Match 的项目。这是一个面向人脸比对的应用,其目标是实现人脸的比对功能。项目的代码托管在 GitHub 上。Face-Match 项目采用了 Flask 作为后端框架,Vue.js 作为前端框架。在这个项目中,我对 Vue.js 进行了初步的学习和了解,而 Flask 则是我主要使用的后端技术。

项目主要使用了 Pandas 和 face_recognition 这两个库。Pandas 是一个强大的数据分析和处理库,face_recognition 是一个简单易用的人脸识别库。

在项目的更新过程中,我主要进行了以下工作:为了提高程序的效率,我通过在新文件 ‘face_encodings.pkl’ 中保存面部编码,而不是每次在发布请求时都获取所有的 know_face_encodings。为了再次提高效率,我创建了一个线程池,尽管在这个项目中用处不大。此外,我还新建了一个 js 文件和一个 html 文件,允许开发者在后端浏览器中提交图片进行测试。

在项目的开发过程中,我遇到了一些挑战,例如处理 HTTP 状态响应问题。例如,我遇到了 403 错误,这是一个跨域问题,主要由后端解决。解决这个问题花了我很长时间,最后发现问题是 Flask 默认端口在 5000,但是 MacOS 12 以上版本的 5000 和 7000 端口会被用作 airplay 本地开发,所以我需要更换一个端口。我还遇到了 500 错误,这是服务器错误,我发现是因为前端并没有成功上传图片,修改前端代码之后就解决了这个问题。

这次实习让我对数据处理,以及开发和维护项目有了更深入的理解,我学习到了如何解决实际问题,并且提高了我的编程技能。我期待在未来的工作中应用我在实习期间学到的知识和技能。