Web 技术研究所

我一直坚信着,Web 将会成为未来应用程序的主流

Web 前端到底有些啥?

  前端这个职业好像一直就没什么严格定义,于是很多人学过两天 HTML 也敢自称前端,这圈子就变得越来越乱了。前端到底涉及了什么?最近公司在规范化一些服务,看到每个服务都有自己的机器、端口、依赖,而前端服务的端口全是 80、443,我似乎明白了什么。
  从广义上来说,后端程序员与数据库打交道,前端程序员与用户界面打交道。以前一些 PHP 项目根本就是在组织 HTML,连数据库都不接触,只是调用一些其它服务提供的数据接口而已。这种架构下 PHP 这一层就是前端。或者说白了即便是写 Java,如果工作的内容只是拼接 HTML,考虑页面如何显示,那实际上就是前端。
  以前写 ASP 那会儿是直接查数据库渲染页面。一边考虑数据库如何设计,另一边考虑页面如何展示。这就是前后端不分离的情况。所以那个年代根本没有「前端」这个职业,当时的美工都是直接出 HTML+CSS 的,因为 FrontPage 或 Dreamweaver 之类的软件可以可视化开发不用写代码。
  如果把前端和后端都视为一个平等的服务,那么前端的服务就是基于浏览器请求的那个端口。如果把整个 Web 切成 MVC 的话,后端就是 M 层,V 和 C 都是前端。其实一直以来 M 是后端 V 是前端这件事是大家公认的。但是 C 算什么是有争议的。但是我还是毅然地把 C 归到前端。因为 C 是页面路由,是用户浏览器地址栏展示的东西。在前后端严格分离的架构下,这个大 C 层可能是直接丢给 HTTP 服务器处理的,而 HTTP 服务决定了浏览器应该访问那些路由。因此我认为这个大 C 层应该是属于前端的。
  当然前后端可能还会有自己的 MV*,这又是别的概念了。比如后端的 V 可能是接口渲染层,前端的 M 可能是浏览器上的接口请求封装。
  总之我认为与页面相关的 HTTP 服务器配置,比如 nginx 配置的 location 之类的东西都应该是属于前端的。
网名:
3.80.55.*
电子邮箱:
仅用于接收通知
提交 悄悄的告诉你,Ctrl+Enter 可以提交哦
神奇海螺
[查看全部主题]
各类Web技术问题讨论区
发起新主题
本模块采用即时聊天邮件通知的模式
让钛合金F5成为历史吧!
次碳酸钴的技术博客,文章原创,转载请保留原文链接 ^_^