Авторизация
Поиск по указателям
Hellegouarch S. — Cherrypy Essentials: Design, Develop, Test, and Deploy Robust, Simple Python Web Applications with Ease
Обсудите книгу на научном форуме
Нашли опечатку? Выделите ее мышкой и нажмите Ctrl+Enter
Название: Cherrypy Essentials: Design, Develop, Test, and Deploy Robust, Simple Python Web Applications with Ease
Автор: Hellegouarch S.
Аннотация: This book covers the CherryPy library for Python web development from its history and installation through its main features and core concepts to its integration with Python and other products to construct, test, and deploy a sample photoblog application. The author Sylvain Hellegouarch is dedicated to the development of free software projects and has been coordinating and administrating the community efforts around the CherryPy project since 2004. The approach based on an example application introduces many other common Python libraries, providing transferable skills also relevant for non-web Python projects.
CherryPy is a Python library for web development that allows developers to build web applications in the same way as any other object-oriented Python program. Enriched by several years of active development, it has become one of the most established toolkits for building solid and high-performance web applications in Python. CherryPy abstracts the complex low-level HTTP protocol into an easy-to-use interface that respects Python idioms. The library aims at being simple to learn for a beginner while offering the most advanced features to fluent Python developers. For these reasons CherryPy was chosen to be at the heart of the popular and feature-rich TurboGears web framework. CherryPy-powered web applications are stand-alone Python applications with their own embedded multi-threaded web server, but can also run behind Apache or IIS for scalability.
.
CherryPy installation using tarball, egg, and subversion
. The CherryPy library in depth: its design and how to use it
. Using CherryPy with common Python and non-Python products
. Object RelationalMapping with SQLObject, SQLAlchemy, and Dejavu
. Web Services via REST and the Atom Publishing Protocol
. AJAX and client-side scripting via MochiKit
. Unit, functional, and load testing
. CherryPy, Apache, and lighttpd deployment solurions
The book starts with two chapters dedicated to CherryPy itself, its history and installation. Then it moves through a gentle introduction to the main features and concepts of CherryPy to a thorough review of its core capabilities. After laying this foundation the book dives into a real-world example, detailing important steps in the creation of a photoblog application. These chapters cover database manipulation via Object Relational Mapping (ORM), using web services to enhance the application, and client-side scripting through AJAX. Finally, the book covers the need for unit, functional, and performance testing before closing with deployment solutions for a CherryPy-based application.
Who this book is written for This book is principally geared towards Python web developers, who are looking to add the power of the CherryPy library to their existing Python skillset. It assumes a good working knowledge of Python . Although the CherryPy toolkit is at the core of the book, many other common libraries are introduced.
Язык:
Рубрика: Технология /
Статус предметного указателя: Готов указатель с номерами страниц
ed2k: ed2k stats
Год издания: 2007
Количество страниц: 250
Добавлена в каталог: 11.12.2007
Операции: Положить на полку |
Скопировать ссылку для форума | Скопировать ID
Предметный указатель
AJAX, about 164
AJAX, advantages 165
AJAX, disadvantages 165 166
AJAX, photoblog, applying to 178
Ajax, XMLHttpRequest 166
APP, about 131
APP, Atom XML-document 132 133
APP, implementing 134—136
Application server 25
Application, about 25
Application, configuring 235
application, deploying 240
Application, deploying, on Apache with mod_python 244 245
Application, deploying, on Apache with mod_python WSGI 246
Application, deploying, on Apache with mod_rewrite 241—243
Application, deploying, on lighttpd with mod_proxy 243
Asynchronous JavaScript And XML See AJAX
Atom publishing protocol See APP
Atom XML-document 132
Cascading Style Sheets See CSS
CherryPy, about 7
CherryPy, advantages 10
CherryPy, AJAX 163
CherryPy, APP 1?31
CherryPy, application 25
CherryPy, application server 25
CherryPy, applications, configuring 235
CherryPy, approach 8
CherryPy, basic example 26
CherryPy, built-in server 32
CherryPy, CherryPy, applications, deploying 235 240
CherryPy, community 9 10
CherryPy, configuration file 235
CherryPy, configuring 33—36
CherryPy, core engine, hooking into 59-61
CherryPy, deploying 235
CherryPy, distutils 14
CherryPy, downloading 13
CherryPy, engine 32
CherryPy, engine, configuring 235—238
CherryPy, error handling 44—49
CherryPy, exception handling 44—48
CherryPy, exposed object 36
CherryPy, folder structure 14
CherryPy, functional testing 218
CherryPy, history 8 9
CherryPy, hook points 60
CherryPy, HTTP features 51 52
CherryPy, HTTP methods 124
CherryPy, HTTP server 32
CherryPy, HTTP server, multiple 52
CherryPy, installation, testing 23
CherryPy, installing 13
CherryPy, installing overview 14 15
CherryPy, installing, easy_install used 18—20
CherryPy, installing, from Subversion 20—23
CherryPy, installing, tarball used 16 17
CherryPy, JSON 176
CherryPy, keywords used 25
CherryPy, library 38
CherryPy, library, working of 26—31
CherryPy, load testing 213
CherryPy, multi-threaded application server 54
CherryPy, multiple HTTP server 52
CherryPy, object publisher engine 36
CherryPy, overview 7 8 25
CherryPy, photoblog 91
CherryPy, photoblog, configuring 238
CherryPy, prerequisites 13
CherryPy, presentation layer 137
CherryPy, published object 36
CherryPy, Request-URI 37
CherryPy, REST 122
CherryPy, REST interface 130 131
CherryPy, SSL 246
CherryPy, static resource serving 81
CherryPy, testing 193
CherryPy, toolbox 61
CherryPy, tools, creating 77—81
CherryPy, traditional web development 119 120
CherryPy, unit testing 195
CherryPy, upgrading 23
CherryPy, URI 123
CherryPy, URI dispatching 55
CherryPy, web application server 25
CherryPy, web server 25
CherryPy, web server, configuring 235—238
CherryPy, web services 119
CherryPy, WSGI support 86
CSS 139
DBMS, overview, object oriented DBMS 96
DBMS, overview, relational DBMS 95
DBMS, overview, SQL joints, relational DBMS 96
DBMS, overview, SQL keywords, relational DBMS 95
DBMS, overview, XMLDBMS 97
DHTML, about 141
DHTML, encompassed technologies 141
Dynamic HTML See DHTML
easy_install, about 18
easy_install, CherryPy, for installing 18—20
easy_install, PEAK 18
Functional testing, about 218
Functional testing, applications 219
Functional testing, Selenium 219
Hook, about 60
Hook, hook points 60
HTML 137
HTTP methods, about 124—128
HyperText Markup Language See HTML
JavaScript Object Notation See JSON
JSON, about 176
JSON, deserialization 177
JSON, serialization 177
Kid engine, attributes 144—146
Kid engine, overview 142 143
Library, CherryPy, autoreload feature 39
Library, CherryPy, caching module 39
Library, CherryPy, coverage module 39
Library, CherryPy, encoding/decoding module 40
Library, HTTP module 40
Library, Httpauth module 40
Library, profiler module 40
Library, sessions module 41
Library, static module 42
Library, tidy module 42
Library, Wsgiapp module 42
Library, XML-RPC module 42
Load testing, about 213
Load testing, working 214—218
Mochikit, about 156
Mochikit, components 156 157
Multi-threaded application server 54
Multiple HTTP servers 52
Object-relational mapping, about 97
Object-relational mapping, object-relational mappers 97
Object-relational mapping, python object-relational mappers 98—108
Photoblog design, basic structure 151—156
Photoblog design, design directory layout 149
Photoblog design, developing 157
Photoblog design, developing, CSS, amending 159 160
Photoblog design, developing, end-user actions, handling 158 159
Photoblog design, developing, HTML code 157 158
Photoblog design, developing, link, adding 158
Photoblog design, developing, template, amending 159
Photoblog design, global design goals 148
Photoblog design, template rendering, encapsulating 149 150
Photoblog design, tools 148
Photoblog design, user agent targeted 147
Photoblog, about 19
Photoblog, AJAX, applying 178
Photoblog, AJAX, classes, adding methods to 173—183
Photoblog, AJAX, method, for deleting existing album 190 191
Photoblog, AJAX, method, for new album 183—189
Photoblog, AJAX, method, for updating existing album 190
Photoblog, AJAX, namespace, implementing 179
Photoblog, AJAX, required namespace, defining 178
Photoblog, configuring 238 239
Photoblog, data access layer, extending 114 115
Photoblog, DBMS, overview 95
Photoblog, entities 92—94
Photoblog, entities, mapping 109—111
Photoblog, entity modeling 108
Photoblog, object-relational mapping 97
Photoblog, sandbox interface 112 113
Photoblog, terminology 94 95
Photoblog, UnitProperties 111
Photoblog, units 111
Photoblog, units, associating 112
Photoblog, units, querying 113 114
Presentation layer, about 137
Presentation layer, CSS 139 140
Presentation layer, DHTML 141
Presentation layer, HTML 137
Presentation layer, Mochikit 156
Presentation layer, Photoblog design 147
Presentation layer, XHTML 138 139
Presentation layer, XML 138
Python object-relational mappers, about 98
Python object-relational mappers, access to database, setting up 102
Python object-relational mappers, data, loading 104
Python object-relational mappers, data, manipulating 105
Python object-relational mappers, entities, mapping 98
Python object-relational mappers, tables, manipulating 103
Python object-relational mappers, types 98
Representational State Transfer See REST
REST, about 122
REST, advantages 123
REST, elements 123
REST, through CherryPy 130 131
Secure Sockets Layer See SSL
Selenium, about 219
Selenium, core 222—227
Selenium, IDE 227—230
Selenium, packages 219
Selenium, Remote Control 231 232
SSL in CherryPy 248—250
SSL in lighttpd 250
SSL, about 246
SSL, Apache mod_ssl support 251
SSL, certificate, creating 247
SSL, private key, creating 247
Static resource serving, about 81
Static resource serving, directory, Staticdir tool used 83—85
Static resource serving, single file, Staticfile tool used 81—83
Static resource serving, static content, static tools bypased 85 86
Subversion, about 20
Subversion, basic principle 20
Subversion, CherryPy, for installing 20—22
Tarball, about 16
Tarball, CherryPy, for installing 16 17
Templating engines, features 142
Templating engines, Kid engine 142
testing, applications 219
Testing, approach 195
Testing, functional testing 218
Testing, load testing 213
Testing, need for 193
testing, planning 194
Testing, unit testing 195
Toolbox, CherryPy, basic authentication tool 62
Toolbox, CherryPy, caching tool 63
Toolbox, CherryPy, decoding tool 64
Toolbox, CherryPy, digest authentication tool 65
Toolbox, CherryPy, encode tool 66
Toolbox, CherryPy, error redirect tool 67
Toolbox, CherryPy, Etag tool 67
Toolbox, CherryPy, Gzip tool 69
Toolbox, CherryPy, ignore headers tool 69
Toolbox, CherryPy, log headers tool 70
Toolbox, CherryPy, log tracebacks tool 70
Toolbox, CherryPy, proxy tool 72
Toolbox, CherryPy, referer tool 73
Toolbox, CherryPy, response headers tool 74
Toolbox, CherryPy, tool, creating 77—81
Toolbox, CherryPy, trailing slash tool 75
Toolbox, CherryPy, XML-RPC tool 76
Tools, CherryPy, creating 77—81
Tools, CherryPy, setting up 43
Uniform Resource Identifiers See URI
Unit testing, about 195
Unit testing, doctest 201—204
Unit testing, unittest 196—201
Unit testing, web application 205—213
URI dispatching, about 55
URI dispatching, HTTP method dispatcher 55—57
URI dispatching, Routes dispatcher 57 58
URI dispatching, virtual host dispatcher 58 59
URI, about 123
URI, subsets 124
Web application server 25
Web server 25
Web Server Gateway Interface See WSGI
Web services, APP 131
Web services, HTTP methods 124
Web services, REST 122
Web services, separation of concerns 121 122
Web services, traditional web development 119 120
Web services, URI 123
WSGI, about 86
WSGI, CherryPy WSGI application, hosting 89 90
WSGI, components 86
WSGI, purpose 86
WSGI, WSGI application, hosting 87
XHTML, about 138
XHTML, features 138
XML 138
XMLHttpRequest, about 166
XMLHttpRequest, attributes 166
XMLHttpRequest, authenticating, basic scheme used 170—176
XMLHttpRequest, authenticating, digest scheme used 170—176
XMLHttpRequest, content negotiated GET request, performing 168 169
XMLHttpRequest, cookies 170
XMLHttpRequest, DELETE request, performing 170
XMLHttpRequest, GET request, performing 167 168
XMLHttpRequest, HEAD request, performing 170
XMLHttpRequest, methods 167
XMLHttpRequest, POST request, performing 169
XMLHttpRequest, PUT request, performing 170
XMLHttpRequest, XML document, POSTing 169 170
Реклама