一文看懂前端和后端开发

2019 年 8 月 14 日

一文看懂前端和后端开发


作为一名开发者,你可能会想:2019 年最好的软件开发技术和编程语言会是什么?它们又是如何被应用在软件开发当中的?如果你在思考这个问题,那就来对地方了。这篇文章将对前端和后端开发技术做一个对比,先从基本的开始,然后逐步比较它们的不同点,比如对开发技能的要求、发展潜力、职业生涯的发展和薪水,等等。


什么是前端开发?


前端开发主要涉及网站和 App,用户能够从 App 屏幕或浏览器上看到东西。简单地说,能够从 App 屏幕和浏览器上看到的东西都属于前端。


网站和移动 App 的前端


我们就以你现在正在浏览的网页为例。网页上的内容、图片、段落之间的空隙、左上角的图标、右下角的通知按钮,所有这些东西都属于前端。


移动 App 的前端和网站是一样的。例如,你所看到的内容、按钮、图片,它们都属于前端。另外,因为移动设备的屏幕是可以触摸的,所以应用程序对各种触控手势(比如放大 / 缩小、双击、滑动等)做出的响应也属于前端,它们是前端的活动部分。


这些东西是由前端开发者开发出来的,他们使用了 IonicSwiftKotlinBootstrapAngularVuejQueryReact.js 等开发技术。后面我们会更多地介绍这些开发技术。


物联网的前端


任何可以连接到互联网的设备都是物联网设备。你可能会好奇物联网设备的前端会是什么样的。任何一种智能设备,比如智能冰箱、远程 POS 机、智能手表、智能钱包,它们都需要提供某种界面,这样用户才能操作这些设备。所以,这种界面就是一种交互媒介,组成这种界面的元素就是物联网的前端。


但严格来说,物联网设备并没有真正的前端。不过它们都装有固件,与移动 App 的前端类似。这些固件可以用各种编程语言来开发,比如 C 语言C++LuaPythonJavaScript


什么是后端开发?


后端开发即“服务器端”开发,主要涉及软件系统“后端”的东西。比如,用于托管网站和 App 数据的服务器、放置在后端服务器与浏览器及 App 之间的中间件,它们都属于后端。简单地说,那些你在屏幕上看不到但又被用来为前端提供支持的东西就是后端。


网站和移动 App 的后端


网站的后端涉及搭建服务器、保存和获取数据,以及用于连接前端的接口。如果说前端开发者关心的是网站外观,那么后端开发者关心的是如何通过代码、API 和数据库集成来提升网站的速度、性能和响应性。


与前端类似,移动 App 的后端与网站后端是一样的。为移动 App 搭建后端有这些选择:云平台(AWS、Firebase)、自己的服务器或 MBaaS(移动后端即服务,Mobile Backend as a Service)。


后端开发使用 RubyApacheNginxPHPMySQLMongoDB 等技术。后面我们会更多地介绍这些开发技术。


物联网的后端


云平台是物联网后端的一个重要组件。有证据表明,大部分物联网设备极度依赖云服务器,它们通过服务器上传、处理和下载数据。


高端物联网解决方案的后端甚至涉及人工智能和机器学习。


物联网项目的后端平台包括 Amazon IoT、Google Cloud、MQTT Broker、IFTTT,等等。


那么前端和后端的区别有哪些?




前端和后端的技术栈比较



前端和后端开发者,哪个更好?


做前端开发还是后端开发,除了技术方面的东西,还要看什么对你来说更为重要。


如果美学和产品感觉方面的东西对你来说更重要,那么你可能会倾向于选择前端技术。如果你关注的是提高网站、应用程序或软件的效率和响应性,那么你的目标可能会是后端开发。


前端设计师所做的很大一部分工作是让用户在移动或 PC 屏幕上看到的东西看起来很棒,而且很容易使用。相反,后端开发人员只关心如何编写干净的代码。


如果你要基于上面所说的内容在前端和后端之间判定其中一个比另一个好,那么这本身就是一个错误的假设。实际上,它们都是不可替代的,在构建网站或应用程序时,它们是同等重要的。


有些人具备视觉方面的天赋,而其他人擅长通过逻辑和技术来解决问题。苹果之所以成为今天的样子,要归功于 Steve Jobs(前端的梦想家) 和 Steve Wozniak(后端天才)。


前端和后端开发者



现在, 你已经对前端和后端开发有了很好的了解,接下来是时候更多地了前端和后端开发者了。下面简要介绍了前端和后端开发者的职位、技能和职责。


通过这些要点,你可以全面了解后端和前端开发者的技能。


前端和后端开发者的职位头衔


开发者有很多工作机会,根据具体的专业知识、经验和兴趣,你可以申请以下这些后端或前端开发职位。


前端:


  • 前端开发工程师;

  • 前端 Web 设计师;

  • Android 开发工程师;

  • iOS 开发工程师;

  • 前端 DevOps 工程师;

  • 前端 JavaScript 开发工程师;

  • 前端 UI 工程师;

  • HTML/CSS 开发工程师;

  • 前端测试工程师;

  • 前端 SEO 专家。


