前端的新未来!运维全栈后端服务器插件功能

【CSDN编者按】随着AI技术的崛起,以及许多低代码/无代码工具的出现,“前端”这个曾经大火的领域,逐渐不被看好,甚至有人发出“前端已死”等一些激进的言论,那现实是否如此,本文作者并不这么认为,其表示:前端将成为一个新兴市场,随着以减轻后端和运维负担为目标的抽象解决方案的改进,前端开发人员在购买决策中的角色将继续壮大。

未经允许,禁止转载!

作者|Kateholterhoff

译者|弯月

出品|CSDN(ID:CSDNnews)

我认为,我们都希望将运营的工作转交、抽象化、迁移到云端,前端开发人员并不是唯一的期许者。事实上,越来越多的开发人员,不论是前端、后端还是运维人员,在描述工作流程时都表露出希望将底层的工作委托给托管提供商。

有关前端未来的讨论目前非常流行。JoshWComeau反对AI会导致“前端开发终结”的夸张言论,而ShahanChowdhury有一篇贴子《前端开发的未来》认为AI和无代码/低代码只能辅助前端开发人员,而无法取代他们。此外,EmmaWhite、RiteshKumar和LuigiToporov等人发布的贴子也讨论了JavaScript和Web开发的现状。然而,我认为所有这些言论都忽略了一点:前端将成为新兴市场。也就是说,随着以减轻后端和运维负担为目标的抽象解决方案的改进,前端开发人员在购买决策中的角色将继续壮大。

从BaaS到PartyKit

首先,我们来谈一谈专门为前端工程师提供服务的供应商,以及基于云的抽象化在前端开发确立市场地位方面的作用。

PartyKit代表了前端崛起的一个案例,不仅展现了JavaScript领域正在发生的创新,而且还表明了前端买家市场的强劲。供应商们注意到了专门服务于前端开发人员的平台的成功,并渴望推出自己的解决方案以满足市场需求。JSParty联合主持人KevinBall表示:

我很喜欢[PartyKit的]的一句描述:“PartyKit类似于Vercel或Netlify,只不过你构建的是实时应用……”Vercel和Netlify非常优秀,他们的目标是:“如果你是一位前端开发人员,你非常清楚自己的工作,那么你可以依赖我们。我们可以处理好所有其他工作,我们可以降低这些工作的难度。”而你表示:“我希望多人协同开发也能这样。”

Ball认为,市场上也有先例:消除管理后端操作痛苦的平台。这些供应商不仅包括Vercel和Netlify,还有Supabase、GoogleFirebase、MongoDBAtlas、AWSAmplify和Appwrite等BaaS公司。这其中还包括ZephyrCloud之类的公司,这是一家由微前端容器化技术ModuleFederation的发明者和维护者创立的云服务公司,旨在降低开发和管理微前端的难度。在现有公司和新成立的创业公司中,将前端开发人员视为一个有利可图且渴望购买的客户群的公司数量正在稳步增长。所有这些公司都认识到,自我管理运营和基础设施的认知负荷,更何况数据库、安全性、身份验证和可观察性都带来了巨大的挑战,这些工作实在没必要由公司内部处理。

更多的抽象化

前端开发人员成为新兴市场要归功于与云托管抽象化崛起的一系列软件开发趋势。抽象化的解决方案简化并扩展了这些原本很难管理的原语的使用。就PartyKit这个案例而言,这里所说的原语包括Cloudflare的DurableObjects,这些对象本质上是CloudflareWorkers,但拥有内存中的状态。

GitHubOctoverse2023现状的报告证实了这一趋势。根据他们的调研,在2020万开发者(指拥有GitHub账户的个人)中,过去一年中“开发者数量增加了21%”,JavaScript仍然是最受欢迎的语言。RedMonk自己的语言排名也印证了这一发现:自2015年以来JavaScript一直是最受欢迎的语言。事实上,在排名前7的语言中有6个来自技术栈的顶部,其中三个是客户端语言(JS、CSS和TypeScript)。根据这些调查,我可以得出一个结论:随着软件领域的不断蓬勃发展,新进入该领域的开发人员大部分都将从事前端工作。

除了开发人员编写的语言之外,现代软件开发还严重依赖于将琐碎的工作和复杂性抽象出去的服务。虽然一些脾气暴躁的系统管理员无疑会对这一宣言感到不满,但事实上,外包运营越来越受欢迎,因为运维很难,基础设施很昂贵,安全性和合规性的风险很高。

API经济与云原生

