当前位置: 首页 > 科技观察

未来10年,前端开源领域技术展望

时间:2023-03-20 18:00:49 科技观察

2020开启下一个10年。从这个起点展望前端的未来,我们一定会面临巨大的变化和挑战。老实说,未来十年会发生什么?十年对于互联网和前端来说都太长了。很难想象十年后会发生什么,但有些事情正在发生。TypeScript是现在的政治正确,但前端终究会和语言无关。毫无疑问,TypeScript将在很长一段时间内成为主流。大多数大型前端开源项目已经或正在全面拥抱TypeScript。它让我们拥有了很多面向对象的语言和强类型语言。只有具备的高级特性,才能帮助我们提高代码质量,降低团队合作的成本和风险。如果我们的项目还没有转移,是时候转移了。但一个开源项目的好坏与语言本身并没有直接关系,更何况TypeScript本身还只是一种带有“静态类型检查”的“弱类型”语言。OO没必要,原生JS也能写的优雅更让人期待的是,等WebAssembly(https://www.zhihu.com/question/362893829)的潜力真正发挥出来后,前端终将是语言无关,前端在开发人机界面产品。浏览器技术和云计算的演进将加速前端建设和资源加载的变革。Webpack5正式版发布,通过物理缓存大幅提升构建性能。短期内仍将是主流的构建工具;淡出,ESMCDN被广泛使用后,构建工具将转向Bundless,Webpack也必然会逐渐退出历史舞台。尤其是当HTTP/2到来,支持请求和响应的复用后,HTTP头字段将得到极大的压缩,传输效率将大大提高。届时,我们将不再需要合并资源文件和构建工具,也将加速进化。从C/S到B/S再到C/S,历史总是在重复,循环上升。互联网,尤其是云的出现,让软件从C/S走向B/S。甚至随着WebAssembly技术的出现,我们可以以更低的成本将原有的客户端软件移植到浏览器上,一切似乎都在向B/S发展。但是,我们还需要看到另一个趋势。微信、支付宝和Facebook等大型应用程序正在将浏览器软件融合到它们的客户端中。它们背后的典型技术是小程序和PWA。我们甚至看到了出现在PC客户端上的小程序。借助Electron等项目,很多B/S模式的软件服务都在推出自己的客户端,以寻求更专注的用户体验,尤其是很多传统上以C/S模式提供服务的软件服务。符合用户的心意。这就是我们看到的历史轮回,但是后面的C/S流程与过去C/S所用的技术完全不同,无论是小程序,PWA还是ServiceWorker,Electron,客户端Online开放源项目将迎来春天。新兴的交互场景将唤起微UI微前端(https://micro-frontends.org/)正在蓬勃发展,但无非是前端应用中备受争议的微服务架构(https://microservices.io/)可以提供帮助我们更好地解决复杂应用的开发和维护问题。在人机交互中,用户如何在一个复杂的产品中找到此时最需要的UI,仍然是一个没有很好解决的问题。用户往往迷失在各个大型APP复杂的UI中,但很多时候我们只是需要一个能够高效完成某项工作的UI,我们姑且称之为MicroUI吧。在银河帝国等科幻小说和科幻电影中,经常会看到一种叫做“信息窗”的黑科技,每个这样的信息窗就是一个MicroUI。随着AI、AR、VR、IOT的不断推进,设备会越来越懂人,信息和数据的呈现也会越来越形象。这些只出现在科幻小说中的东西,在未来10年肯定会产生一些影响。如果成为现实,这种UI开发方式也将给前端开发方式带来质的变化。RPA&MachineDrivenUI在AI和IOT时代,如果你仍然坚持一个应用必须由专业人士设计开发,用户通过手机主动使用web产品,那么你将有更高的概率通过未来。RPA这一古老的技术在古代活跃于游戏外挂,随着AI和标准化产品的快速发展正在升级。UiPath(https://www.uipath.com/)、Zapier(https://zapier.com/)、MicrosoftPowerPlatform(https://flow.microsoft.com/zh-cn/)、UIBot(https://zapier.com/)www.uibot.com.cn/)等工具正在改变着很多行业的工作方式,而以GoogleAssistant为代表的智能助手正在改变着人们使用电脑的方式。作为前端,我们要考虑到UI不仅要被人消费,还要被机器消费,甚至只需要描述你的意图。这些需要一种有效的方式让您的应用程序由机器人驱动。甚至应用也不再是我们现在能看到的,而是一个个机器人,而我们提供的是:RPA机器人创建工具和可以由RPA驱动的标准UI。如何设计和实现一个机器人和人类都可以使用的用户界面是我们面临的一大挑战。图形技术仍将是界面上的热点。虽然脑机交互已经在实验室孵化,但未来十年,眼睛仍将是人类获取外界信息的最重要渠道。图形可以比文字快十倍甚至一万倍。有效地传达信息是人类经过长期进化获得的强大的视觉思维本能。在数据更加丰富、使用场景更加多样化的下一个十年,如何高效地从数据中获取洞察力的需求依然强烈。最接近数据可视化能力模型要求的前端岗位,仍将是该领域的主力军。另一方面,未来还会有新的“屏幕”出现。无论是IOT下的真实屏幕,还是VR、AR下的虚拟屏幕,目前已经相当完善和标准化的绘图API最有机会得到新“屏幕”的支持和优先考虑。有可能在此基础上利用图形技术实现一套新的UI基础设施甚至语言。前端智能前端近年来一直在努力提高效率。视觉研发、构建系统、工程&工具、终端多方案等都是为了解决效率,但天花板已经出现,下一步必然引入智能化能力。在原有的技术体系&产品方面,注入自然语言识别和图像识别的能力,让性能有了一系列的质变,突破了这个天花板。在更大的层面上,利用智能化能力解决工作中的问题,将逐渐成为前端必备的能力和思维方式。即使你不想赶上人工智能的热度,其实你也不得不接受并开始学习人工智能。大量简单的banner和营销活动页面已经纯粹通过人工智能自动化生产出来,不需要前端参与研发,复杂的表格,中后台的表格图表也可以通过提供接口,智能推导最佳页面实现。只需要一行代码输入数据即可生成可视化图表,甚至可以直接从设计稿生成页面。现实。前端智能化项目会越来越多。什么时候开始都不晚,但不开始就太晚了。端到端研发随着云原生和业务平台能力的逐步完善,利用Serverless能力在前端完成端到端研发将逐渐成为一种趋势。这一趋势的背后,将面临两大挑战。现有工具和平台扩展到Serverless。在支持Serverless的同时,还要看端到端的集成,包括:研发工具、监控系统、质量体系等;另一方面,对人员的能力和意识有了新的要求。前端岗位的职能边界和能力范围会有变化。基于前端智能化、端到端的研发方向,将是未来前端开源最具吸引力的项目;而在整体层面上,前端吸引人的项目会有两个特点:在系统中提出新的概念和想法;随着框架、构建库等基础设施的趋同,类似重复的开源项目会减少,但创新不会停止,能力等待更多的关注和认可,一定是在基础设施项目中呈现出新的概念和想法。在现有相关系统上创建与其他领域的链接;有些技术可能不是刚刚出现,但今天又重新受到前端行业的关注,比如WebAssembly,因为大家发现了新的应用场景。未来,将现有的前端技术与其他技术领域相结合的项目和设计将受到开源社区更多的关注。