前端让前端飞我爱编程

[翻] 一个吃饭的时间搞清楚前端和后端

2018-04-16  本文已影响30人  Bboy_2016

原文来自:Front End v. Back End Explained by Waiting Tables At A Restaurant
本文大部分是自己翻译,部分为机翻,单词来源与google,若有侵权,请与作者联系。

前言:如果你去过餐厅,那么你就可以了解在 web 开发过程中,前端与后端的区别。

当你打算开始学习 web 开发时,你会遭遇(encounter)一系列能把你搞晕的概念(concepts)。例如:
Databases? Servers? Client-side? Server-side? AJAX?
幸运的是,当你构建你的第一个项目时,你仅仅需要了解 HTML 和 CSS 的知识。你可以在你自己的电脑上完成。但是,如果你想知道你的网站是怎样在互联网上运行的,那么你就需要去理解前端与后端的知识。

这里有一个通用的理解方法,就好像是一个餐厅中的服务员和厨房员工。对于你的网站来说,前端和后端的也是依据于其功能将其分开。一个规范就是,每个
side 都是允许做自身擅长的那一部分。

对于厨房的员工来说,高效的做出高品质的饭菜是他们的天职。而服务员更擅长于接待顾客和给顾客带来一次好的体验。

image.png

用户(或者是顾客)需要一些能看的到的媒介,在餐厅中,这个媒介就是菜单(menu)。并且它应该很容易让顾客(或者是浏览它的人)去理解这些选项。
从前端开发者的角度,这类似于 上面说到的HTML 和 CSS 语言。这两种语言允许你去构建静态的内容。


image.png

当一台服务器接收到请求的时候必须做出响应以回复。而对于餐厅来说,这个响应应该是,

  1. 食物
  2. 关于厨房缺货的通知
  3. 服务员没有询问的后续问题

这个响应是通过服务员交付给顾客,也可以是 JavaScript 代码。

为什么我们需要前端和后端

实际上是我们必须在不同的环境下运行不同的代码。所有的标准浏览器只能运行 HTML、CSS 和 JavaScript。且浏览器上不能运行服务端语言。

还有一些其他的因素,包括关注点分离,我们希望每一个端都能更加关注自身更擅长的挑战。你能想象让一个厨师去做 waiter ?这会使的顾客的体验相当糟糕。幸运的是,同时存在着客户端和服务器端。

严格的前端

想象一下你是一个实体花店的主人,你想通过线上去销售,但是却不得其法。一方面,你不需要后端,因为没有复杂的计算问题。你只是需要一名前端,网站上只是一个包含邮箱的联系我们表格。

换句话说,有些网站只是为了浏览,不需要任何操作。其实不是每个网站都需要后端。如果你不需要后端时,你能使用
Github Pages 把你的代码运行在互联网上。

文末

作者想让大家去标题网站留言。

上一篇下一篇

猜你喜欢

热点阅读