前端成为新兴市场是抽象化不断扩散的结果,而抽象化已成为一种不可避免的趋势。托管服务可以将用户认证等复杂且耗时的任务交给领域专家,从而提高安全性;还可以将高度规范化的服务,比如POS系统,交给领域专家处理。如此一来,各个公司就可以专心开发业务逻辑。在前端工具和供应生态系统方面,这种向抽象化的转变源自全栈的失败。尽管全栈工程师的兴起对雇主有利,但这一概念被该领域的许多人普遍抨击,因为期望开发人员掌握一切会给他们带来不必要的认知负担。正如LaurieVoss所说:

抽象化细节可以帮助我们脱离不断发展的技术栈的苦海。

下面,我们通过回顾所谓的API经济来深入研究抽象化的主题。自从云计算问世以来,API就成为了云计算发展的关键,Salesforce和eBay早在2000年就允许访问自家的WebAPI,在提供API的推动下,很多公司都采用了“快问开发人员”的理念,引用PaulLehair的话来说,这已经“吞噬了世界”。API是现代软件开发的关键,而前端工程师恰好可以从这一发展中受益。JChrisAnderson是Couchbase的联合创始人之一,目前就职于面向前端开发人员的数据库创业公司Fireproof,他认为:

目前API正在集成到前端,这就是前端具有购买力并成为新兴市场的原因。

最近,大型语言模型的集成中也体现出了API驱动的开发的崛起。开发人员不必再自行训练模型或在本地托管,他们可以利用OpenAI的ChatGPT、Google的Gemini或Anthropic的Claude等轻松构建聊天机器人,开发人员只需集成这些供应商的API即可无缝而又简单地使用这些服务。事实上,OpenAI的定制GPT提供了定制的体验,消除了训练和自主托管这些模型的痛苦。他们非常重视开发者体验,提供了详尽的文档、快速入门指南和SDK。

除了前端工程师对API的熟悉程度之外,供应商为这些用户提供的抽象化通常是云原生的。Begin的联合创始人BrianLeRoux对前端成为新兴市场的未来持乐观态度,因为该领域对云的熟悉度很高。从供应商的角度来看:

前端工程师是迁移到新云的绝佳市场。

因为前端开发人员在构建动态的交互式网站时必须考虑后端,所以他们很清楚无服务器和云托管的重要性。事实上,服务器/客户端分两步走的挑战尚未得到解决,该领域内大量聪明的开发人员的脑力都用于解决这些挑战了。

抽象问题

当然,采用这些抽象化程度高的解决方案也存在一定的弊端。抽象化的产品和服务通常以API和库的形式交付,同时也将其他人的代码引入到项目中。这就意味着美丽与危险并存。抽象化的解决方案要求项目采用特定的形式,并且往往难以随着项目规模的扩大而扩展。我曾听到过一个陈旧的观点,推特必须将后端从RubyonRails改为Scala(一种建立在Java基础上的语言),因为Java之类的低级语言具有更好的可扩展性。就处理繁重的流程和缓存层而言,Java之类的语言仍然是非常宝贵的。然而,像推特这样的大型应用程序是例外,而不是顺应规则,这意味着成长的痛苦并不会阻碍大多数开发人员使用JavaScript和TypeScript。

除了规模化的问题之外,通过托管服务和产品抽象化复杂性的成本往往非常高昂。Vercel为了简化开发,以一种非常简单的构建体验打包了AWS原语,不需要任何配置,但用户必须付费才能获此便利性。这导致一些开发人员抱怨Vercel的费用高得离谱。尽管开销增加了,但许多公司发现无需雇佣工程师来管理基础设施,这一点开销还是非常值得的。BranchInsurance的联合创始人兼首席技术官JoeEmison已经提出了商业案例:利用云服务,并雇佣和培训专门从事前端技能的初级开发人员:

换句话说,将运营工作外包给了托管提供商,Branch的工程部门就能够完全专注于UI和前端界面。尽管Branch是一个极端案例,但软件开发的未来正朝着Emison所描绘的方向发展。

下面,我们来谈谈许多开发人员依赖抽象化和托管服务的最后一个因素,但这是一个负面消息:所谓的职业生存威胁。我曾讨论过人们对前端的刻板印象:有人认为这类工程师因女性居多而被忽视,而且这个岗位被大量初级开发人员占据。对于持有这种刻板印象的人来说,由前端主导的未来意味着软件工程的终结。按照这种思维方式,前端工程师与仅依赖低代码和无代码解决方案的平民开发人员不分伯仲。如果我们真的指望JamesSomers提到的AI及低/无代码取代软件工程师,那么我们确实处于“工匠日渐式微”的边缘。

但我不认同以如此消极的心态来看待前端驱动的未来。我认为实际情况恰恰相反,大量的创新都出现在前端。任何持有以下看法的供应商最终都会失败:前端工程师能力不够,技术不够精湛,因此成为定价过高的黑匣子解决方案的受众。