后端:


  • 后端开发工程师;

  • 初级后端开发工程师;

  • Web 开发工程师;

  • DevOps 工程师;

  • 软件工程师;

  • WordPress 开发工程师;

  • 云计算工程师;

  • REST 专家;

  • 服务器 / 系统管理员;

  • 数据库架构师;

  • Java 开发工程师;

  • Python 开发工程师;

  • PHP 开发工程师。


前端和后端开发者的技能要求


不同职位和级别所要求的技能是不一样的,但不管怎样,要成为前端或者后端开发者绝对需要掌握一定的技能。



前端和后端开发者的角色和职责


前端和后端开发者的角色和职责是什么?在申请工作或招聘前端或后端开发者之前,请确保了解以下这些内容。



前端和后端开发者的薪水比较


前端开发者:



以上数据来自 PayScale



以上数据来自 Glassdoor


后端开发者:



以上数据来自 PayScale



以上数据来自 Glassdoor


什么是全栈开发?


有些人可以同时从事前端和后端开发,他们被称为全栈开发者。


成为全栈开发者或者招聘全栈开发者既有优点也有缺点。虽然开发者数量可以减少到原来的一半,但他们的水平也相应降低了。专门从事前端或后端开发的开发者对单个领域的了解总是多于同时了解这两个领域的开发者。


与全栈类似的技术开发栈还有很多,比如 MEAN 栈、LAMP 栈、.NET 栈、Python-Django 栈、ROR 栈,等等。开发者可以自由选择成为这些技术栈的专家。


原文链接:


https://www.excellentwebworld.com/backend-vs-frontend/


2019 年 8 月 14 日 16:3740296
用户头像

发布了 731 篇内容, 共 359.6 次阅读, 收获喜欢 1824 次。

关注

评论 2 条评论

发布
用户头像
代码编程一条街,前端后端谁是爹?
2019 年 08 月 14 日 16:39
回复
我是。
2020 年 04 月 20 日 11:49
回复
没有更多评论了
发现更多内容

堪称完美!11月华为首发Spring响应式微服务,三管齐下

小Q

Java spring 学习 架构 面试

当代程序员必备技能(算法)之:递归详解

Java架构师迁哥

[Pulsar 社区周报] 2020-10-31 ~ 2020-11-06

Apache Pulsar

大数据 开源

基于Fabric的性能测试与调优实践

华为云开发者社区

区块链 算法 测试 fabric 华为云

详解快速开发平台与工作流通用组件的设计规范

Marilyn

敏捷开发 企业应用

深入浅出node中间件原理

徐小夕

Java node.js 前端 中间件 数据可视化

《分布式Java应用基础与实践》.pdf

田维常

分布式 电子书

十年资深架构师分享:如果这么做还收不到一线互联网大厂面试,请来找我。

Java架构师迁哥

携oneAPI Gold版本和服务器GPU 英特尔领先业界进入XPU时代

intel001

apipost如何设置断言

测试人生路

接口测试

【活动回顾】Flutter实时音视频应用场景实践

ZEGO即构

flutter RTC

面经手册 · 第17篇《码农会锁,ReentrantLock之AQS原理分析和实践使用》

小傅哥

Java AQS CAS unsafe CLH

秋风到,ModelArts“ AI市场算法Fast-SCNN指南”秋膘贴起来

华为云开发者社区

AI 算法 开发 OBS modelarts

氪信团队再夺冠!易观数科第四届OLAP算法大赛前三甲诞生!

易观大数据

数据库 算法 OLAP

三部门联合发言不得虚报直播销售额业绩:双十一何以刺激了用户的购买欲

石头IT视角

堪称完美!11月华为官方首发Spring响应式微服务,Spring+SpringBoot+SpringCloud三管齐下

Java架构追梦

Java 架构 微服务 springboot SpringCloud

阿里P8整理出SQL笔记:收获不止SOL优化抓住SQL的本质

马士兵老师

MySQL 阿里 sql查询 SQL优化 SQL光标

护航11.11,如何筑牢安全防御系统?

京东智联云开发者

云计算 云安全 DDoS

2020双11:看阿里背后的黑科技!

阿里云情报局

人工智能 云计算 大数据 运维 黑科技

[译文]设计模式01 – 抽象工厂模式(附代码实例)

YoungZY

设计模式 译文

快速了解阿里微服务热门开源分布式事务框架——Seata

比伯

Java 架构 微服务 seata

Linux一切皆文件,如果你没做到这一步,那这就是句话而已

小Q

Java Linux 学习 架构 面试

架构师Week4总结

lggl

作业

架构师Week4作业

lggl

作业

JVM真香系列:堆内存详解

田维常

Java JVM 堆栈 虚拟机

曾陷“数据风暴”危机的赛默飞世尔如何化险为夷的?

华为云开发者社区

数据库 大数据 云服务 华为云 RDS

再拔头筹,FusionInsight为华为云大数据打造硬实力

华为云开发者社区

大数据 数据仓库 数据湖 FusionInsight 华为云

聚焦高交会:感受“区块链+”科技创新浪潮

WX13823153201

薇娅和李佳琦带货百亿奇迹背后是这些技术团队的努力

阿里云视频云

双十一背后的技术

anyRTC开发者

大数据 AI 音视频 WebRTC RTC

深入解析 Flink 的算子链机制

Apache Flink

flink 流计算

一文看懂前端和后端开发-InfoQ