为了账号安全,请及时绑定邮箱和手机立即绑定

全栈开发者,是神话还是现实?

在过去十年中,“全栈开发者”这个词变得流行起来,指的是那种不仅懂前端又懂后端,能搞定整个项目的人。他们不仅擅长处理用户界面,还能搞定服务器端的活儿。这样的能力让他们能从头到尾看清楚项目的全貌,还能促进团队之间的沟通。然而,技术变化太快,他们必须不断学习新的工具和框架。这需要掌握各种技术、模式、架构和趋势,让人不得不怀疑是否真的能找到这样的人。现在定义全栈开发者时,人们开始考虑更全面的方法,比如管理云服务、使用DevOps工具以及整合人工智能服务。

历史篇

开发人员一直需要适应新的技术并学习不同的工具来创建强大的应用程序。用户界面设计过去主要在像 Visual Studio、Dreamweaver 和 NetBeans 这样的集成开发环境中完成的时候,这些界面相对简单且过时,而开发人员则专注于优化工作流程和关注业务逻辑。随着 Web 2.0 的演变以及 HTML5 和 Ember.js、Angular.js 和 Backbone.js 等创新的 JavaScript 库的引入,前端开发的可能性大大增加。因此,掌握这些技术的程序员的需求激增,成为行业中的一个显著趋势。与此同时,许多初创公司(如 Airbnb、Uber、Spotify)成立了并取得了成功,这些公司的成功证明了改善用户体验和创建基于技术的公司的必要性。
由于项目的动态变化和预算考虑,这些变化导致了对更全能的开发人员的更多需求。一个更全能的开发人员有可能降低雇用多名程序员的成本,并能加快新功能的实施,突显了全栈开发人员的重要性。值得注意的是,Node.js 的发布显著增加了对这种类型人才的需求,因为在前端和后端都可以使用同一种编程语言(JavaScript),理论上可以更容易掌握这两种架构中所需的技能。

有时候一个很棒的后端对前端来说可能是灾难,反之亦然

全栈工程师

许多人认为全栈开发人员在开发的一个领域表现出色,但在另一个领域则挣扎。这并非因为有一条规定,而是由于掌握所有这些必要技术技能的难度。例如,一个在前端方面非常强大的开发者,拥有架构知识和用户体验方面的经验,很难在专注于云微服务架构模式的领域成为专家。这并非不可能,但考虑到需要的高级技术知识,实现起来非常困难。

这是我根据我的职业经历得出的一些个人想法

我一直与很多技术精湛的专业人士和开发者合作,但从未见过有人在前端和后端开发方面同样出色同时。通常,他们在开发和技术专长方面是由他们在项目中遇到的挑战以及个人兴趣决定的。我认为在某些情况下,全栈型人才可以发挥很大作用,即使这可能是一个颇具争议性的看法。

一些公司构建基于可重用控件和组件的架构来设计系统,这有助于前端开发的便利。它们还在后端构建所有的业务逻辑,并使用ORM(对象关系映射)来管理和控制数据库的变更与连接。这为全栈开发者创造了一个方便的环境,可以在同一个用户故事(如分支、拉取请求等)中同时更改前后端,从而更快完成开发。这是一个可能影响开发质量的风险,特别是在前端,但它无疑是一个许多公司愿意承担的风险,因为它带来的好处。

近年来非常常见的一种情况是专注于云服务或基于人工智能服务的app,这意味着后端的复杂性得到了简化,开发的重点转向了用户体验的提升和app的适应性更强。

全栈开发的概念在开发社区中仍然存在争议,不过,它是一项行业非常渴求的技能。同时掌握前端和后端开发的专长有助于更好地理解软件项目,这也能带来更多的就业机会。我们总会在某个领域或技术上更为精通,但今天,有了人工智能工具和扎实的编程基础的支持,我们可以在应用程序开发的各个方面和阶段应对各种复杂挑战。

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消