前端已死,前端永存

关于最新的新兴市场,我还有最后一点想说。与任何形式的转变类似,前端的晋级之路并不平坦,但在软件开发的特定条件下,这一过程伴随着角色的重新分配,以及前端与后端、客户端与服务器、静态与交互等传统分割界限变得越来越模糊。许多人长期以来一直批评前端和后端这样的术语,比如MelissaMcewan指出:“这种分类大概在十年前就已经过时了,但依然存活到了现在。”

Reddit用户n9iels也赞同这一观点:“根据我的经验,前端领域正在仅有从HTML/CSS/JS转变为包含服务于前端的后端。特别是对于完全使用React或Angular(SPA)构建的网站,前后端之间的界线变得非常模糊了。”

“前端”、“后端”和“全栈”之类的术语无法准确反映出现今的软件开发生命周期,因此最终都会被新的开发者类型所取代。虽然我不认为“前端”这个术语很快就会被抛弃,但在现实实践中,这个领域必将持续变化。前端开发这个岗位将出现一种新型的工程师,他们利用API和云服务来实现高性能、交互式的用户界面。这些开发者将跨整个技术栈工作,但不同于全栈工程师假设自己什么都懂,这类新型的开发人员将利用手头的工具,并在这些工具不足的地方创新。

前端的太阳已经升起,但这个领域是一颗仍在发展的恒星。尽管人工智能技术的蓬勃发展和零利率政策资金政策的消失带来了不确定性,软件行业似乎特别不稳定,但供应商们意识到,从事技术栈顶端工作的开发者处于有利之位。这个行业和市场变得越来越错综复杂,但在前端领域工作的开发者已经直面了这些挑战。可能有人认为这会催生大量机械化的开发者,盲目地陷入超级扩展服务的统治之下,但我认为随着开发劳动力继续向技术栈的上层移动,客户端和用户界面体验的改进(比如缓存、WebAssembly、服务器端渲染、容器化的微前端)将与之并行增长。如今软件行业中最闪亮的明星以及最具开拓精神的开发者都在前端领域工作,因为这个领域使用了他们最喜欢的前沿技术。

超50万人「退休金」数据丢失、业务瘫痪1周,GoogleCloud误删甲方账户后:云服务负责人被裁、Oracle产品经理现身嘲讽

