Tesla.Angela 发表于 2021-7-3 20:35:41

WEB开发基本概念梳理

WEB开发相关的名词极多,什么ASP、JSP、PHP等乱七八糟的字母组合,让初学者头都大了。我写代码十多年都没有碰过WEB开发, 就是这个原因。后来因为无聊学习了一下WEB开发,总算发现了一些门道。阅读本文之前,您需要了解【计算机网络】的基本原理,比如知道【服务器】和【浏览器】分别是什么东西,以及它们的基本工作原理。

1、网站的运行原理相当简单:HTTP服务器程序监听80端口,接收、解析、处理HTTP请求,最后返回HTML文本。一个用C语言编写的实验性质的HTTP服务器程序,代码不到600行。在实际应用中,大多数人会使用IIS/Apache + ASP/PHP来搭建网站,自己动手写的部分只是“用于展示信息的【网页页面】”和“用于处理用户请求的【网站后台】”。如果你太(xian)有(de)时(dan)间(teng),可以完全使用C语言来制作一个网站(包括【网页页面】和【网站后台】)。

2、WEB开发主要分为【前端开发】和【后端开发】:
2.1、【前端】是【浏览器端】,【前端代码】会在【浏览器】上执行;【后端】是【服务器端】,【后端代码】会在【服务器】上执行。【前端代码】构成了【网页页面】,【后端代码】构成了【网站后台】。
2.2、【前端代码】和【后端代码】通常不需要编译。但是【前端代码】会被下发到客户机,而【后端代码】不会被下发到客户机。【后端代码】在服务器上被执行完毕后,以文本或二进制数据的方式输出到客户机。
2.3、【前端代码】的语言基本都是【JS】(在IE占据主流的时代还可以选择VBS)。【后端代码】的语言选择性极多,除了PHP,还有ASP、JSP、NODE.JS、JAVA、GO、Ruby、Python、Perl等。

3、【前端开发】最重要的两个名词就是【HTML】和【JavaScript】(简称【JS】)。它们既是语言的名称,也是代码文件的后缀名。如果用VC/MFC相关的概念来比喻,【*.HTML】相当于【*.RC】(用来制作【网页页面】/【软件界面】),【*.JS】相当于【*.CPP】(用来实现【网页页面】/【软件界面】的功能,比如点击一下按钮,会弹出一个消息框)。如果用VB6/VB.NET相关的概念来比喻,【*.HTML】相当于【*.FRM的窗体描述部分】或【*.DESIGNER.VB】,【*.JS】相当于【*.FRM的代码部分】或【*.VB】。在WINDOWS开发里,你可以用【CPP代码】创建/修改【软件界面】;在WEB开发里,你也可以用【JS代码】创建/修改【网页页面】。

4、【后端开发】最常用的两个名词是【PHP】和【数据库】。【数据库】这个概念无需解释,它在WINDOWS开发里和在WEB开发里都是一样的意思(常用的数据库是【MySQL】或【MariaDB】)。【PHP程序】对于【网页】类似于【驱动程序】对于【应用程序】,它们的交互是【程序间交互】,不是【程序内交互】。在WINDOWS开发里,【应用程序】通过【DeviceIoControl】与【驱动程序】交互;在WEB开发里,【网页】通过【GET】/【POST】与【PHP程序】交互。跟WINDOWS开发不同的是,【驱动程序】一般不用于创建/修改【软件界面】,但是【PHP程序】可以直接用于创建/修改【网页页面】。【驱动程序】的代码通常无法跟【应用程序】的代码写在一个文件里,但是【PHP程序】的代码可以和【HTML】、【JS】、【CSS】的代码写在一个文件里。
简单总结:**** Hidden Message *****学习路径:**** Hidden Message *****
最后发现了一个奇怪的事情:**** Hidden Message *****

HJonny 发表于 2021-7-4 19:07:36

学习学习心得

0xAA55 发表于 2021-7-5 12:30:56

“前端和后端不需要编译” 如果后端规模比较大,是Java或者C#写的,那肯定要编译。而前端的CSS有辅助脚本也需要经历一次“编译”,虽说其实是脚本变脚本。

Cloutain 发表于 2021-7-9 09:38:38

小程序,微服务,无代码这些手段越来越靓,浏览器端的趋势在压倒桌面软件

oopww 发表于 2021-11-15 10:44:11

test

sound 发表于 2021-12-9 21:11:40

学习一下

laity 发表于 2022-5-20 10:15:04

感谢分享,来学习一下

2254649642 发表于 2023-4-26 22:48:01

来看看最近也在学习javaweb开发
页: [1]
查看完整版本: WEB开发基本概念梳理