出版时间:2011-1 出版社:东南大学 作者:(美)劳登 页数:279
Tag标签:无
内容概要
如何创建一个运行关键任务,提供灵活、适应、可靠的24/7服务,又具有超高性能的网站?《开发大规模web应用》由yahoo!ui团队经理撰写,为打造坚如磐石的应用指明了现实途径,无论你添加多少特性、功能和用户,这些指导原则一样有效。你将学会如何运用其他类型软件所要求的同样精度来开发大规模web应用。
·让小型网站在添加更多网页、代码和程序员时,避免常见的编码和维护痛苦
·为大规?web应用优化html、css、javascript、php和ajax,获得全面的解决方案
·在一处做修改,即可更新所有相应的页面元素
·拥抱模块化、封装、抽象和松耦合组件等各种优点
·采用行之有效的技巧管理数据交换,包括表单和cookies
·学习代码管理和软件工程中经常被忽视的最佳实践
·对代码进行性能优化和测试简化如何创建一个运行关键任务,提供灵活、适应、可靠的24/7服务,又具有超高性能的网站?《开发大规模web应用》由yahoo!ui团队经理撰写,为打造坚如磐石的应用指明了现实途径,无论你添加多少特性、功能和用户,这些指导原则一样有效。你将学会如何运用其他类型软件所要求的同样精度来开发大规模web应用。
·让小型网站在添加更多网页、代码和程序员时,避免常见的编码和维护痛苦
·为大规模web应用优化html、css、javascript、php和ajax,获得全面的解决方案
·在一处做修改,即可更新所有相应的页面元素
·拥抱模块化、封装、抽象和松耦合组件等各种优点
·采用行之有效的技巧管理数据交换,包括表单和cookies
·学习代码管理和软件工程中经常被忽视的最佳实践
·对代码进行性能优化和测试简化
作者简介
Kyle Loudon在Yahoo!领导着一个UI团队。他曾经从事设计原版的Apple
iPod用户界面,并且领导隶属于波音公司的Jeppesen DataPlan
UI团队,开发用于全世界各航线的飞行规划系统。
书籍目录
foreword
preface
1. the tenets
managing complexity
modular components
achieving modularity
benefits of modularity
ten tenets for large web applications
2. object orientation
the fundamentals of oop
why object orientation?
uml class diagrams
generalization
association
modeling a web page
defining page types
defining module types
writing the code
achieving modularity
object-oriented php
classes and interfaces
inheritance in php
object-oriented javascript
objects
inheritance in javascript
3. large-scale html
modular html
a bad example: using a table and presentation markup
a better example: using css
the best example: semantically meaningful html
benefits of good html
html tags
bad html tags
good html tags
ids, classes, and names
conventions for naming
xhtml
benefits of xhtml
xhtml guidelines
rdfa
rdfa triples
applying rdfa
html 5
4. large-scale css
modular css
including css
applying css
specificity and importance
scoping with css
standard module formats
positioning techniques
css box model
document flow
relative positioning
absolute positioning
floating
layouts and containers
example layouts
example containers
other practices
browser reset css
font normalization
5. large-scale javascript
modular javascript
including javascript
scoping with javascript
working with the dom
common dom methods
popular dom libraries
working with events
event handling normalization
a bad example: global data in event handlers
a good example: object data in event handlers
event-driven applications
working with animation
motion animation
sizing animation
color transition
an example: chained selection lists
6. data management
dynamic modules
data managers
creating data managers
extending data managers
data using sql as a source
an sql example
data using xml as a source
an xml example
data from web services
data in the json format
cookies and forms
managing data in cookies
managing data from forms
7. large-scale php
modular web pages
generating pages in php
working with pages
public interface for the page class
abstract interface for the page class
implementation of the page class
extending the page class
working with modules
public interface for the module class
abstract interface for the module class
implementation of the module class
extending the module class
an example module: slideshow
layouts and containers
special considerations
handling module variations
multiple instances of a module
dynamic javascript and css
implementing nested modules
8. large-scale ajax
in the browser
managing connections
using ajax libraries
on the server
exchange formats
server proxies
modular ajax
mvc and ajax
using ajax with mvc
public interface for the model object
implementation of the model object
public interface for the view object
abstract interface for the view object
view object implementation
public interface for the connect object
abstract interface for the connect object
implementation of the connect object
controllers
an example of ajax with mvc: accordion lists
9. performance
caching opportunities
caching css and javascript
caching modules
caching for pages
caching with ajax
using expires headers
managing javascript
javascript placement
javascript minification
removing duplicates
distribution of assets
content delivery networks
minimizing dns lookups
minimizing http requests
control over site metrics
modular testing
using test data
creating test data
10. application architecture
thinking modularly
organizing components
sitewide architecture
section architecture
architecture for pages
architecture and maintenance
reorganizing module uses
adding module variations
making widespread changes
changes in data sources
exposing modules externally
index
章节摘录
版权页:插图:As applications on the Web become larger and larger, how can web developers managethe complexity? In many ways, we need to turn to some of the same good practicesused in other types of software development. Generally speaking, these practices arenot yet pervasive in web development——that is, in software development primarily us-ing HTML, CSS, JavaScript, and various server-side scripting languages (we'll use PHPfor the server-side scripting in this book, but the same principles apply to many otherlanguages). Furthermore, the uniqueness of these technologies poses a challenge fordevelopers trying to apply good practices in a cohesive way.One of the themes that you'll see repeated in this book is the importance of extendingmodular development practices to web development. This book presents concrete,practical techniques to achieve modularity in large web applications. In the process,we'll explore many of the finer aspects of HTML, CSS, JavaScript, and PHP. You'll findthat most of the techniques are relatively simple to apply, and none rely on the use ofspecific frameworks. That said, it's important to realize that they don't preclude youfrom using various frameworks, either; to the contrary, these techniques create a betterlandscape in which to use many frameworks. As a case in point, we'll look at severalexamples that utilize the Yahoo! User Interface CYUI) JavaScript library.At the outset, it's important to establish why the techniques that we're going to explorein this book are especially useful for web developers working on large web applications.We'll begin by looking at some of the factors that contribute to the complexity of manylarge web applications. Then we'll explore how modularity plays an important role inmanaging this complexity. Last, we'll examine a list of tenets that will guide our dis-cussions throughout the rest of the book.
编辑推荐
《开发大规模Web应用(影印版)》:“如果你准备构建一个精心打造的大型站点,那么《开发大规模Web应用(影印版)》就是为你撰写的。从今天就开始吧,因为全世界都在等着你的应用面世。”
图书封面
图书标签Tags
无
评论、评分、阅读与下载