THE END
1.web后端开发web后端开发招聘猎聘web后端开发招聘频道为您提供大量的web后端开发招聘信息,有超过10000多web后端开发招聘信息任你选寻,招聘web后端开发人才就来猎聘web后端开发招聘!求职找工作就用猎聘聊。https://www.liepin.com/s/e3cda271c01b29e000678f1ea96187e0/
2.前端后端开发的发展历程与趋势展望html教程随着互联网的迅猛发展和信息技术的日新月异,前端和后端开发作为两个重要的IT领域在过去几十年中也取得了巨大的进步。本文将探讨前端后端开发的发展历程,分析当前的发展趋势,并展望未来的发展方向。 一、前端后端开发的发展历程 早期阶段 在互联网刚刚兴起的时期,网站开发主要关注内容的呈现,前端开发工作主要集中在HTML...https://www.php.cn/faq/722834.html
3.Web前端开发和后端开发的区别Web前端开发和后端开发的区别 web前端分为网页设计师、网页美工、web前端开发工程师首先网页设计师是对网页的架构、色彩以及网站的整体页面代码负责网页美工只针对UI这块儿的东西,比如网站是否做的漂亮web前端开发工程师是负责交互设计的。 web前端分为网页设计师、网页美工、web前端开发工程师,首先网页设计师是对网页的...https://www.imooc.com/article/8139
4.前端开发移动端开发和后端开发都有哪些区别首先,从技术结构上来看,Web前端开发涉及到Html、CSS、JavaScript以及众多的前端开发框架技术;后端开发技术主要完成业务逻辑的处理过程,涉及到存储管理、安全管理、并发处理和其他资源调度方面的内容,有多种编程语言可以从事后端开发,包括Java、Python、PHP、C#、Go等;移动端开发涉及到Android开发、iOS开发以及各种移动端设备...http://www.situedu.com/news/uid/2976.html
5.Web开发者学习路线图菜鸟教程以下路线图主要展示了成为前端开发者、后端开发者或运维开发者的技术学习路线。 前端学习路线图 主要还是掌握好 HTML、CSS、JavaScript。框架太多不需要多去了解,学习一两个即可,可以多关注 Vue。 后端学习路线图 后端技术还是倾向于 PHP 和 Python。 运维开发学习路线图 ...https://www.runoob.com/w3cnote/web-developer-learn-path.html
6.软件开发的前端和后端是什么意思?后端开发: 使用服务器端编程语言(如Java、Python、Node.js等)构建应用的后台。 3. 前端和后端的协作 在典型的软件开发中,前端和后端是密切协作的。前端通过API(应用程序接口)从后端获取数据,并将用户的操作传递给后端进行处理。这种分工协作模式使得开发团队能够专注于各自的领域,提高开发效率。 http://www.apppark.cn/t-49740.html
7.Java开发语言前后端关键技术都有哪些?6、版本控制系统:如Git,用于管理前端代码的版本和协作开发。 二、Java开发语言前后端关键技术都有哪些?后端技术 1、Java EE/Spring框架:Java Enterprise Edition (Java EE) 和 Spring 框架是Java后端开发的核心技术,提供了企业级应用开发的一整套解决方案。 https://www.bwie.com/index.php/jsgh/174.html
8.什么是前端后端什么是前端、后端 一、前端(Frontend) 1、对于web前端来说,通常是指网站的前台部分,包括网站的表现层和结构层:Web页面的结构、Web的外观视觉表现以及Web层面的交互实现。 2、前端技术一般分为前端设计和前端开发,前端设计一般可以理解为网站的视觉设计,前端开发则是网站的前台代码实现。https://www.jianshu.com/p/4bba96485938
1.前端开发和后端有什么区别说明:前端开发和后端哪个工资高?前端开发低于后端。前端开发平均工资¥16.7K/月,2024年工资¥16.9K,2024年工资低于2023年,后端平均工资¥22.9K/月,2024年工资¥22.9K,2024年工资低于2023年,统计依赖于各大平台发布的公开数据,系统稳定性会影响客观性,仅供参考。 就业...https://www.jobui.com/gangwei/pk/qianduankaifa-houduan/
2.前端开发迈向全栈之路:规划与技能前端开发主要负责构建和实现网页、Web 应用程序和移动应用的用户界面。其工作重点在于网页设计和布局,使用 HTML 和 CSS 技术定义页面的结构、样式和布局,同时运用前端框架和库如 React、Angular 或 Vue.js 等构建交互式和响应式的用户界面。此外,前端开发还需与后端开发人员合作,通过 API 接口与后端服务器进行数据交互...https://blog.csdn.net/qq_22232065/article/details/143802386
3.什么是前端开发?前端开发入门介绍!近年来前端发展的主要趋势是移动和智能设备应用程序的增长,用户通过越来越多的、具有不同屏幕尺寸和交互选项的设备访问应用程序。因此,前端开发人员必须确保应用程序能够为所有设备和使用场景提供一致、高质量的用户体验。那么,前端开发与后端开发有什么区别呢? https://pixso.cn/designskills/what-is-front-end-development/
4.2024年引领前端Web开发的七大趋势尽管开发者生态系统中对于是否使用 TypeScript 的看法不一,但大多数人都压倒性地支持 TypeScript。事实上,你更有可能看到公司和开源创建者将他们的代码库迁移到 TypeScript。Stripe 就是一个例子,它将其最大的 JavaScript 代码库(370 万行代码)迁移到了 TypeScript。https://www.51cto.com/article/782592.html
5.Web前端VSWeb后端Web软件开发工程师可以分为Web前端和后端开发。那什么是Web前端,什么是Web后端呢?它们的差异在哪里?在工作中又分别会遇到怎么样的问题呢?乔布小编浏览了大量的资源,为童鞋们整理了这样一份资料,主要分为前端和后端的差异和它们各自所面临的挑战。希望对你有所帮助!https://cv.qiaobutang.com/knowledge/articles/53b4d6a40cf22e16e18f0b48
6.网页前端和后端的区别有哪些开发没有接触过的网站制作的小伙们经常会问到网页前端和后端有哪些区别,首先,网页设计师是对网页的架构、色彩以及网站的整体页面代码负责,网页美工只针对UI设计,比如网站是否做的漂亮,Web前端开发工程师是负责交互设计的,需要和程序员进行交互设计的配合,下面为大家提供网页前端和后端的主要区别对比。 https://www.yungong.com/work-3025.html
7.前后端分离前端和后端分离开发是指专门的前端开发人员负责项目开发过程中前端代码的开发,后端代码由后端开发人员负责,分工明确,各司其职,提高开发效率,并行开发前端和后端代码,加快项目开发进度。目前,越来越多的公司采用前端和后端分离开发模式,已成为当前项目开发的主流开发模式。 https://www.tulingxueyuan.cn/tlzx/jsp/3854.html