چه کسانی این کتاب را می‌خوانند

دانشجوعلاقه‌مند یادگیری
کتابخوان حرفه‌ایلذت مطالعه
نویسندهالهام‌گیری

Ajax in Action

Dave Crane, Eric Pascarello with Darren James

قیمت نهایی

۴۴٬۰۰۰ تومان۴۹٬۰۰۰ تومان۱۰٪ تخفیف
  • تخفیف زمان‌دار−۵٬۰۰۰ تومان

۵٬۰۰۰ تومان صرفه‌جویی نسبت به قیمت اصلی

نسخه اصلی و اورجینال

بلافاصله پس از خرید، فایل کتاب روی دستگاه شما آمادهٔ دانلود است.

تحویل فوری
پرداخت امن
ضمانت فایل
پشتیبانی

مشخصات کتاب

سال انتشار
۲۰۰۵
فرمت
PDF
زبان
انگلیسی
تعداد صفحات
۱۰ صفحه
حجم فایل
۱۰٫۱ مگابایت

دربارهٔ کتاب

So you are going to read a book about Ajax and wonder if does make sense to read this one or another one like Ajax in Practice from Manning, or Head Rush Ajax, Professional Ajax, Pro Ajax and Java Frameworks to note only a few. If you decide to have a look at this one, take care: the material is really deep. Definitely it is not an "instant" style like "for dummies" or "in 10 minutes", so if you think you will be an Ajax expert after reading 10 pages just have a look at another one, this one is really for someone who understand that in order to be an expert you have to sweat. The book starts out talking about key concepts like why Ajax, what is Ajax, what are the alternatives to Ajax, what is CSS, what is DOM, what does it mean to load the data in a browser using an asynchronous way, MVC concepts applied to a web server and some common patterns like Observer, Command or Façade. Ok now you might already have a clear vision of Ajax basis and the world in which Ajax lives, so let's see the core techniques, and this is what the authors present starting with the second part, just core techniques. A few key points: if we look at a page as an application with all the MVC in a page than what is the role of a server, how to code the server side, do we need to use frameworks for the server side and how we can exchange data. The book is not really a practical book with pre-build examples ready to be applied, is much more oriented to the theory of Ajax and assumes a certain level of competency, so the examples are almost all only partial or abstracted. Starting on the 3rd part we finally see some common examples like keeping the user informed, indicating the freshness of data or designing a notification system. But this part is not intended to offer only examples, but to be a complete support to someone who already knows the basic and expects a professional view of Ajax. So now it is supposed to have all the info to create something from zero to the end. Well ...almost to the end because only the end of this part we will see how to add security and how to design for performance. Now you have all the info about Ajax and want to start your own coding. The book is here to help you: just read the last part, a kind of "by example" full of examples. Overall, the book is written in an academic manner: intro, theory, examples that prove the theory , advanced stuff, examples for the advanced stuff, practical examples. Nothing new in terms of composition. My advice: if you like this traditional style, you want a solid background and you have the time and ability to read 600 pages , just do it , you will not regret any single page. Otherwise if you are under pressure, my advice is to read Ajax in Practice, by Manning too. preface......Page 20 acknowledgments......Page 22 about this book......Page 25 Roadmap......Page 26 Code downloads......Page 29 About the title......Page 30 About the cover illustration......Page 31 Rethinking the web application......Page 32 A new design for the Web......Page 34 1.1.1 Comparing the user experiences......Page 36 1.1.2 Network latency......Page 40 1.1.3 Asynchronous interactions......Page 43 1.1.4 Sovereign and transient usage patterns......Page 46 1.1.5 Unlearning the Web......Page 47 1.2.1 The browser hosts an application, not content......Page 48 1.2.2 The server delivers data, not content......Page 50 1.2.3 User interaction with the application can be fluid and continuous......Page 52 1.2.4 This is real coding and requires discipline......Page 54 1.3.1 Surveying the field......Page 55 1.3.2 Google Maps......Page 56 1.4.2 Java Web Start and related technologies......Page 59 1.5 Summary......Page 60 1.6 Resources......Page 61 First steps with Ajax......Page 62 2.1 The key elements of Ajax......Page 63 2.2 Orchestrating the user experience with JavaScript......Page 65 2.3 Defining look and feel using CSS......Page 67 2.3.1 CSS selectors......Page 68 2.3.2 CSS style properties......Page 70 2.3.3 A simple CSS example......Page 71 2.4 Organizing the view using the DOM......Page 76 2.4.1 Working with the DOM using JavaScript......Page 78 2.4.2 Finding a DOM node......Page 80 2.4.3 Creating a DOM node......Page 81 2.4.4 Adding styles to your document......Page 82 2.5 Loading data asynchronously using XML technologies......Page 84 2.5.1 IFrames......Page 85 2.5.2 XmlDocument and XMLHttpRequest objects......Page 87 2.5.3 Sending a request to the server......Page 89 2.5.4 Using callback functions to monitor the request......Page 92 2.5.5 The full lifecycle......Page 93 2.6 What sets Ajax apart......Page 96 2.7 Summary......Page 98 2.8 Resources......Page 99 Introducing order to Ajax......Page 100 3.1.1 Patterns: creating a common vocabulary......Page 102 3.1.2 Refactoring and Ajax......Page 103 3.1.4 Refactoring in action......Page 104 3.2.1 Cross-browser inconsistencies: Façade and Adapter patterns......Page 108 3.2.2 Managing event handlers: Observer pattern......Page 111 3.2.3 Reusing user action handlers: Command pattern......Page 114 3.2.4 Keeping only one reference to a resource: Singleton pattern......Page 118 3.3 Model-View-Controller......Page 122 3.4.1 The Ajax web server tier without patterns......Page 124 3.4.2 Refactoring the domain model......Page 127 3.4.3 Separating content from presentation......Page 131 3.5 Third-party libraries and frameworks......Page 134 3.5.1 Cross-browser libraries......Page 135 3.5.2 Widgets and widget suites......Page 139 3.5.3 Application frameworks......Page 142 3.6 Summary......Page 145 3.7 Resources......Page 146 Core techniques......Page 148 The page as an application......Page 150 4.1.1 Repeating the pattern at different scales......Page 151 4.1.2 Applying MVC in the browser......Page 153 4.2.1 Keeping the logic out of the View......Page 155 4.2.2 Keeping the View out of the logic......Page 161 4.3.1 Classic JavaScript event handlers......Page 165 4.3.2 The W3C event model......Page 168 4.3.3 Implementing a flexible event model in JavaScript......Page 169 4.4 Models in an Ajax application......Page 174 4.4.1 Using JavaScript to model the business domain......Page 175 4.4.2 Interacting with the server......Page 176 4.5.1 Reflecting on a JavaScript object......Page 178 4.5.2 Dealing with arrays and objects......Page 182 4.5.3 Adding a Controller......Page 185 4.6 Summary......Page 188 4.7 Resources......Page 189 The role of the server......Page 190 5.1 Working with the server side......Page 191 5.2.1 Popular implementation languages......Page 192 5.2.2 N-tier architectures......Page 193 5.2.3 Maintaining client-side and server-side domain models......Page 194 5.3.1 Naive web server coding without a framework......Page 195 5.3.2 Working with Model2 workflow frameworks......Page 197 5.3.3 Working with component-based frameworks......Page 198 5.3.4 Working with service-oriented architectures......Page 201 5.4 The details: exchanging data......Page 205 5.4.2 Introducing the planet browser example......Page 206 5.4.3 Thinking like a web page: content-centric interactions......Page 209 5.4.4 Thinking like a plug-in: script-centric interactions......Page 213 5.4.5 Thinking like an application: data-centric interactions......Page 219 5.5.1 Using HTML forms......Page 224 5.5.2 Using the XMLHttpRequest object......Page 226 5.5.3 Managing user updates effectively......Page 228 5.6 Summary......Page 237 5.7 Resources......Page 238 Professional Ajax......Page 240 The user experience......Page 242 6.1 Getting it right: building a quality application......Page 243 6.1.2 Robustness......Page 244 6.1.3 Consistency......Page 245 6.1.5 Making it work......Page 246 6.2.1 Handling responses to our own requests......Page 247 6.2.2 Handling updates from other users......Page 249 6.3 Designing a notification system for Ajax......Page 253 6.3.1 Modeling notifications......Page 254 6.3.2 Defining user interface requirements......Page 256 6.4.1 Rendering status bar icons......Page 257 6.4.2 Rendering detailed notifications......Page 260 6.4.3 Putting the pieces together......Page 261 6.5 Using the framework with network requests......Page 268 6.6.1 Defining a simple highlighting style......Page 272 6.6.2 Highlighting with the Scriptaculous Effects library......Page 274 6.7 Summary......Page 275 6.8 Resources......Page 276 Security and Ajax......Page 277 7.1 JavaScript and browser security......Page 278 7.1.2 Considerations for Ajax......Page 279 7.1.3 Problems with subdomains......Page 280 7.1.4 Cross-browser security......Page 281 7.2 Communicating with remote services......Page 282 7.2.1 Proxying remote services......Page 283 7.2.2 Working with web services......Page 284 7.3.1 The man in the middle......Page 294 7.3.2 Using secure HTTP......Page 295 7.3.3 Encrypting data over plain HTTP using JavaScript......Page 297 7.4.1 Designing a secure web tier......Page 299 7.4.2 Restricting access to web data......Page 303 7.5 Summary......Page 308 7.6 Resources......Page 309 Performance......Page 310 8.1 What is performance?......Page 311 8.2 JavaScript execution speed......Page 312 8.2.1 Timing your application the hard way......Page 313 8.2.2 Using the Venkman profiler......Page 319 8.2.3 Optimizing execution speed for Ajax......Page 320 8.3.1 Avoiding memory leaks......Page 333 8.3.2 Special considerations for Ajax......Page 337 8.4 Designing for performance......Page 342 8.4.1 Measuring memory footprint......Page 343 8.4.2 A simple example......Page 347 8.4.3 Results: how to reduce memory footprint 150-fold......Page 352 8.5 Summary......Page 354 8.6 Resources......Page 355 Ajax by example......Page 356 Dynamic double combo......Page 358 9.1.1 Limitations of a client-side solution......Page 359 9.1.2 Limitations of a server-side solution......Page 360 9.1.3 Ajax-based solution......Page 361 9.2.1 Designing the form......Page 362 9.2.2 Designing the client/server interactions......Page 364 9.3 Implementing the server: VB .NET......Page 365 9.3.1 Defining the XML response format......Page 366 9.3.2 Writing the server-side code......Page 367 9.4.1 Navigating the XML document......Page 370 9.4.2 Applying Cascading Style Sheets......Page 373 9.5.1 Allowing multiple-select queries......Page 374 9.6 Refactoring......Page 376 9.6.1 New and improved net.ContentLoader......Page 377 9.6.2 Creating a double-combo component......Page 383 9.7 Summary......Page 390 Type-ahead suggest......Page 392 10.1.1 Common type-ahead suggest features......Page 393 10.1.2 Google Suggest......Page 395 10.1.3 The Ajax in Action type-ahead......Page 396 10.2.1 The server and the database......Page 397 10.2.2 Testing the server-side code......Page 399 10.3.1 The HTML......Page 400 10.3.2 The JavaScript......Page 401 10.3.3 Accessing the server......Page 411 10.5 Refactoring......Page 423 10.5.1 Day 1: developing the TextSuggest component game plan......Page 425 10.5.2 Day 2: TextSuggest creation-clean and configurable......Page 428 10.5.3 Day 3: Ajax enabled......Page 432 10.5.4 Day 4: handling events......Page 437 10.5.5 Day 5: the suggestions pop-up UI......Page 444 10.5.6 Refactor debriefing......Page 452 10.6 Summary......Page 453 The enhanced Ajax web portal......Page 454 11.1.1 The classic portal......Page 455 11.1.2 The rich user interface portal......Page 457 11.2 The Ajax portal architecture using Java......Page 458 11.3.1 The user table......Page 460 11.3.2 The server-side login code: Java......Page 461 11.3.3 The client-side login framework......Page 464 11.4.1 The portal windows database......Page 470 11.4.2 The portal window’s server-side code......Page 472 11.4.3 Adding the JS external library......Page 476 11.5.1 Adapting the library......Page 479 11.5.2 Autosaving the information to the database......Page 481 11.6 Refactoring......Page 484 11.6.1 Defining the constructor......Page 486 11.6.2 Adapting the AjaxWindows.js library......Page 487 11.6.3 Specifying the portal commands......Page 489 11.6.4 Performing the Ajax processing......Page 493 11.7 Summary......Page 495 Live search using XSLT......Page 497 12.1.1 Looking at the classic search......Page 498 12.1.2 The flaws of the frame and pop-up methods......Page 500 12.1.3 Examining a live search with Ajax and XSLT......Page 501 12.1.4 Sending the results back to the client......Page 503 12.2.1 Setting up the client......Page 504 12.2.2 Initiating the process......Page 505 12.3.1 Building the XML document......Page 507 12.3.2 Building the XSLT document......Page 510 12.4 Combining the XSLT and XML documents......Page 512 12.4.1 Working with Microsoft Internet Explorer......Page 514 12.4.2 Working with Mozilla......Page 515 12.5.1 Applying a Cascading Style Sheet......Page 516 12.5.2 Improving the search......Page 518 12.5.3 Deciding to use XSLT......Page 520 12.5.4 Overcoming the Ajax bookmark pitfall......Page 521 12.6 Refactoring......Page 522 12.6.1 An XSLTHelper......Page 523 12.6.2 A live search component......Page 527 12.7 Summary......Page 532 Building stand-alone applications with Ajax......Page 534 13.1 Reading information from the outside world......Page 535 13.1.1 Discovering XML feeds......Page 536 13.1.2 Examining the RSS structure......Page 537 13.2 Creating the rich user interface......Page 540 13.2.1 The process......Page 541 13.2.2 The table-less HTML framework......Page 542 13.2.3 Compliant CSS formatting......Page 544 13.3.1 Global scope......Page 549 13.3.2 Ajax preloading functionality......Page 551 13.4.1 Cross-browser opacity rules......Page 555 13.4.2 Implementing the fading transition......Page 556 13.4.3 Integrating JavaScript timers......Page 558 13.5 Additional functionality......Page 559 13.5.1 Inserting additional feeds......Page 560 13.5.2 Integrating the skipping and pausing functionality......Page 562 13.6.1 Overcoming Mozilla’s security restriction......Page 565 13.7.1 RSS reader Model......Page 568 13.7.2 RSS reader view......Page 572 13.7.3 RSS reader Controller......Page 576 13.7.4 Refactoring debrief......Page 589 13.8 Summary......Page 590 The Ajax craftsperson’s toolkit......Page 592 A.1.1 Acquiring tools that fit......Page 593 A.1.2 Building your own tools......Page 594 A.1.3 Maintaining your toolkit......Page 595 A.2.1 What to look for in a code editor......Page 596 A.2.2 Current offerings......Page 598 A.3 Debuggers......Page 602 A.3.2 JavaScript debuggers......Page 603 A.3.3 HTTP debuggers......Page 608 A.3.4 Building your own cross-browser output console......Page 610 A.4 DOM inspectors......Page 613 A.4.1 Using the Mozilla DOM Inspector......Page 614 A.4.2 DOM inspectors for Internet Explorer......Page 615 A.5 Installing Firefox extensions......Page 616 A.6 Resources......Page 619 JavaScript for object-oriented programmers......Page 620 B.1 JavaScript is not Java......Page 621 B.2.1 Building ad hoc objects......Page 623 B.2.2 Constructor functions, classes, and prototypes......Page 628 B.2.3 Extending built-in classes......Page 630 B.2.4 Inheritance of prototypes......Page 631 B.2.5 Reflecting on JavaScript objects......Page 632 B.2.6 Interfaces and duck typing......Page 634 B.3.1 Functions as first-class citizens......Page 637 B.3.2 Attaching functions to objects......Page 638 B.3.3 Borrowing functions from other objects......Page 639 B.3.4 Ajax event handling and function contexts......Page 640 B.3.5 Closures in JavaScript......Page 645 B.5 Resources......Page 648 Ajax frameworks and libraries......Page 650 Ajax JavaServer Faces Framework......Page 651 AjaxAC......Page 652 BackBase......Page 653 CakePHP......Page 654 CPAINT (Cross-Platform Asynchronous Interface Toolkit)......Page 655 f(m)......Page 656 HTMLHttpRequest......Page 657 JSON......Page 658 Oddpost......Page 659 Qooxdoo......Page 660 SAJAX......Page 661 Tibet......Page 662 WebORB for Java......Page 663 XHConn......Page 664 A......Page 666 B......Page 667 C......Page 668 D......Page 669 E......Page 670 F......Page 671 I......Page 672 L......Page 673 N......Page 674 P......Page 675 Q......Page 676 R......Page 677 S......Page 678 T......Page 679 W......Page 680 Z......Page 681 Val's Blog "A tremendously useful field guide specifically written for developers down in the trenches...waiting for the killer solution..." Web users are getting tired of the traditional web experience. They get frustrated losing their scroll position; they get annoyed waiting for refresh; they struggle to reorient themselves on every new page. And the list goes on. With asynchronous JavaScript and XML, known as "Ajax," you can give them a better experience. Once users have experienced an Ajax interface, they hate to go back. Ajax is new way of thinking that can result in a flowing and intuitive interaction with the user. Ajax in Action helps you implement that thinking--it explains how to distribute the application between the client and the server ( use a "nested MVC" design) while retaining the integrity of the system. You will learn how to ensure your app is flexible and maintainable, and how good, structured design can help avoid problems like browser incompatibilities. Along the way it helps you unlearn many old coding habits. Above all, it opens your mind to the many advantages gained by placing much of the processing in the browser. If you are a web developer who has prior experience with web technologies, this book is for you. Purchase of the print book comes with an offer of a free PDF, ePub, and Kindle eBook from Manning. Also available is all code from the book. Val's Blog'A tremendously useful field guide specifically written for developers down in the trenches...waiting for the killer solution...'Web users are getting tired of the traditional web experience. They get frustrated losing their scroll position; they get annoyed waiting for refresh; they struggle to reorient themselves on every new page. And the list goes on. With asynchronous JavaScript and XML, known as'Ajax,'you can give them a better experience. Once users have experienced an Ajax interface, they hate to go back. Ajax is new way of thinking that can result in a flowing and intuitive interaction with the user.Ajax in Action helps you implement that thinking--it explains how to distribute the application between the client and the server (hint: use a'nested MVC'design) while retaining the integrity of the system. You will learn how to ensure your app is flexible and maintainable, and how good, structured design can help avoid problems like browser incompatibilities. Along the way it helps you unlearn many old coding habits. Above all, it opens your mind to the many advantages gained by placing much of the processing in the browser. If you are a web developer who has prior experience with web technologies, this book is for you. Purchase of the print book comes with an offer of a free PDF, ePub, and Kindle eBook from Manning. Also available is all code from the book. Val's Blog "A tremendously useful field guide specifically written for developers down in the trenches...waiting for the killer solution..." Web users are getting tired of the traditional web experience. They get frustrated losing their scroll position; they get annoyed waiting for refresh; they struggle to reorient themselves on every new page. And the list goes on. With asynchronous JavaScript and XML, known as "Ajax," you can give them a better experience. Once users have experienced an Ajax interface, they hate to go back. Ajax is new way of thinking that can result in a flowing and intuitive interaction with the user. Ajax in Action helps you implement that thinking--it explains how to distribute the application between the client and the server (hint: use a "nested MVC" design) while retaining the integrity of the system. You will learn how to ensure your app is flexible and maintainable, and how good, structured design can help avoid problems like browser incompatibilities. Along the way it helps you unlearn many old coding habits. Above all, it opens your mind to the many advantages gained by placing much of the processing in the browser. If you are a web developer who has prior experience with web technologies, this book is for you

