缘起
决定投身web开发了,不过,现在有个问题,那就是web是什么?为了搞清楚这个问题,去图书馆借了本《web应用程序 --CGI到web三层系统》,以下是一些笔记。博客的版式不好,PDF地址:http://www.ntu.edu.cn/
正文
万维网(web)是信息的仓库,是可以用来查询,购物,沟通的平台。Web应用就是实现了具体功能的程序。
Web应用的类型:1.网络商店 2.信息服务 3.企业内部系统 4 娱乐
Web应用的优点:方便,统一界面
缺点:维护成本,web浏览器的限制,分布式处理的优劣
Web的构造
功能决定结构,要理解其结构,首先要明白其功能。Web功能是共享数据,围绕这一点,抽象出请求响应模型。首先,准备数据(HTML),然后,服务器响应请求,传递数据,最后,浏览器接受数据。
动态网页:1.服务器方式,即服务器程序(CGI)动态生成HTML 2.客户端下载,JavaScript,Java Applet,Flash
Web分布式系统:web 3层系统(数据库服务器,应用服务器和浏览器)和分布式对象(EJB,CORBA)
在构建web系统时,要考虑什么内容在何处处理,客户端还是服务器端,还是外部程序。
客户端驱动程序:1.各种插件程序(动画,pdf阅读器等) 2.Java Applet和ActiveX 3.javascript脚本
服务器驱动程序:SSI,CGI,Java Servlet,服务器脚本(Perl,PHP,JSP,ASP)
其他技术:数据库协作,Session管理,安全管理,移动终端
开发Web应用对应的问题:
在何处处理(服务器还是客户端),速度是互联网的生命(处理速度,更新速度,网络速度),可扩展性
Web-共享信息系统,HTTP,HTML
HTTP request 和response,状态码,HTTP的特征(容易使用)和问题(无状态和安全性)
无状态--Session管理,安全性--SSL
HTTP客户机:web浏览器,wget,Robot程序(Sipder或者爬虫程序)
HTTP客户机程序可以使用C++/Java,可视化环境(VB,Delphi),Perl,Ruby,Python
Web程序运行的环境:Linux和FreeBSD,Apache
HTTP的扩充协议-WebDAV(