计算机科学与技术移动应用开发公司开发工程师实习报告_第1页
计算机科学与技术移动应用开发公司开发工程师实习报告_第2页
计算机科学与技术移动应用开发公司开发工程师实习报告_第3页
计算机科学与技术移动应用开发公司开发工程师实习报告_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机科学与技术移动应用开发公司开发工程师实习报告一、摘要

2023年7月1日至2023年8月31日,我在一家计算机科学与技术移动应用开发公司担任开发工程师实习生,负责Android客户端模块的迭代与优化。通过参与三个具体项目,重构了核心业务逻辑代码,使应用启动速度提升20%,内存占用降低15%。运用Kotlin语言完成日常开发任务,累计编写并调试代码约3000行,采用MVVM架构模式统一组件接口,显著减少了模块间的耦合度。掌握了Jetpack组件库的深度应用,如LiveData与Room数据库的协同操作,验证了响应式编程对提升用户体验的有效性。总结出模块化开发与自动化测试的复用方法论,为后续项目维护提供了可追溯的技术细节支撑。

二、实习内容及过程

2023年7月1日到8月31日,我在一家做移动应用开发的公司实习,岗位是开发工程师。实习目标挺明确的,就是想了解真实项目开发流程,把学校学的知识用上,特别是Android开发这块。公司主要做企业级移动应用,前后端分离架构,技术栈以Kotlin和Jetpack为主。

实习期间,我跟着团队参与了两个项目。7月中旬开始,负责一个电商类应用的客户端模块迭代,重点是优化商品列表页性能。当时用Espresso写了10个自动化测试用例,发现页面加载慢的问题,原来是RecyclerView的DiffUtil没用好,数据更新逻辑耦合严重。后来花了两周时间,把列表组件改成基于LiveData+ViewModel的架构,用Flow处理异步数据,页面上滑加载速度从3秒降到1.5秒,内存峰值也降了20%。另一个项目是帮后台系统开发一个数据看板,用了Room数据库和Retrofit接口,虽然数据量不大,但让我对数据库索引优化和API设计有了直观认识。

困难主要有两个。一是初期不熟悉公司代码规范,提交的代码好几次被CodeReview退回,主要是接口命名不统一,还有就是ViewModel的生命周期管理没踩好坑。后来跟着师傅学,把官方文档里关于架构组件的章节又看了一遍,特别是LiveData的observe方式,慢慢就上手了。二是调试一个崩溃问题,线上用户反馈在某个接口调用时偶尔ANR,但复现不了。最后通过分析Logcat和Traceview,发现是第三方SDK占用了过多主线程时间,改用异步任务后问题解决。

成果的话,除了项目里的数据,我还独立完成了一个小工具库,集成了常用UI组件和日志功能,团队其他同事后来也在新项目中用了。收获就是,学校教的只是基础,真到工作中,架构设计、性能调优、团队协作这些才是关键。比如Jetpack组件怎么组合用,才能既解耦又高效,这得在实际写代码时慢慢摸索。

公司管理上,感觉新人培训有点随意,就是给个文档就上手,没人带的话很容易走弯路。建议可以搞个标准化Onboarding流程,比如每周固定和导师对焦,或者准备一套带注释的入门项目。岗位匹配度方面,我接触的主要是客户端开发,但公司后端技术栈也挺丰富,如果有机会多了解点服务端知识,对以后做全栈或者跨端开发帮助可能更大。

三、总结与体会

这八周实习,像是从书本跳进真实战场,感受挺深的。7月刚去的时候,写个简单功能都要反复查文档,导师说代码规范不遵守,后面接手的人会头疼。这句话我一直记着,后来提交的代码被驳回次数明显少了,从每周三四次降到个位数。这就是实习最大的价值,让我知道理论怎么落地,也体会到责任感。面对复杂Bug,一开始挺慌的,晚上会忍不住想解决方案,但硬着头皮找资料、跑测试,最后解决时那种成就感,比学校做项目强太多了。抗压能力确实是在这磨出来的。

职业规划上,这次经历帮我更清晰地定位自己。我发现我对客户端性能优化特别感兴趣,比如那个商品列表项目,用Espresso测出加载瓶颈后,重构DiffUtil逻辑的过程,让我觉得挺有挑战性。学校学的数据结构与算法,在实际写代码时才感受到它的力量,比如排序算法用在数据预处理上,效率提升很明显。接下来打算深挖一下Android渲染原理和AOT/DALvik机制,可能明年考个相关方向的证书,为简历添点实料。

行业趋势这块,公司用的Jetpack组件库、Kotlin协程这些,都是主流方向。但我也看到,单纯会用API还不够,还得懂底下原理。比如ViewModel和LiveData怎么结合才能最大化解耦,这背后是对MVC/MVVM架构理解的深浅决定的。现在跨平台开发挺火,虽然我这段时间没接触,但感觉ReactNative、Flutter这些技术,核心还是编程思想和工程化能力。实习让我意识到,大学学的计算机基础,比如操作系统、计算机网络,其实是底层支撑,未来得持续学习,才能跟得上技术迭代。从学生到职场人,心态转变挺大的,以前写代码图自己爽,现在要考虑可维护性、性能成本,这种思维转变比学会新技能更宝贵。

四、致谢

感谢实习期间给予指导的导师,在项目难点上给出的点拨,让我对技术问题的理解更进一步。感谢一起工作的同

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论