Python语言动态WEB开发学习总结
来源:互联网 发布:网络维护书籍 编辑:程序博客网 时间:2024/05/16 14:51
一,语言, 学习python后,认为一个好的动态语言应该, 虚拟机,一次编写到处执行 泛类型,但不是无类型 OOP的实现(继承,重载等等) 现代的,强大的词法 语法 二,Web Framework或Web protocol, 作为一个动态web程序框架,必须处理的有, URL Dispatch Form Process [POST GET处理] Session(Cookie) Http header 再高级点的还应有, Role management(authentication) DBMS(ORM) xML templates Cache 等等 三,CGI篇, 在学习CGI前,必须理解什么是Web Browser, 什么是Web Server. 以及他们之间的"语言"--http协议, 以及"会话"过程 早期,Web Browser只能从Web server那里请求到事先编辑好的存放在Server机器上面的文字内容,图片内容或文件,没有现在Web browser发送不同内容的请求,更不会Web server相应这样的请求. 后来,就有了active server page欲望,猜想教本语言诞生的原因是,实现对这种Browser端发过来的会变化的请求进行判断后生成不同的html字串的动作不可能"硬"写在Wb server程序里面. 没有考究过历史是否曾经出现过许多这种功能的脚本语言,但是从现在仅存的主流的Web Server IIS, Apache, Tomcat来看(他们之间互相桥接,互通有无又是后话),主流的被这两个Server程序支持的脚本也就是微软的ASP和开源世界的PHP. 事情至此以后本该是平静的日子,可要计算机技术这个世界永远的变化就是技术间的不断地分化,又不断地融合. 只有Asp 和PHP能生产动态页面的生产工作? C/C++ Pascal Fortran等这些"传统"语言也都想, 所以 CGI诞生了. Common Gate interface #!/bin/sh echo Content-type: text/html echo "<HTML><HEAD>" echo "<TITLE>Is Laura There?</TITLE>" echo 看上面一段标准CGI代码,设计思路基本就是将原本一次写在html文件的字符,用编程语言的方式一句一句运行地输出 四,WSGI, 时间到了2005年,之前Python通过CGI也成功地将自己融合到了web开发这个领域.但是Python使用者发现,他们开始愈来愈先在选择合适的 组件,合适方式继承先前代码上面花费时间.车轮子一遍一遍地重造,整合一次一次进行. 是不是该在Python自己世界里面来协议什么的? 于是Phillip J. Eby提出了WSGI的初步概念,现在在PEP0333中看到是几经修改的被追踪确认的, WSGI allows coummunication between web servers and python web applications. WSGI描述了这样两种行为, Web server调用application'提供'的function或callable object,传入environ 和start_response 其中environ必须是python字典类型,里面保函CGI式的环境变量 Application调用web server传递来的start_response, 传入status和head list, 最后返回 字符list或 iterator status是http状态, head list为; 返回string list是html的body classic codes, def application(environ,start_response) status = '200 OK' response_headers = [('Content-type','text/plain')] start_response(status, response_headers) return ['Hello word'] 五,其他 最后所说,我碰到的,并从功能划分的framework --------------第一代 Karrigell --------------第二代 CherryPy Quixote --------------第三代 (早期) TurboGears Django Pylons 第三代(中期) Uliweb Web2py web.py MVC WSGI /|/ URL Dispatch VIEW Model View, cheetah kid mygth genshi ORM, SQLObject SQLAlchemy Control, web.py cherrypy Route Paste
- Python语言动态WEB开发学习总结
- python web 学习总结
- GO语言学习:动态Web
- Web开发语言学习框架
- web开发(脚本和动态语言)
- Python学习笔记 web开发
- Python学习笔记-web开发
- python web开发--Django 学习
- Python学习--20 Web开发
- Python学习--20 Web开发
- Python学习--20 Web开发
- Python学习--20 Web开发
- JAVA WEB 开发学习总结
- 学习开发语言 python 资料
- atitit.提升开发效率---动态语言总结
- 【Python学习日记】Python语言特点总结
- [举重若轻]python+django+mysql web开发入门学习之动态模板
- web开发(脚本和动态语言) xml xsl 动态分页
- 正则表达式30分钟入门教程
- 在/usr/include/regex.h文件中正则表达式
- fedora下的yum命令使用
- 夏新、联想能不能低下高昂的头?
- JULY-6 WORKING LOG
- Python语言动态WEB开发学习总结
- FSG2.0 手动脱壳笔记
- Begin to learn python
- C/C++忠告(转载)
- 边缘人
- 需求(一)
- 宝宝,你听到了吗?
- 数据库的查询优化技术
- Summary on 20080706: setting for many-to-many mapping in hibernate