Web users are getting tired of the traditional web experience. They get frustrated losing their scroll position; they get annoyed waiting for refresh; they struggle to reorient themselves on every new page. And the list goes on. With asynchronous JavaScript and XML, known as "Ajax," you can give them a better experience. Once users have experienced an Ajax interface, they hate to go back. Ajax is a new way of thinking that can result in a flowing and intuitive interaction with the user.

Ajax in Action helps you implement that thinking— it explains how to distribute the application between the client and the server (hint: use a "nested MVC" design) while retaining the integrity of the system. You will learn how to ensure your app is flexible and maintainable, and how good, structured design can help avoid problems like browser incompatibilities. Along the way it helps you unlearn many old coding habits. Above all, it opens your mind to the many advantages gained by placing much of the processing in the browser.

Книга Ajax - Ajax In Action Ajax - Ajax In ActionКниги Java Script Автор: Dave Crane, Eric Pascarello, and Darren James Год издания: 2006 Формат: pdf Издат.:Manning Publications Co. Страниц: 681 Размер: 6,32 Язык: Английский0 (голосов: 0) Оценка:AJAX (расшифровывается как Асинхронный JavaScript и XML) представляет собой набор принципов и техник для создания интерактивных web-приложений. Сам термин AJAX был введен в обращение Джеймсом Гаретом и с тех пор стал использоваться повсеместно. Несмотря на то, что технологии, позволяющие создавать интерактивные Web-приложения, были доступны с 2000 года, широкое распространение они получили только сейчас, во многом благодаря успеху таких Web-проектов как Google Maps, GMail, Flickr. За прошедший год AJAX техники приобрели большую популярность, появилось множество библиотек для написания AJAX приложений, производители средств разработки вовсю кричат о “поддержке AJAX” в своих продуктах. Ajax exploded onto the scene in the Spring of 2005 when a Web site defined the term. Then, Google released Google Maps and GMail, powerful examples of what Ajax can do. This book explains the big picture and how to unlearn many old coding habits. It explains the design patterns and best practices to create a live interface for the user, not get in his way

قیمت نهایی

۴۴٬۰۰۰ تومان