怎么快速学习Web编程?
做了那么多年Web编程,仔细想想,其实本质上就那点事儿,你抓住了几个重点问题,沙河沙河电脑培训认为学起来一点都不难。
1.理解浏览器/服务器结构(B/S)
B/S是从90年代的客户端/服务器端发展而来,共同点都是由一个(或一组)服务器来服务多个客户端。
差别在于:首先,C/S结构的客户端可能是由不同语言编写的,例如VB,Delphi,PowerBuilder等,B/S结构中浏览器成为了一个通用的客户端,程序以Web的方式呈现,不需要安装,服务器端的升级就意味着所有客户端的升级,这和C/S相比是个翻天覆地的变化。
其次B/S的访问协议也标准化为HTTP(s),而不是原来各种各样的私有协议。
最后B/S结构中的服务器面向全球用户访问,而不像C/S那样仅仅是局域网,所以压力更大,挑战更大。
2.Web页面是怎么组成的?
简单来说就是HTML+CSS+Javascript,我们看到的Web界面就是由这三者组成。
HTML负责结构,CSS负责展现,而Javascript负责行为。
我们说的前端开发也主要是做这一块,对于前端工程师,需要能理解DOM模型,以及如何通过javascript(例如JQuery等框架)来操作DOM模型。
3.浏览器和服务器是怎么打交道的?
当然是HTTP!HTTP说穿了就是浏览器和服务器聊天是的一种约定,这个约定确保双方互相理解。
完整的HTTP是非常复杂的,《HTTP权威指南》一书厚达700多页。
其实我们最常用,也是最重要的也就那么几点:
(1)GET和POST。GET从服务器端获取数据,POST向服务器端发送数据(由此引出图片上传问题)
(2)HTTP是个没有状态的协议,需要通过额外的机制来维持状态(例如登录状态),常用的方法就是cookie。
(3)理解HTTP状态码
(4)理解同步vs异步(由此引出AJAX,以及JQuery等框架)
4.URL和代码的映射
理解url和代码之间的关联,例如www.xxx.com?action=login这样的url是怎么和后端的业务代码关联起来的?
这样的规则是在哪里定义的?用代码、注解还是配置文件?
后端的业务代码该如何组织?相信现在不会有人把业务逻辑都写到Servlet当中了,所以需要很多MVC框架像Struts,SpringMVC来组织代码,让系统清晰易懂。