史爱武:大学生,如何为移动开发实战做好准备?

发表时间: 2023-04-11 08:58

来源于微信公众号:计算机大学生

随着移动设备和移动互联网的普及应用,移动开发的岗位需求也越来越多。但是,在大学里面,除了有“移动应用开发”这个专科专业之外,本科专业和它比较相关的也就是“物联网”专业了。“物联网”本科专业可能开设一些“移动应用开发”相关的课程,其他的计算机类本科专业(比如计算机科学与技术、软件工程等)可能根本就没有“移动开发”相关的课程。当然,如果有兴趣的话,任何计算机专业(甚至其他专业)也都可以选修物联网专业开设的“移动应用开发”课程。

所以,绝大多数想从事移动开发的在校大学生可能需要靠自学来锻炼和实践相关的知识和技能。尽管原生iOS App开发和Android App开发凭借其性能等优势还有一定的市场,但是,越来越多的企业和行业市场却希望移动应用开发周期更短、开发成本更低、开发人员更能获得、开发一套代码能够跨平台运行,等等。跨平台的混合移动应用开发越来越受到关注,应该是现在和未来的移动应用开发的主流模式和发展趋势。

对于想从事移动应用开发的在校计算机大学生来说,笔者建议可以重点锻炼和实践下列内容:

一是熟悉HTML、CSS和JavaScript等Web前端技术。大学生要掌握Web前端技术的基本语法和用法。一方面,跨平台移动应用开发的优势是“一套代码,多个终端平台运行”;另一方面,大量掌握Web前端技术的人员很容易转而从事移动应用开发。

二是实践Uni-App开发框架。Uni-App框架在国内是比较流行,而且是基于Web前端框架Vue.JS开发而成的。所以,掌握了上述技术和框架的大学生,不但能够从事移动应用App开发,也可以从事Web前端开发,因为实际上Web前端开发所需的开发语言和Vue.JS框架你都熟悉了。

三是屏幕适配和性能优化。掌握了Web前端开发语言和Uni-App框架,开发一个跨平台的移动应用App应该是可以的。但是作为客户端App来说,体验和交互性能良好是非常关键。所以,屏幕大小(分辨率)的适配和性能优化应该是一个移动应用开发工程师晋级的关键技能,也是中高级移动应用开发工程师日常工作的主要内容。

作为一个在校的计算机大学生来说,他们更多的是要锻炼和实践屏幕适配和性能优化的一些常规技术和能力,这方面的应用场景见得多了,处理得多了,经验和能力就能日积月累,不断精进。

由于很多计算机专业并没有开设“移动应用开发”课程,如果毕业后想从事移动应用开发,这部分大学生可以利用业余时间,把Web应用开发的课程实践中的Web前端开发扩展成移动应用App版本。实际上,在很多企业的真实应用环境中,一个Web应用系统(一套Web后端代码),都对应开发一个Web前端界面供企业内部的系统管理人员使用,也开发二个移动应用App(Android端和iOS端)供最终用户使用的。

也就是按照这种开发模式,笔者团队之前开发了一个基于FastDFS分布式文件系统的企业内部云盘系统。我们开发了一个供系统管理员使用的Web前端,系统管理员可以基于Web界面完成用户管理、权限管理、云盘容量管理等系统管理和系统设置工作;两个移动端App(Android和iOS)供最终用户在手机(或移动设备)上下载安装,最终云盘用户使用手机(或移动设备)可以完成文件的上传、下载、共享等操作,实现的功能和百度云盘等工具基本是一样的。当时,我们的移动端App开发选用的是跨平台APICloud框架——一个国内的、和Uni-App比较相似的、基于Web前端技术的跨平台移动开发框架。

也就是按照这种开发模式,笔者团队之前开发了一个基于FastDFS分布式文件系统的企业内部云盘系统。我们开发了一个供系统管理员使用的Web前端,系统管理员可以基于Web界面完成用户管理、权限管理、云盘容量管理等系统管理和系统设置工作;两个移动端App(Android和iOS)供最终用户在手机(或移动设备)上下载安装,最终云盘用户使用手机(或移动设备)可以完成文件的上传、下载、共享等操作,实现的功能和百度云盘等工具基本是一样的。当时,我们的移动端App开发选用的是跨平台APICloud框架——一个国内的、和Uni-App比较相似的、基于Web前端技术的跨平台移动开发框架。

随着手机、智能电视、智能手表、智能可穿戴设备等各种各样移动设备的广泛应用,按照“大前端”的发展趋势,未来的移动开发极大可能是“一次开发,所有平台适用”。笔者认为,应该是以HTML/CSS/JavaScript等Web前端技术为基础,以Vue、React等前端框架为支撑开发出适应各种设备和场景的跨平台开发框架。所以,对于想从事前端开发的计算机大学生来说,如果你拥有这种意识和理念,不管是想从事Web前端开发,还是从事移动应用开发,他们的技术栈其实是相通的,将来从事的工作(Web前端开发、移动应用开发)也是很容易相互转岗的。