什么是前端后端客户端?-小专栏

我曾经潜水了一年多的应届生技术交流群,发现大家并不是很清楚后端是什么,他们只听过这些话:

我试图问过他们,为什么想做后端,不想做前端,毕竟前端要学的技术会相对少一些(这里只相对于后端,无任何贬低的意思),并且前端的岗位数量也没有那么不堪。也得到了一些我不太认同的答案:

的确,很少有人告诉你你可以具体从事哪个方向。就像一个卖Java课的自媒体,他只会吹嘘Java多好,后端多好,很少甚至回避给你讲其他方向的行情是怎样的。毕竟赚钱嘛。

注意:这里只理性讨论每个方向具体从事什么工作,我们不讨论哪个方向更好,哪个方向有什么缺点。任何一个方向的从业者都是值得尊重的,更多的还是看你喜欢哪个。

前端更多的是直接为用户提供服务。像我们日常使用的电脑、手机网站,以及App里的很多促销活动页面等,都跟前端有关系。

有些前端需要给用户提供丰富的操作界面,比如某些游戏的活动界面,界面更复杂一些。有些前端可能负责搭建各种管理系统,那这种一般会有现成的UI框架去使用。

现在听起来,还是觉得前端需要有艺术细胞?

像平时的网站开发、小程序开发,基本都属于前端的开发范畴。因为网页开发的灵活性,很多App里也涉及前端的开发,比如淘宝的某些促销页面,抖音的某些复杂页面(如商城),基本都是属于前端开发。

前端一般是单体应用,什么是单体应用呢?其实可以理解为所有的前端组件都运行在同一台设备上。有的同学可能学习过组件化之类的概念,那组件化最后可以打包成一个系统,然后运行在用户的电脑、手机上。系统稳不稳定、卡不卡,那基本取决于用户的设备强不强悍。另外即使开发多线程功能,也是在用户的设备上进行的。除非开发不规范,否则一般不会压垮用户的设备。在这里提单体应用,是为了跟下面后端的技术架构做一些区分。

后端是本专栏讨论的重点。

后端一般是间接服务于用户,负责与各类数据库打交道,用户直接使用前端,前端再通过后端访问数据库,后端再将数据返回给前端,最终呈现给用户。那对于一些简单的小项目,为什么不直接让前端访问数据库呢?比较简单的解释是,前端一般运行在用户的设备上,有的前端代码甚至可以完全展示给用户(比如在一个网站上右键查看源代码),用户很容易获取到数据库的访问密码。另一方面,每个用户都通过前端直接访问数据库的话,数据库的连接数会大大增加,比如一个用户量为1万的网站,同一时刻可能有1万的连接连到数据库,这对数据库来说压力山大,最终拖垮数据库的性能。

随着后端技术栈的发展,后端从单体应用逐步演变为分布式应用。后端的单体应用,一般是指所有功能都在一个项目中,例如大学课堂里的图书管理系统、课程管理系统等。目前仍然有很多项目使用单体架构,比如一些小公司的项目,单体架构成本更低,性能也满足日常使用。后来,单体应用已经不再满足于高并发的场景,分布式技术逐渐诞生。

所谓分布式,可以简单理解为,一个完整的应用被拆分成多个模块,并运行在不同的服务器上,模块之间通过网络进行调用。好处是模块解耦,能抗的访问量更大了。坏处则是增加了系统的复杂度,同时网络的好坏也可能影响整个系统的稳定性。

从现在的技术来看,后端和前端是分开的两个独立个体。一般后端工程师只需要处理后端开发即可,不需要掌握前端技术栈。当然,一些比较老的项目,仍然让后端工程师同时承担前端的开发工作,所谓的全栈(全占)工程师。

客户端分移动客户端和PC客户端,主要负责研发各类App。常见的比如安卓客户端、iOS客户端、Windows客户端。

安卓App一般是用Java开发的(目前也开始使用其他语言),所以Java能开发的不一定是后端,包括一些Windows软件也是Java开发的。

如果你觉得你真的不适合编程,那也可以看看下面这几种选择。当然,这里只做简单介绍,如有兴趣还请自行探索。

