日期:2019-09-17 10:06作者:北大青鸟西安华清校区
2018年,软件开发行业发生了重大变化,而今年的行业转型趋势将更加强烈。
想知道应该学习哪些技能吗?让我们先来回顾一下2018年的一些重要里程碑和历程,看看这些事件对行业现状的影响,以及对2019年开发人员未来的预测。
安全性和性能
2018年,随着Google和Facebook都有超过5000万用户的数据遭到泄露,以及Meltdown和Spectre等安全漏洞的冲击,安全性继续成为广受关注的重大问题,并且暂时还未发现实质性的解决方案,去年热门的包管理器NPM发生的事件就是最好的证明。
2019年,开发人员应当做的是增加安全性培训,学习HTTPS,并在使用易受攻击的第三方库时谨慎行事。
性能也是2018年开发人员讨论的焦点话题,随着用户在移动世界中的使用习惯开始发生改变,App的下载量已不再像过去那么大。实际上,今年用户有可能更倾向于使用移动网络浏览器,而不再是原生的移动应用。为了弥补移动互联网在连接速度和处理能力等方面相对较差的性能,2018年涌现了多种具有创新性的开发策略和方法,以增强移动网络的性能。
预计由于安全问题,2019年将出现混合式的应用部署方法,以满足安全性和性能的需求。这种可能由云服务提供商来推动的方法可将在容器中运行的高性能和高效率的优点与轻量级虚拟机相结合,以提高安全性和隔离性。
从传统转向云端
尽管云原生架构目前已成为企业内部实施新开发项目的默认选择,但绝大多数的传统技术堆栈还不是云原生。因此,预计2019年将出现对传统方式的App进行革新和容器化的新技术,以类似于云原生App的方式管理它们。
这种趋势将促进有经验的开发人员在当前基础上扩展开发技能。
此外,开发人员今年预计将与平台工程师开展合作,这是一种类似于云系统管理员的新兴职业角色,其任务是为云原生应用程序的开发和部署来管理和监控资源的可用性和安全性。
使用Java开发
2018年,Java领域发生了重大改变,静态类型开发越来越流行。到目前为止,没有哪个竞争对手(包括微软的Type)能够取代Java成为最受欢迎的网络首选语言。
此外,Node.js和Express.js预计将在2019年占据主导地位,成为编写后端API服务器的主要和标准化方式;2018年,学习GraphQL的流行程度也显著提高,GraphQL将继续成为开发人员社区的热门主题。
去年,React、Angular和Vue都专注于同时提高CLI体验和渲染性能,现在已成为构建快速前端应用程序的可行方案。
这一趋势在2019年将得到延续,因此了解这些库非常有意义。
2018年其他一些重要的Web开发历程还包括:CSS网格的采用和稳定,微软转向基于Chromium的浏览器,为了更好地协调Java生态系统而发布的Babel 7.0, Progressive Web App的流行程度显著提高,以及五大浏览器采用了改进的Web Component。
无服务器简化了开发,但基础知识必不可少
2018年的IT创新和技术进步简化了开发人员的工作,使他们更专注于应用程序逻辑而远离了操作。无服务器架构的兴起、基于云计算的自治数据库、基础实施即服务以及模块化打包(如Webpack 4和Parcel)让今天的开发人员不再需要花费大量时间在加载工具、配置、打补丁、配置、调优和缩放等工作中。
预计2019年,无服务器技术的流行程度和创新都将得到提高。无服务器将迅速扩展到其他业务领域,并成为一种开放式标准,让开发人员能够跨多个云端分配工作负载并从中选择避免供应商锁定的云端。
尽管开放领域的服务和创新不断涌现,但强烈建议您增强基本技能组合,例如系统设计和架构等
- 了解数据结构和算法
- 提高 SQL知识
- 了解如何以可扩展的方式构建关系数据库
计算机科学的基础知识不会改变,掌握基础知识才能在未来几年内获得良好的发展。
紧跟创新
2019年,开发人员越来越需要了解数据科学并将其模型结合到自己的工作流程中。也许到今年年底,80%的定制App将采用嵌入式智能作为一流的功能。
未来的软件需要利用机器学习来预测用户需求,您也需要通过机器学习API来增强您的技能。
目前市场上的机器人普及程度将推动对智能接口的需求,智能接口能够针对任务选择出合适的机器人。
区块链也将是2019年的重头戏,特别在某些强调信任和透明度的受监管行业。开发人员将从外部区块链分类账中查询数据,并且已经可以嵌入调用特定区块链云服务的功能。
2019年,开发人员的世界将以前所未有的速度增长。随着区块链、聊天机器人和机器学习等技术已逐渐成熟地应用到真实项目中,开发人员将迎来令人振奋的未来机遇。
抓住这些机遇的前提条件是参加培训来提高您的知识和技能,并通过认证来验证。