互联网产品经理在互联网公司中处于核心位置,需要非常强的沟通能力、协调能力、市场洞察力和商业敏感度。不但要了解消费者,了解市场,还要能跟各种风格迥异的团队,如开发团队和销售团队进行默契的配合。

上面是百度百科对产品经理的解释。我个人的简介是,产品经理一般是发现用户的痛点,亦或者发现潜在的增长点,然后经过各种调研、数据分析等,产出一份需求文档。给需求赋予一个故事,并把故事讲的动听,才会让大家看好你的需求,愿意与你并肩作战。

我们这里举一个真实的例子,简单了解下产品经理的工作:

需求背景:某视频App想增加一个聊天功能,一是想在社交领域分一杯羹,另一个点是希望聊天功能能增加App对用户的黏性,让用户越用越想用,一天不用浑身难受。

预期收益:社交功能渗透+1%,用户留存+2%

需求背景和详情是明确的,就是想加一个聊天功能。这里的需求就是由产品经理提出的。

预期收益是什么呢?一般大厂做需求,不是简单开发完成就可以上线给用户使用的,而是先给小部分用户使用(灰度测试),如果能从这部分用户的使用中得到较好的数据验证,则认为这个功能是有价值的,最终才开放给所有用户使用。

这里我们用白话解释一下上面提到的预期收益:社交功能渗透+1%,因为这个按钮是一键联系作者,所以期望通过这个按钮来引导更多的用户使用聊天功能,比如100个用户看到了按钮,最起码能有一个用户点击,那就基本符合预期。用户留存+2%,一个产品很看重用户的留存,比如你注册了一个App,玩了一会觉得无聊,就卸载掉了,说明App可能留不住用户。如果用户通过社交功能找到了自己的知己,那他每天都想打开App来找作者聊天。

因本专栏更多的是面向还未工作的大学生,很多同学并不了解前端、后端、客户端分别是什么,导致对自己的职业规划并没有太多的认识。最后选择方向时基本就是靠身边的传言来决定。

THE END
1.什么是前端和后端什么是前端和后端永恒的太阳 精选回答 1、前端:所谓前端就是指网站的前台部分,即运行在PC端以及移动端等浏览器上给用户浏览的网页,运用HTML,CSS,JavaScript等前端技术实现各种网页设计,它的目标在于给用户带来极高的用户体验。 2、前端开发人员需要掌握的知识:需要精通HTML,能够写出结构清晰,语法恰当的并且有利于...https://edu.iask.sina.com.cn/jy/jD52CuHT6l.html
2.什么是前端开发什么是后端开发?基于c/s模式(client/server,客户机/服务器,一种描述网络结构的模型),前端是指客户端,后端是指...https://m.imooc.com/wenda/detail/350845
3.前端中端后端是什么前端是用户直接能看到的页面,所有人都可以访问。后端是有权限的运营人员或特殊用户用权限登陆后才看得到的页面。中端是第三方业务运营方。 前端/后端是针对技术特点来说的: 前端的技术特点是与用户密切相关的,用户关注点是产品提供的服务是否快捷方便。所以前端要着眼于设备的要求来做的,分为pc网页端,移动h5端,andr...https://worktile.com/blog/know-1386/amp/
4.前端后端分别是什么意思?两者的区别是什么两者的区别是什么 前端后端分别是什么意思?两者的区别是什么?这个问题是由前端开发工程师明确,前端后端是指使用各种框架和技术提高应用程序性能,从而实现用户界面交互的过程,同时端工程师负责确保网站的可用性,提高用户体验,通过技术手段实现更高的用户界面交互。http://www.runtimewh.com/jszl/15133.html
5.软件开发的前端和后端是什么意思?在软件开发领域,前端和后端是两个关键的概念,它们分别涉及了用户界面和应用程序的背后的逻辑和数据处理。本文将深入探讨前端和后端的含义、职责以及它们在软件开发中的协同作用。 1. 前端是什么? 含义: 前端是指用户直接与之交互的部分,也称为客户端。它包括了用户在浏览器或移动设备上看到和与之交互的所有内容,如...http://www.apppark.cn/t-49740.html
1.什么是前端后端什么是前端、后端 一、前端(Frontend) 1、对于web前端来说,通常是指网站的前台部分,包括网站的表现层和结构层:Web页面的结构、Web的外观视觉表现以及Web层面的交互实现。 2、前端技术一般分为前端设计和前端开发,前端设计一般可以理解为网站的视觉设计,前端开发则是网站的前台代码实现。https://www.jianshu.com/p/4bba96485938
2.WEB前端后端简单区别,通俗理解后端开发工程师前端开发现在一般指的就是web前端开发工程师,其负责是网站前端页面也就是网页的页面开发,简单的说网站前端负责是东西是网站用户可见的东西,如网页上的特效、网页的布局、图片、视频等内容。网站前端工程师的工作内容就是将美工设计的效果图的设计成浏览器可以运行的网页,并和后端开发工程师配合做网页的数据显示和交互。https://blog.csdn.net/yinghuo110/article/details/79057513
3.前端后端全栈都是什么?前端后端和全栈IT行业的市场需求在逐年递增,二转行学IT的人也在逐年增长,但是作为转行IT小白,在入门之前要了解一下IT行业学习方向。IT大致分为三个方向,前端,后端,全栈。那么前端、后端和全栈都是什么?前端、后端和全栈都有什么区别? 前端、后端、全栈都是什么? 1.前端 ...https://www.zhiliaotang.com/technology/00041.html
4.到底什么是前端,后端,后台汉语博大精深,加上每个公司的用词也可能有自己的习惯,因此也有一些语境下,前台约等于前端,后台约等于后端。 以下是具体解释最常见语境下的区分: 先来看看页面层面。 我们来看看什么是前台: 前台,是用户直接能看到的页面,所有人都可以访问。比如上面这种随处可见的导航。 但是项目结束后,乙方外包团队全跑路了,我...https://maimai.cn/article/detail?fid=1644526526&efid=NN5dvrwa3GMha-QCRKT6Mw
5.前端后端分别是什么意思前端和后端的开发都是Web应用程序开发的重要部分,两者需要协同工作以实现完整的Web应用程序。前端开发人员需要了解基本的后端编程知识,例如API调用和服务器端编程。后端开发人员也需要了解前端技术,以便在处理数据时与前端进行协调和交互。https://www.pcfbw.com/6466.html
6.前端测试和后端测试的区别是什么首先,来了解一下什么是前端测试和后端测试。前端测试是指对应用程序或网站的用户界面进行测试,以确保用户界面的设计合理、易于使用、符合预期并提供可靠的交互体验。后端测试则是指对应用程序或网站的后端系统进行测试,以确保后端系统的功能正确、性能稳定、安全可靠并且可以与前端系统顺畅地交互。 https://www.pxwy.cn/news-id-80180.html
7.什么是前端和后端?什么是前端和后端?前端和后端是软件开发中的两个重要方向,分别负责网站的前端和后端功能。 前端通常是指网站的前台部分,包括网站的表现层和结构层,即Web页面的结构、Web的外观视觉表现以及Web层面的交互实现。常用的前端技术包括HTML、CSS、JavaScript等。 前端通常是指https://blog.itpub.net/70030295/viewspace-2978591/
8.互联网前端和后端是什么意思互联网前端和后端是什么意思 互联网前端和后端是指Web开发中的两个不同方面。前端指的是客户端开发,主要关注如何设计和开发用户界面,以及如何通过使用HTML、CSS和JavaScript等技术实现Web页面和Web应用程序的交互性和动态性。后端则是服务端开发,主要关注如何设计和实现Web应用程序的服务器端逻辑,包括如何处理用户请求、...https://www.ixywy.com/webqdpx/1341.html
9.网页设计前端和后端的区别是什么前端和后端是两个重要的概念,它们在网页设计中扮演着不同的角色和职责。前端指的是网站的用户界面部分,负责与用户进行交互,包括设计网页的外观、布局和交互效果等。而后端则是网站的服务器端,主要负责处理用户请求、与数据库进行交互和处理数据等。 2. 前端的工作内容和技术 ...https://www.300.cn/xxzx/8693.html