Page 4

Search Result: - 618


Nishith Pathak photo

Pro WCF 4 2nd Edition
Author: Nishith Pathak
Pages: 452
Part I: Introducing Windows Communication Foundation .......................................... 1■Chapter 1: WCF and SOA Basics .............................................................................. 3Understanding SOA ............................................................................................................ 3What Is a Service? ............................................................................................................. 5Tenet 1: Boundaries Are Explicit ............................................................................................................... 6Tenet 2: Services Are Autonomous ........................................................................................................... 6Tenet 3: Services Share the Schema and Contract Not the Class ........................................................... 7Tenet 4: Service Compatibility Is Based on Policy .................................................................................... 7A Brief History of the Microsoft Distributed Stack ............................................................. 8Why Are Web Services the Preferred Option? .................................................................. 10What Does WCF Solve? .................................................................................................... 11Unification of Existing Technologies ................................................................................ 12Interoperability Across Platforms ..................................................................................... 13WCF As a Service-Oriented Development Tool ................................................................ 15Exploring Features in WCF ............................................................................................... 18Developer Productivity ..................................................................................................... 18Attribute-Based Development .......................................................................................... 18
Coexisting with Existing Technology ................................................................................ 19Hosting Services .............................................................................................................. 19Migration/Integration with Existing Technology ............................................................... 20One Service Multiple Endpoints ...................................................................................... 21Integration Technologies .................................................................................................. 22How Do You Unify All These Technologies? ..................................................................... 22Summary .......................................................................................................................... 24■Chapter 2: What’s New in WCF 4 ........................................................................... 25Introducing the ABCs of WCF ........................................................................................... 25Standard Endpoints .......................................................................................................... 27Simplified Configuration ................................................................................................... 31Default Endpoints ............................................................................................................. 32Default Bindings ............................................................................................................... 34Default Behavior ............................................................................................................... 36Fileless Activation ............................................................................................................ 37Service Discovery ............................................................................................................. 37Support of Visual Studio ................................................................................................... 41Routing Service ................................................................................................................ 42Improved REST Support ................................................................................................... 48Workflow Services ........................................................................................................... 51Summary .......................................................................................................................... 53■Chapter 3: Exploring the WCF Programming Model .............................................. 55Introducing the Technical Architecture ............................................................................ 56Introducing the Programming Approach .......................................................................... 56WCF Programming Model ................................................................................................ 57Addresses ............................................................................................................................................... 58Bindings .................................................................................................................................................. 60Contracts ................................................................................................................................................. 62

 2021-05-09 00:33:27 |  110 | Naser

ciprian Adrian Rusen photo

آموزش windows 8
Author: ciprian Adrian Rusen
Pages: 777
آموزش windows 8
کتاب آموزش windows 8

مطالب در یک نگاه:
درباره نویسنده
مقدمه
معرفی ویندوز 8
احراز هویت و مجوز
نگاه به ساخت ویندوز
استفاده از نرم افزار بر روی صفحه نمایش شروع Start Screen
آموزش صرفه جویی در مصرف، مرورگر و سازماندهی فایل ها و پوشه ها
استفاده از مرورگر اینترنت اکسپلورر 10
آموزش SkyDrive
آموزش Social Apps
خرید در فروشگاه ویندوز
لذت داشتن با چند رسانه ای Multimedia
بازی کردن Games
اتصال به شبکه و اینترنت
آموزش اجازه دادن به دیگران برای استفاده از کامپیوتر در ویندوز 8
ه اشتراک گذاری فایل ها و پوشه ها با استفاده از My Network در windows 8
نگه داشتن امنیت windows 8
آموزش جلوگیری از مشکلات در ویندوز 8
آموزش نظارت بر استفاده از کامپیوتر در کودکان ئر ویندوز 8
آموزش ساخت My Computer در دسترس در windows 8
استفاده از ویندوز 8 در محل کار
با استفاده از ویندوز 8 در دستگاه های لمسی سازگار نکاتی برای بهبود ویندوز 8 رایانه تجربه
نکاتی برای بهبود ویندوز 8

 2021-05-06 06:45:04 |  118 | Naser

John Paul Mueller photo

LINQ For Dummies®
Author: John Paul Mueller
Pages: 382
Contents at a GlanceIntroduction ................................................................ 1Part I: An Overview of LINQ ......................................... 7Chapter 1: Getting to Know LINQ ....................................................................................9Chapter 2: Creating Simple LINQ Queries .....................................................................23Chapter 3: Considering the .NET Language Extensions ..............................................47Chapter 4: Working with LINQ in Visual Basic .NET....................................................69Chapter 5: Working with LINQ in Visual Studio 2005 ..................................................91Part II: Using Standard LINQ to Technologies ............ 105Chapter 6: LINQ to Object.............................................................................................107Chapter 7: LINQ to DataSet ...........................................................................................133Chapter 8: LINQ to SQL Server .....................................................................................157Chapter 9: LINQ to XML ................................................................................................181Part III: Extending LINQ to New Horizons .................. 211Chapter 10: Using LINQ with Office 2007 ....................................................................213Chapter 11: Advanced LINQ to SQL Server ................................................................233Chapter 12: LINQ to Active Directory .........................................................................253Chapter 13: Other LINQ to Strategies ..........................................................................271Part IV: The Part of Tens .......................................... 299Chapter 14: Ten Ways to Improve LINQ Development .............................................301Chapter 15: Ten Ways to Reduce Application Support Costs ..................................321Chapter 16: Ten LINQ Resources .................................................................................335Index ...................................................................... 347

 2021-05-11 17:11:22 |  153 | Naser

Jay Blanchard photo

دانلود کتاب Applied jQuery-Develop and Design
Author: Jay Blanchard
Pages: 126
دوره آموزش jquery
توضیح مختصر: Applied jQuery به خوانندگان آن آموزش می دهد چگونه در کوتاه ترین زمان بتوانند رابط های کاربری برای اپلیکیشن های تحت وب بنویسند. این کتاب که به بهترین نحو طراحی شده، علاوه بر تکنیک های کاربردی متعدد، دستورالعمل ها و رهنمودهای مفید فراوانی در زمینه ی کدنویسی ارائه می دهد. نگارنده ی کتاب، Jay Blanchard، که تجربه ی عملی زیادی در این فیلد کاری دارد بدون هیچ اتلاف وقت به آموزش پرداخته و خواننده را از سطح مقدماتی تا سطح یک توسعه دهنده ی ماهر رابط کاربری همراهی می کند.  
Applied jQuery teaches readers how to quickly start writing application interfaces. The beautifully designed book offers practical techniques and provides lots of real-world advice and guidance. The Author Jay Blanchard has practical experience working in the field and wastes no time getting to the instruction taking the reader from a beginner to a proficient interface programmer by the end of the book.

ContentsIntroductionWelcome to jQueryCHAPTER 1 INTRODUCING jQUERYMaking jQuery WorkWorking with the DOMLearning a Few jQuery TipsSelecting Elements SpecificallyMaking Quick Work of DOM TraversalTroubleshooting with FirebugPacking Up Your CodeUsing Return FalseFiddling with jQuery CodeCombining jQuery with Other CodeStarting with HTMLStyling Web Pages with CSSUsing PHP and MySQLProgressive EnhancementPlanning Design and InteractionWrapping UpCHAPTER 2 WORKING WITH EVENTSUsing the Photographer’s Exchange Web siteMaking Navigation GracefulCreating and Calling Modal WindowsBinding Events to Other ElementsBuilding an Image CarouselCreating Sprite-based NavigationWrapping UpCHAPTER 3 MAKING FORMS POPLeveraging Form EventsFocusing on a Form InputValidating Email AddressesMaking Sure an Input Is CompleteTackling UploadsPerforming Client-side ValidationDeveloping Server-side ValidationUploading FilesWrapping UpCHAPTER 4 BEING EFFECTIVE WITH AJAXUsing AJAX for ValidationBuilding the PHP Registration and Validation FileSetting Up the jQuery Validation and Registration FunctionsLogging in the UserUsing AJAX to Update ContentGetting Content Based on the Current UserLoading Content Based on RequestLoading Scripts DynamicallyUsing jQuery’s AJAX ExtrasUsing JSONSecuring AJAX Requests
Preventing Form SubmissionUsing Cookies to Identify UsersCleansing User-supplied DataTransmitting Data SecurelyWrapping UpCHAPTER 5 APPLYING jQUERY WIDGETSUsing the jQuery UI WidgetsCustomizing the jQuery UIIncluding jQuery UI WidgetsUsing jQuery PluginsBeefing Up Your Apps with PluginsPumping Up Your SitesRolling Your Own PluginsWrapping UpCHAPTER 6 CREATING APPLICATION INTERFACESEstablishing the FoundationCreating the HTMLApplying the CSSMaking the Interface ResizableImproving the Application InterfaceCreating Better SpritesLoading Content with AJAXConfiguring Additional EnhancementsWrapping upIndex

 2021-05-08 15:57:15 |  91 | Naser

brian p.hogan photo

HTML5 and CSS3
Author: brian p.hogan
Pages: 265
Acknowledgments 8Preface 10HTML5: The Platform vs. the Specification . . . . . . . . . 10How This Wor ks . . . . . . . . . . . . . . . . . . . . . . . . . 11What’s in This Book . . . . . . . . . . . . . . . . . . . . . . 12Prerequisites . . . . . . . . . . . . . . . . . . . . . . . . . . . 12Online Resources . . . . . . . . . . . . . . . . . . . . . . . . 131 An Overview of HTML5 and CSS3 141.1 A Platform for We b Development . . . . . . . . . . 141.2 Backward Compatibility . . . . . . . . . . . . . . . 171.3 The Road to the Future Is Bumpy . . . . . . . . . 17Part I—Improving User Interfaces 232 New Structural Tags and Attributes 24Tip 1 Redefining a Blog Using Semantic Markup . . . . 27Tip 2 Creating Pop-up Windows with Custom Data Attributes. . . . . . . . . . . . . . . . . . . . . . . . . . 403 Creating User-Friendly Web Forms 45Tip 3 Describing Data with New Input Fields . . . . . . 48Tip 4 Jumping to the First Field with Autofocus . . . . . 56Tip 5 Providing Hints with Placeholder Text . . . . . . . 58Tip 6 In-Place Editing with contenteditable . . . . . . . 65
4 Making Better User Interfaces with CSS3 72Tip 7 Styling Tables with Pseudoclasses . . . . . . . . . 74Tip 8 Making Links Printable with :after and content . . 83Tip 9 Creating Multicolumn Layouts . . . . . . . . . . . 87Tip 10 Building Mobile Interfaces with Media Queries . . 945 Improving Accessibility 97Tip 11 Providing Navigation Hints with ARIA Roles . . . . 99Tip 12 Creating an Accessible Updatable Region . . . . . 104Part II—New Sights and Sounds 1106 Drawing on the Canvas 111Tip 13 Drawing a Logo . . . . . . . . . . . . . . . . . . . . 112Tip 14 Graphing Statistics with RGraph . . . . . . . . . . 1197 Embedding Audio and Video 1277.1 A Bit of History . . . . . . . . . . . . . . . . . . . . 1287.2 Containers and Codecs . . . . . . . . . . . . . . . . 129Tip 15 Wor ki ng with Audio . . . . . . . . . . . . . . . . . . 133Tip 16 Embedding Video . . . . . . . . . . . . . . . . . . . 1378 Eye Candy 144Tip 17 Rounding Rough Edges . . . . . . . . . . . . . . . 146Tip 18 Wor ki ng with Shadows Gradients and Transformations. . . . . . . . . . . . . . . . . . . . . . . . . 154Tip 19 Using Real Fonts . . . . . . . . . . . . . . . . . . . 165Part III—Beyond HTML5 1719 Wor ki ng with Client-Side Data 172Tip 20 Saving Preferences with localStorage . . . . . . . . 175Tip 21 Storing Data in a Client-Side Relational Database 181Tip 22 Wor ki ng Offline . . . . . . . . . . . . . . . . . . . . 19310 Playing Nicely with Other APIs 196Tip 23 Preserving History . . . . . . . . . . . . . . . . . . . 197Tip 24 Talking Across Domains . . . . . . . . . . . . . . . 200Tip 25 Chatting with We b Sockets . . . . . . . . . . . . . 207Tip 26 Finding Yourself: Geolocation . . . . . . . . . . . . 214

 2021-05-08 15:57:13 |  132 | Naser

A. Jones Fred L. Drake Jr photo
 2021-05-08 15:57:08 |  128 | Naser

Stefan Edelkamp photo

Heuristic Search Theory and Applications
Author: Stefan Edelkamp
Pages: 865
List of Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xviiPreface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxiiiPART I HEURISTIC SEARCH PRIMERCHAPTER 1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.1 Notational and Mathematical Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.1.1 Pseudo Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.1.2 Computability Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.1.3 Complexity Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51.1.4 Asymptotic Resource Consumption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71.1.5 Symbolic Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81.2 Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91.3 Success Stories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91.4 State Space Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121.5 Problem Graph Representations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141.6 Heuristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151.7 Examples of Search Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191.7.1 Sliding-Tile Puzzles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191.7.2 Rubik’s Cube . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221.7.3 Sokoban . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221.7.4 Route Planning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241.7.5 TSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251.7.6 Multiple Sequence Alignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261.8 General State Space Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291.8.1 Action Planning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291.8.2 *Production Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321.8.3 Markov Decision Processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351.8.4 Generic Search Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361.9 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371.10 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391.11 Bibliographic Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45CHAPTER 2 Basic Search Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472.1 Uninformed Graph Search Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 482.1.1 Depth-First Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 502.1.2 Breadth-First Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512.1.3 Dijkstra’s Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
2.1.4 Negatively Weighted Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 572.1.5 Relaxed Node Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 582.1.6 *Algorithm of Bellman-Ford . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 602.1.7 Dynamic Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 622.2 Informed Optimal Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 682.2.1 A* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 692.2.2 On the Optimal Efficiency of A* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 742.3 *General Weights . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 752.3.1 Cost Algebras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 762.3.2 Multiobjective Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 792.4 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 802.5 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 822.6 Bibliographic Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86CHAPTER 3 *Dictionary Data Structures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 893.1 Priority Queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 893.1.1 Bucket Data Structures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 903.1.2 Heap Data Structures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 973.2 Hash Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1103.2.1 Hash Dictionaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1113.2.2 Hash Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1123.2.3 Hashing Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1213.2.4 Memory-Saving Dictionaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1303.2.5 Approximate Dictionaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1343.3 Subset Dictionaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1383.3.1 Arrays and Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1393.3.2 Tries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1393.3.3 Hashing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1393.3.4 Unlimited Branching Trees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1413.4 String Dictionaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1423.4.1 Suffix Trees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1433.4.2 Generalized Suffix Trees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1463.5 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1513.6 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1543.7 Bibliographic Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157CHAPTER 4 Automatically Created Heuristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1614.1 Abstraction Transformations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1624.2 Valtorta’s Theorem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1644.3 *Hierarchical A* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1654.4 Pattern Databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
4.4.1 Fifteen-Puzzle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1684.4.2 Rubik’s Cube . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1694.4.3 Directed Search Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1704.4.4 Korf’s Conjecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1704.4.5 Multiple Pattern Databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1724.4.6 Disjoint Pattern Databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1734.5 *Customized Pattern Databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1774.5.1 Pattern Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1784.5.2 Symmetry and Dual Pattern Databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1794.5.3 Bounded Pattern Databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1804.5.4 On-Demand Pattern Databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1834.5.5 Compressed Pattern Databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1834.5.6 Compact Pattern Databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1854.6 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1854.7 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1874.8 Bibliographic Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190PART II HEURISTIC SEARCH UNDER MEMORY CONSTRAINTSCHAPTER 5 Linear-Space Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1955.1 *Logarithmic Space Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1955.1.1 Divide-and-Conquer BFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1965.1.2 Divide-and-Conquer Shortest Paths Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1965.2 Exploring the Search Tree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1975.3 Branch-and-Bound . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1985.4 Iterative-Deepening Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2015.5 Iterative-Deepening A* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2045.6 Prediction of IDA* Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2065.6.1 Asymptotic Branching Factors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2065.6.2 IDA* Search Tree Prediction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2125.6.3 *Convergence Criteria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2175.7 *Refined Threshold Determination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2185.8 *Recursive Best-First Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2195.9 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2205.10 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2225.11 Bibliographic Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223CHAPTER 6 Memory-Restricted Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2276.1 Linear Variants Using Additional Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2286.1.1 Transposition Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2286.1.2 Fringe Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
6.1.3 *Iterative Threshold Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2336.1.4 MA* SMA and SMAG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2356.2 Nonadmissible Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2406.2.1 Enforced Hill-Climbing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2406.2.2 Weighted A* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2436.2.3 Overconsistent A* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2446.2.4 Anytime Repairing A* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2466.2.5 k-Best-First Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2506.2.6 Beam Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2516.2.7 Partial A* and Partial IDA* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2516.3 Reduction of the Closed List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2546.3.1 Dynamic Programming in Implicit Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2556.3.2 Divide-and-Conquer Solution Reconstruction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2556.3.3 Frontier Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2576.3.4 *Sparse Memory Graph Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2596.3.5 Breadth-First Heuristic Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2616.3.6 Locality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2646.4 Reduction of the Open List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2666.4.1 Beam-Stack Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2666.4.2 Partial Expansion A* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2706.4.3 Two-Bit Breadth-First Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2716.5 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2736.6 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2756.7 Bibliographic Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279CHAPTER 7 Symbolic Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2837.1 Boolean Encodings for Set of States . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2847.2 Binary Decision Diagrams . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2867.3 Computing the Image for a State Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2907.4 Symbolic Blind Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2917.4.1 Symbolic Breadth-First Tree Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2917.4.2 Symbolic Breadth-First Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2937.4.3 Symbolic Pattern Databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2947.4.4 Cost-Optimal Symbolic Breadth-First Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2967.4.5 Symbolic Shortest Path Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2987.5 Limits and Possibilities of BDDs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2997.5.1 Exponential Lower Bound . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2997.5.2 Polynomial Upper Bound . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3007.6 Symbolic Heuristic Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3027.6.1 Symbolic A* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3027.6.2 Bucket Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
7.6.3 Symbolic Best-First Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3077.6.4 Symbolic Breadth-First Branch-and-Bound . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3087.7 *Refinements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3097.7.1 Improving the BDD Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3097.7.2 Partitioning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3107.8 Symbolic Algorithms for Explicit Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3117.9 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3117.10 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3137.11 Bibliographic Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317CHAPTER 8 External Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3198.1 Virtual Memory Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3208.2 Fault Tolerance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3218.3 Model of Computation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3218.4 Basic Primitives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3238.5 External Explicit Graph Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3248.5.1 *External Priority Queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3248.5.2 External Explicit Graph Depth-First Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3258.5.3 External Explicit Graph Breadth-First Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3268.6 External Implicit Graph Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3288.6.1 Delayed Duplicate Detection for BFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3288.6.2 *External Breadth-First Branch-and-Bound . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3308.6.3 *External Enforced Hill-Climbing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3328.6.4 External A* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3348.6.5 *Lower Bound for Delayed Duplicate Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . 3408.7 *Refinements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3428.7.1 Hash-Based Duplicate Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3428.7.2 Structured Duplicate Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3438.7.3 Pipelining . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3448.7.4 External Iterative-Deepening A* Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3458.7.5 External Explicit-State Pattern Databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3468.7.6 External Symbolic Pattern Databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3488.7.7 External Relay Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3488.8 *External Value Iteration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3498.8.1 Forward Phase: State Space Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3498.8.2 Backward Phase: Update of Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3498.9 *Flash Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3538.9.1 Hashing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3548.9.2 Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3548.9.3 Compressing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3568.9.4 Flushing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358
8.10 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3588.11 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3618.12 Bibliographic Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364PART III HEURISTIC SEARCH UNDER TIME CONSTRAINTSCHAPTER 9 Distributed Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3699.1 Parallel Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3709.1.1 Motivation for Practical Parallel Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3749.1.2 Space Partitioning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3749.1.3 Depth Slicing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3759.1.4 Lock-Free Hashing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3789.2 Parallel Depth-First Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3799.2.1 *Parallel Branch-and-Bound . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3799.2.2 Stack Splitting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3809.2.3 Parallel IDA* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3829.2.4 Asynchronous IDA* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3829.3 Parallel Best-First Search Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3859.3.1 Parallel Global A* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3859.3.2 Parallel Local A* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3879.4 Parallel External Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3889.4.1 Parallel External Breadth-First Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3889.4.2 Parallel Structured Duplicate Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3919.4.3 Parallel External A* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3929.4.4 Parallel Pattern Database Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3989.5 Parallel Search on the GPU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4009.5.1 GPU Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4019.5.2 GPU-Based Breadth-First Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4019.5.3 Bitvector GPU Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4079.6 Bidirectional Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4089.6.1 Bidirectional Front-to-End Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4099.6.2 *Bidirectional Front-to-Front Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4109.6.3 Perimeter Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4129.6.4 Bidirectional Symbolic Breadth-First Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4169.6.5 *Island Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4169.6.6 *Multiple-Goal Heuristic Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4189.7 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4199.8 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4229.9 Bibliographic Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425
CHAPTER 10 State Space Pruning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42910.1 Admissible State Space Pruning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43010.1.1 Substring Pruning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43010.1.2 Pruning Dead-Ends . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44010.1.3 Penalty Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44510.1.4 Symmetry Reduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44710.2 Nonadmissible State Space Pruning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44910.2.1 Macro Problem Solving . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44910.2.2 Relevance Cuts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45210.2.3 Partial Order Reduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45310.3 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45810.4 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46010.5 Bibliographic Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463CHAPTER 11 Real-Time Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46511.1 LRTA* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46611.2 LRTA* with Lookahead One . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47311.3 Analysis of the Execution Cost of LRTA* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47411.3.1 Upper Bound on the Execution Cost of LRTA* . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47611.3.2 Lower Bound on the Execution Cost of LRTA* . . . . . . . . . . . . . . . . . . . . . . . . . . . 47711.4 Features of LRTA* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47911.4.1 Heuristic Knowledge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47911.4.2 Fine-Grained Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47911.4.3 Improvement of Execution Cost . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48011.5 Variants of LRTA* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48211.5.1 Variants with Local Search Spaces of Varying Sizes . . . . . . . . . . . . . . . . . . . . . . . 48211.5.2 Variants with Minimal Lookahead . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48211.5.3 Variants with Faster Value Updates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48411.5.4 Variants That Detect Convergence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48811.5.5 Variants That Speed Up Convergence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48811.5.6 Nonconverging Variants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49111.5.7 Variants for Nondeterministic and Probabilistic State Spaces . . . . . . . . . . . . . . 49411.6 How to Use Real-Time Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49611.6.1 Case Study: Off line Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49611.6.2 Case Study: Goal-Directed Navigation in Unknown Terrain . . . . . . . . . . . . . . . 49711.6.3 Case Study: Coverage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50011.6.4 Case Study: Localization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50111.7 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50711.8 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50911.9 Bibliographic Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 514
PART IV HEURISTIC SEARCH VARIANTSCHAPTER 12 Adversary Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51912.1 Two-Player Games . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52012.1.1 Game Tree Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52412.1.2 -Pruning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52512.1.3 Transposition Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53012.1.4 *Searching with Restricted Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53012.1.5 Accumulated Evaluations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53412.1.6 *Partition Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53512.1.7 *Other Improvement Techniques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53712.1.8 Learning Evaluation Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53812.1.9 Retrograde Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54312.1.10 *Symbolic Retrograde Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54412.2 *Multiplayer Games . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54712.3 General Game Playing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55012.4 AND/OR Graph Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55212.4.1 AO* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55412.4.2 *IDAO* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55412.4.3 *LAO* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55712.5 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55912.6 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56312.7 Bibliographic Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 567CHAPTER 13 Constraint Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57113.1 Constraint Satisfaction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57213.2 Consistency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57513.2.1 Arc Consistency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57513.2.2 Bounds Consistency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57713.2.3 *Path Consistency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57813.2.4 Specialized Consistency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57913.3 Search Strategies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58013.3.1 Backtracking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58113.3.2 Backjumping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58313.3.3 Dynamic Backtracking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58413.3.4 Backmarking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58513.3.5 Search Strategies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58713.4 NP-Hard Problem Solving . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59113.4.1 Boolean Satisfiability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59213.4.2 Number Partition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 596
13.4.3 *Bin Packing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59813.4.4 *Rectangle Packing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60113.4.5 *Vertex Cover Independent Set Clique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60413.4.6 *Graph Partition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60613.5 Temporal Constraint Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60913.5.1 Simple Temporal Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60913.5.2 *PERT Scheduling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61113.6 *Path Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61213.6.1 Formula Progression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61413.6.2 Automata Translation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61513.7 *Soft and Preference Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61713.8 *Constraint Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61813.9 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61913.10 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62313.11 Bibliographic Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 629CHAPTER 14 Selective Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63314.1 From State Space Search to Minimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63414.2 Hill-Climbing Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63514.3 Simulated Annealing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63714.4 Tabu Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63814.5 Evolutionary Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63914.5.1 Randomized Local Search and .1C1/ EA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63914.5.2 Simple GA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64114.5.3 Insights to Genetic Algorithm Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64314.6 Approximate Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64514.6.1 Approximating TSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64614.6.2 Approximating MAX-k-SAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64614.7 Randomized Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64714.8 Ant Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65214.8.1 Simple Ant System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65214.8.2 Algorithm Flood . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65414.8.3 Vertex Ant Walk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65414.9 *Lagrange Multipliers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65714.9.1 Saddle-Point Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65814.9.2 Partitioned Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66114.10 *No-Free-Lunch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66214.11 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66214.12 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66414.13 Bibliographic Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 668
PART V HEURISTIC SEARCH APPLICATIONSCHAPTER 15 Action Planning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67315.1 Optimal Planning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67515.1.1 Graphplan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67515.1.2 Satplan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67715.1.3 Dynamic Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67815.1.4 Planning Pattern Databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68015.2 Suboptimal Planning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68515.2.1 Causal Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68515.2.2 Metric Planning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68715.2.3 Temporal Planning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69115.2.4 Derived Predicates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69515.2.5 Timed Initial Literals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69615.2.6 State Trajectory Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69615.2.7 Preference Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69715.3 Bibliographic Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 697CHAPTER 16 Automated System Verification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70116.1 Model Checking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70216.1.1 Temporal Logics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70216.1.2 The Role of Heuristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70316.2 Communication Protocols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70516.2.1 Formula-Based Heuristic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70516.2.2 Activeness Heuristic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70716.2.3 Trail-Directed Heuristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70916.2.4 Liveness Model Checking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71016.2.5 Planning Heuristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71016.3 Program Model Checking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71316.4 Analyzing Petri Nets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71716.5 Exploring Real-Time Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72116.5.1 Timed Automata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72116.5.2 Linearly Priced Timed Automata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72216.5.3 Traversal Politics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72316.6 Analyzing Graph Transition Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72316.7 Anomalies in Knowledge Bases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72616.8 Diagnosis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72716.8.1 General Diagnostic Engine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72816.8.2 Symbolic Propagation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 729
16.9 Automated Theorem Proving . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73016.9.1 Heuristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73216.9.2 Functional A* Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73316.10 Bibliographic Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 734CHAPTER 17 Vehicle Navigation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73717.1 Components of Route Guidance Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73717.1.1 Generation and Preprocessing of Digital Maps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73717.1.2 Positioning Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73917.1.3 Map Matching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74117.1.4 Geocoding and Reverse Geocoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74417.1.5 User Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74417.2 Routing Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74417.2.1 Heuristics for Route Planning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74517.2.2 Time-Dependent Routing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74617.2.3 Stochastic Time-Dependent Routing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74717.3 Cutting Corners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74917.3.1 Geometric Container Pruning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74917.3.2 Localizing A* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75217.4 Bibliographic Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 756CHAPTER 18 Computational Biology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75918.1 Biological Pathway . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75918.2 Multiple Sequence Alignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76018.2.1 Bounds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76318.2.2 Iterative-Deepening Dynamic Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76318.2.3 Main Loop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76418.2.4 Sparse Representation of Solution Paths . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76718.2.5 Use of Improved Heuristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76918.3 Bibliographic Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 771CHAPTER 19 Robotics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77319.1 Search Spaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77319.2 Search under Incomplete Knowledge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77719.3 Fundamental Robot-Navigation Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77819.4 Search Objective . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78019.5 Search Approaches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78119.5.1 Optimal Off line Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78219.5.2 Greedy On line Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 784
19.6 Greedy Localization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78619.7 Greedy Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78719.8 Search with the Freespace Assumption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78919.9 Bibliographic Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 791Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 793Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 825

 2021-05-08 15:57:02 |  117 | Naser

James Payne photo

Beginning Python
Author: James Payne
Pages: 628
Part I: Dipping Your Toe into PythonChapter 1: Programming Basics and Strings . . . . . . . . . . . . . . . . . . . . . . . . . . 3Chapter 2: Numbers and Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15Chapter 3: Variables — Names for Values . . . . . . . . . . . . . . . . . . . . . . . . . . . 31Part II: Python Language and the Standard LibraryChapter 4: Making Decisions ....................................................................... 51Chapter 5: Functions ................................................................................... 71Chapter 6: Classes and Objects ................................................................... 93Chapter 7: Organizing Programs ................................................................. 111Chapter 8: Files and Directories ................................................................. 127Chapter 9: Other Features of the Language ................................................ 143Chapter 10: Building a Module ................................................................... 157Chapter 11: Text Processing ...................................................................... 189Part III: Putting Python to WorkChapter 12: Testing ................................................................................... 207Chapter 13: Writing a GUI with Python ....................................................... 227Chapter 14: Accessing Databases.............................................................. 239Chapter 15: Using Python for XML ............................................................. 265Chapter 16: Network Programming ............................................................ 287

 2021-05-08 15:56:54 |  110 | Naser

Rob Huddleston photo

Teach Yourself VISUALLY™ Web Design
Author: Rob Huddleston
Pages: 371
Table of ContentsA Brief History of the Web ........................................ 4Understanding Browsers ............................................ 6Visual Design Tools .................................................. 8Code-based Tools ..................................................... 9Graphics Programs ................................................. 10Understanding the Importanceof Planning Your Site .......................................... 11Understanding Your Audience .................................. 12Gather Your Materials ............................................. 13Plan Your Navigation Structure ................................ 14Plan Your File Structure .......................................... 15Chapter 1 The Tools of Web Design and Planning Your SiteIntroduction to HTML ............................................. 18Create Your First Web Page ...................................... 20Save Your Web Page ............................................... 22Preview a Page in a Browser .................................... 24Declare Your Document Type .................................... 26Add Headings ........................................................ 28Add Paragraphs ..................................................... 30Apply Logical Formatting ........................................ 32Understanding URLs and File Paths ........................... 34Link to Other Pages in Your Site ............................... 36Link to Pages on the Web ........................................ 38Link within a Page ................................................. 40Link to an E-mail Address ........................................ 42Link to Other Document Types ................................. 44Show Tool Tips for Links ......................................... 46
Understanding Image Formats ................................. 50Legally Acquiring Stock Images ................................ 51Understanding Image Optimization .......................... 52Download a Stock Image from the Web ..................... 54Get to Know the Photoshop Interface ....................... 58Get to Know the Photoshop Elements Interface .......... 59Use Photoshop to Fix Colors .................................... 60Crop and Resize an Image in Photoshop .................... 62Save an Image for the Web in Photoshop .................. 64Open an Image for Editing in Photoshop Elements ...... 66Use Photoshop Elements to Fix Colors ....................... 68Rotate an Image in Photoshop Elements ................... 69Crop an Image in Photoshop Elements ...................... 70Resize an Image in Photoshop Elements .................... 71Save an Image for the Web in Photoshop Elements ..... 72Get to Know the Fireworks Interface ......................... 74Get to Know the Illustrator Interface ........................ 75Create a Button in Fireworks .................................... 76Save an Image for the Web in Fireworks .................... 80Create a Logo in Illustrator ..................................... 82Save an Illustrator Image for the Web ....................... 86Add an Image to Your Web Page .............................. 88Make Your Images Accessible ................................... 90Use Images as Links ............................................... 92
Table of ContentsIntroduction to CSS ................................................ 96Create an Embedded Style Sheet .............................. 98Understanding Units of Measurement .......................100Set the Font and Text Size on Your Page ..................102Understanding Color on the Web .............................104Determine a Color Scheme Using Kuler .....................106Set Text Color .......................................................108Set a Background Color ..........................................109Add a Background Image .......................................110Control Background Image Tiling .............................112Position Background Images ...................................113Apply Additional Text Formatting ............................114Indent and Align Text ...........................................116Apply Spacing with Padding ...................................118Control Whitespace with Margins .............................120Specify Widths......................................................122Add Borders .........................................................124Chapter 4 Formatting Your PagesStyle Multiple Elements .........................................128Format Text with Spans .........................................130Group Elements with Divs .......................................132Apply Styles with Classes .......................................134Apply Styles with IDs ............................................136Use Contextual Selectors ........................................138Use Pseudo-Elements .............................................140Use Pseudo-Classes ...............................................142Create an External Style Sheet ................................144
Link a Style Sheet to a Page ...................................146Use the Cascade ...................................................148Set Up Your Page for CSS Layouts ............................152Float Elements......................................................154Use Margins and Padding to Fix Float Problems .........156Work with Overflow ...............................................158Chapter 6 Laying Out PagesAdd Data Tables ....................................................162Format Tables with CSS ..........................................164Create Complex Tables ...........................................166Add a Header Row .................................................168Add Table Sections ................................................170Add an Unordered List ...........................................172Add an Ordered List ..............................................174Style Lists ............................................................176
Introduction to Dreamweaver’s Interface ..................180Define a Site in Dreamweaver .................................181Create a New Document .........................................182Replace the Logo Placeholder .................................184Replace the Main Content ......................................185Replace the Content in the Sidebar and Footer ..........186Add Navigation.....................................................187Add Images .........................................................188Insert a Photoshop Image ......................................190Edit a Photoshop Image in Dreamweaver ..................194Modify CSS ...........................................................196Add New Styles .....................................................198Preview the Page Using Live View ............................200Preview the Page in a Browser ................................201Preview the Page in Other Browsers UsingBrowserLab .......................................................202Chapter 8 Creating a Page Visually in DreamweaverIntroduction to JavaScript and Ajax ........................208Embed JavaScript in HTML ......................................210Write a Function ...................................................212Change the Visibility of an Object ...........................214Create a Menu Using Spry .......................................218Create a Calendar Control with YUI ..........................220Create an Image Gallery with jQuery ........................222Create Animation Using Flash Professional ................226Publish a Flash Movie ............................................230
Add a Flash Movie to Your Page in Dreamweaver ........231Convert a Video to Flash Video ................................232Add Flash Video Using Flash Professional ..................234Add Video with HTML5 ...........................................236Understanding Web Standards .................................240Understanding Web Accessibility .............................242Add Captions and Summaries to Tables .....................244Create Accessible Table Headings ............................246Create Accessible Navigation ..................................248Chapter 10 Making Sites AccessibleCreate a Form .......................................................252Add a Text Field ...................................................254Add a Label..........................................................256Add Check Boxes...................................................258Add Radio Buttons ................................................260Create a Drop-Down List .........................................262Insert a Text Area .................................................264Add a Button to Your Form .....................................266Group Related Form Elements .................................268
Understanding Dynamic Web Applications ................272Download and Install WAMP on Windows ..................274Download and Install MAMP on a Mac ......................278Create a Basic PHP Page ........................................280Save and Test a PHP Page ......................................282Process Form Data .................................................284Send E-mail with PHP ............................................286Include External Files ............................................288Create Your Own PHP Function ................................290Chapter 12 Creating Dynamic PagesUnderstanding Relational Databases ........................294Create a Database .................................................296Create a Table ......................................................298Populate the Table with Data ..................................300Connect PHP to the Database .................................302Display the Contents of a Table on a Web Page ..........304Search the Database ..............................................308Insert New Data into a Table with PHP .....................312
Find a Web Host ...................................................318Buy a Domain Name ..............................................320Publish Your Web Site Using FTP .............................322Set Up Remote Server Information in Dreamweaver ....324Upload Your Files Using Dreamweaver ......................326Understanding Search Engine Optimization ...............328Use Meta Tags ......................................................330Use Google Webmaster Tools ..................................332Create a Sitemap...................................................334Prevent Pages from Being Listed on Search Engines ...336Chapter 14 Publishing Your Site and Getting NoticedHTML Colors............................................ 338Index ..................................................... 340

 2021-05-12 17:53:20 |  106 | Naser

John Paul Mueller photo

کتاب آموزش LINQ
Author: John Paul Mueller
Pages: 382
کتاب آموزش LINQ
کتاب آموزش LINQ در Dummies

مطالب در یک نگاه:
درباره نویسنده
مقدمه
مروری بر LINQ
ساخت پرس و جو های LINQ ساده
در نظر گرفتن افزونه های زبان LINQ
کار با LINQ در Visual Studio 2005
کار با LINQ در Visual Basic 2005
استفاده از استاندارد LINQ برای فن آوری ها
LINQ به شیء
LINQ به Dataset
LINQ به SQL SERVER
LINQ به XML
استفاده از LINQ با آفیس 2007
LINQ به SQL SERVER پیشرفته
LINQ به اکتیو دایرکتوری
دیگر LINQ به استراتژی ها
ده روش موثر برای بهبود توسعه LINQ
ده راه حل برای کاهش هزینه های پشتیبانی برنامه
ده منابع LINQ

 2021-05-12 01:57:12 |  138 | Naser

A.P. Rajshekhar photo

.NET Framework 4.5 Expert Programming Cookbook
Author: A.P. Rajshekhar
Pages: 276
 
Chapter 1: Core .NET Recipes 5

 2021-05-08 15:56:47 |  94 | Naser

Mark Summerfield photo
 2021-05-07 02:02:31 |  145 | Naser


karim yaghmour photo

Building Embedded Linux Systems 2nd Edition
Author: karim yaghmour
Pages: 464
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1Definitions 2Real Life and Embedded Linux Systems 5Design and Implementation Methodology 272. Basic Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33Types of Hosts 33Types of Host/Target Development Setups 39Types of Host/Target Debug Setups 41Generic Architecture of an Embedded Linux System 43System Startup 47Types of Boot Configurations 48System Memory Layout 513. Hardware Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55Processor Architectures 56Buses and Interfaces 64I/O 72Storage 79General-Purpose Networking 81Industrial-Grade Networking 83System Monitoring 854. Development Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87A Practical Project Workspace 89GNU Cross-Platform Development Toolchain 91C Library Alternatives 115Java 129Perl 131Python 134
Other Programming Languages 135Eclipse: An Integrated Development Environment 135Terminal Emulators 1475. Kernel Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155Selecting a Kernel 156Configuring the Kernel 161Compiling the Kernel 165Installing the Kernel 167In the Field 1696. Root Filesystem Content . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173Basic Root Filesystem Structure 173Libraries 177Kernel Modules 183Kernel Images 183Device Files 184Main System Applications 193Custom Applications 201System Initialization 2017. Storage Device Manipulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209MTD-Supported Devices 209Disk Devices 231To Swap or Not To Swap 2348. Root Filesystem Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235Filesystem Types for Embedded Devices 235Writing a Filesystem Image to Flash Using an NFS-Mounted Root Filesystem254Placing a Disk Filesystem on a RAM Disk 254Rootfs and Initramfs 255Choosing a Filesystem’s Type and Layout 258Handling Software Upgrades 2619. Setting Up the Bootloader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273Embedded Bootloaders 274Server Setup for Network Boot 278Using the U-Boot Bootloader 28510. Setting Up Networking Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301Network Settings 302

 2021-05-10 12:43:52 |  133 | Naser

Thomas Kyte photo

دانلود کتاب اوراکل-دانلود کتاب oracle-
Author: Thomas Kyte
Pages: 833
Contents at a Glance■ Chapter 1: Developing Successful Oracle Applications .......................................1■ Chapter 2: Architecture Overview......................................................................51■ Chapter 3: Files ..................................................................................................67■ Chapter 4: Memory Structures.........................................................................121■ Chapter 5: Oracle Processes............................................................................165■ Chapter 6: Locking and Latching .....................................................................195■ Chapter 7: Concurrency and Multi-versioning.................................................243■ Chapter 8: Transactions...................................................................................267■ Chapter 9: Redo and Undo................................................................................299■ Chapter 10: Database Tables ...........................................................................345■ Chapter 11: Indexes .........................................................................................425■ Chapter 12: Datatypes......................................................................................493■ Chapter 13: Partitioning...................................................................................557■ Chapter 14: Parallel Execution.........................................................................621■ Chapter 15: Data Loading and Unloading.........................................................657■ Chapter 16: Data Encryption ............................................................................709Index.....................................................................................................................751

 2021-05-08 15:56:37 |  132 | Naser

jesse freeman photo

Introducing HTML5 Game Development
Author: jesse freeman
Pages: 120
1. Introduction To Impact . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1Why Use Impact? 1Setting Up a Local Environment 2Install WebStorm/PHPStorm 2Install Apache/PHP/MySQL 3Other Hosting Options 3Setting Up a New Impact Project 4Modules 6How Classes Work 7Core Classes 8How Inner Classes Work 10Level Editor 112. Working With Sprites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13Sprites and Sprite Sheets 13Scripting in Photoshop 14Working with Sprites in Photoshop 16Optimizing Sprites 173. Introduction To Game Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19What is Game Design? 19Sample Game Design Document 21Gameplay 21Exploring a Map 21Combat 22Completing a Map 22Death 22Main Character 22Monsters 22

 2021-05-08 15:56:30 |  115 | Naser

Shelley Powers photo

JavaScript Cookbook
Author: Shelley Powers
Pages: 633
دوره آموزش Javascript
Part I. Classic JavaScript1. The JavaScript Not-So-Simple Building Blocks. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.1. Differentiating Between a JavaScript Object Primitive and Literal 31.2. Extracting a List from a String 71.3. Checking for an Existing Nonempty String 101.4. Inserting Special Characters 141.5. Replacing Patterns with New Strings 161.6. Finding and Highlighting All Instances of a Pattern 181.7. Swapping Words in a String Using Capturing Parentheses 221.8. Replacing HTML Tags with Named Entities 251.9. Converting an ISO 8601 Formatted Date to a Date Object AcceptableFormat 251.10. Using Function Closures with Timers 291.11. Tracking Elapsed Time 311.12. Converting a Decimal to a Hexadecimal Value 321.13. Summing All Numbers in a Table Column 331.14. Converting Between Degrees and Radians 361.15. Find the Radius and Center of a Circle to Fit Within a Page Element 371.16. Calculating the Length of a Circular Arc 391.17. Using ES6 String Extras Without Leaving Users in the Dirt 402. JavaScript Arrays. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432.1. Searching Through an Array 432.2. Flattening a Two-Dimensional Array with concat() and apply() 452.3. Removing or Replacing Array Elements 462.4. Extracting a Portion of an Array 482.5. Applying a Function Against Each Array Element 482.6. Traversing the Results from querySelectorAll() with forEach() and call() 502.7. Applying a Function to Every Element in an Array and Returning a NewArray 512.8. Creating a Filtered Array 522.9. Validating Array Contents 522.10. Using an Associative Array to Store Form Element Names and Values 542.11. Using a Destructuring Assignment to Simplify Code 583. Functions: The JavaScript Building Blocks. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 613.1. Placing Your Function and Hoisting 613.2. Passing a Function As an Argument to Another Function 633.3. Implementing a Recursive Algorithm 653.4. Preventing Code Blocking with a Timer and a Callback 683.5. Creating a Function That Remembers Its State 723.6. Converting Function Arguments into an Array 753.7. Reducing Redundancy by Using a Partial Application 773.8. Improving Application Performance with Memoization (CachingCalculations) 803.9. Using an Anonymous Function to Wrap Global Variables 823.10. Providing a Default Parameter 834. The Malleable JavaScript Object. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 854.1. Keeping Object Members Private 864.2. Using Prototype to Create Objects 874.3. Inheriting an Object’s Functionality 904.4. Extending an Object by Defining a New Property 924.5. Preventing Object Extensibility 944.6. Preventing Any Changes to an Object 954.7. Namespacing Your JavaScript Objects 974.8. Rediscovering this with Prototype.bind 1004.9. Chaining Your Object’s Methods 1035. JavaScript and Directly Accessing the User Interface. . . . . . . . . . . . . . . . . . . . . . . . . . . . 1075.1. Accessing a Given Element and Finding Its Parent and Child Elements 1075.2. Accessing All Images in the Web Page 1105.3. Discovering All Images in Articles Using the Selectors API 1165.4. Setting an Element’s Style Attribute 1195.5. Applying a Striped Theme to an Unordered List 1225.6. Finding All Elements That Share an Attribute 1235.7. Inserting a New Paragraph 1245.8. Adding Text to a New Paragraph 1255.9. Deleting Rows from an HTML Table 1275.10. Adding a Page Overlay 1295.11. Creating Collapsible Form Sections 1335.12. Hiding Page Sections 1365.13. Creating Hover-Based Pop-Up Info Windows 1375.14. Displaying a Flash of Color to Signal an Action 1406. Preliminary Testing and Accessibility. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1436.1. Cleaning Up Your Code with JSHint 1436.2. Unit Testing Your Code with QUnit 1456.3. Testing Your Application in Various Environments 1486.4. Performance Testing Different Coding Techniques 1526.5. Highlighting Errors Accessibly 1566.6. Creating an Accessible Automatically Updated Region 1637. Creating and Using JavaScript Libraries. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1657.1. Finding the Perfect Library 1657.2. Testing for Features with Modernizr.load 1667.3. Going Beyond the Math Object’s Capability 1687.4. Finding the Number of Days Between Two Dates 1707.5. Using an External Library: Building on the jQuery Framework 1717.6. Using a jQuery Plugin 1747.7. Handling Keyboard Shortcuts with Mousetrap 1777.8. Utilizing the Utility Library Underscore 1807.9. Packaging Your Code 1827.10. Adding Support for Private Data Members 1857.11. Minify Your Library 1877.12. Hosting Your Library 1897.13. Serving Code from a CDN 1927.14. Convert Your Library to a jQuery Plug-in 1937.15. Safely Combining Several Libraries in Your Applications 1958. Simplified Client-Server Communication and Data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1998.1. Handling an XML Document Returned via an Ajax Call 1998.2. Extracting Pertinent Information from an XML Tree 2018.3. Parsing and Automatically Modifying JSON 2068.4. Converting an Object to a Filtered/Transformed String with JSON 2088.5. Making an Ajax Request to Another Domain (Using JSONP) 2098.6. Processing JSON from an Ajax Request 2128.7. Populating a Selection List from the Server 2148.8. Using a Timer to Automatically Update the Page with Fresh Data 2189. Creating Media Rich Interactive Web Effects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2219.1. Creating a Dynamic Line Chart in Canvas 2219.2. Adding JavaScript to SVG 2279.3. Accessing SVG from Web Page Script 2319.4. Integrating SVG and the Canvas Element in HTML 2339.5. Running a Routine When an Audio File Begins Playing 2359.6. Controlling Video from JavaScript with the video Element 2379.7. Adding Filter Effects to Video via Canvas 241Part II. JavaScript All Blown Up10. The New ECMAScript Standard Objects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24910.1. Using let in Your Browser Application 25010.2. Creating a Collection of Non-Duplicated Values 25310.3. Creating Unique Key/Value Pairs with Uniquely Different Keys 25510.4. Creating Absolutely Unique Object Property Keys 25810.5. Iterating Through Tasks Made Easy 26010.6. Creating Functions that Gracefully Yield 26110.7. Implementing Just-in-Time Object Behavioral Modifications withProxies 26310.8. Creating a True Class and Extending It (with a Little Help from Traceur) 26610.9. Using Promises for Efficient Asynchronous Processing 27011. Node: JavaScript on the Server. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27311.1. Responding to a Simple Browser Request 27311.2. Serving Up Formatted Data 27611.3. Reading and Writing File Data 27811.4. Using let and Other ES 6 Additions in Node 28311.5. Interactively Trying Out Node Code Snippets with REPL 28411.6. Getting Input from the Terminal 28711.7. Working with Node Timers and Understanding the Node Event Loop 28911.8. Managing Callback Hell 29311.9. Accessing Command-Line Functionality Within a Node Application 29711.10. Running Node and Apache on the Same Port 30011.11. Keeping a Node Instance Up and Running 30211.12. Monitoring Application Changes and Restarting 30411.13. Screen Scraping with Request 30511.14. Creating a Command-Line Utility with Help From Commander 30712. Modularizing and Managing JavaScript. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31112.1. Loading Scripts with a Script Loader12.2. Loading Scripts Asynchronously the HTML5 Way 31512.3. Converting Your JavaScript to AMD and RequireJS 31612.4. Using RequireJS with jQuery or Another Library 31912.5. Loading and Using Dojo Modules 32312.6. Installing and Maintaining Node Modules with npm 32512.7. Searching for a Specific Node Module via npm 32612.8. Converting Your Library into a Node Module 32712.9. Taking Your Code Across All Module Environments 32912.10. Creating an Installable Node Module 33312.11. Packaging and Managing Your Client-Side Dependencies with Bower 33812.12. Compiling Node.js Modules for Use in the Browser with Browserify 34012.13. Unit Testing Your Node Modules 34212.14. Running Tasks with Grunt 34513. Fun with APIs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35113.1. Accessing JSON-Formatted Data via a RESTful API 35113.2. Creating a RESTFul API with Restify 35513.3. Enabling a Mobile-Like Notification in the Desktop Browser 36013.4. Loading a File Locally in the Browser 36213.5. Creating a Mini E-Pub Reader Using Web Workers and the File API 36513.6. Exploring Google Maps and Other APIS 37113.7. Accessing Twitter’s API from a Node Application 37914. JavaScript Frameworks. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38714.1. Using the Express-Generator to Generate an Express Site 38814.2. Converting a Generated Express Site into a Basic MVC App 39614.3. Choosing a SPA Framework: Deconstructing the TodoMVC 41014.4. Working with the OAuth Framework 42214.5. Extending the Possible with Web Components 43615. Advanced Client-Server Communications and Streams. . . . . . . . . . . . . . . . . . . . . . . . . . 44715.1. Allowing Cross-Domain Requests 44715.2. Implementing a PUT Request in Ajax 45015.3. Sending Binary Data Through Ajax and Loading into an Image 45315.4. Sharing HTTP Cookies Across Domains 45515.5. Establishing Two-Way Communication Between Client and Server 45815.6. Unloading and Zipping Files Using Transform Streams 46415.7. Testing the Performance and Capability of Your WebSockets Application 46616. Data Visualizations and Client/Server Graphics. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46916.1. Creating an SVG Bar Chart with D3 47016.2. Mapping Data Point Variations with a Radar Chart 47616.3. Feeding a Scrolling Timeline via WebSocket 47816.4. Generating Screenshots of Generated Web Page Content (PhantomJS) 48316.5. Converting Graphics to Text (Ocrad.js) 48916.6. Cropping (or Otherwise Modifying) Uploaded Images 49117. Data and Persistence. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49517.1. Validating Form Data 49517.2. Persisting Information Using HTML5 50217.3. Using sessionStorage for Client-Side Storage 50517.4. Creating a localStorage Client-Side Data Storage Item 51317.5. Using Squel.js to Query a MySQL Database 51717.6. Persisting Larger Chunks of Data on the Client Using IndexedDB 52017.7. Accessing Data in the Cloud Using Dropbox Datastores 52318. JavaScript Hits the (Mobile) Road. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53518.1. Creating an Installable Hosted Web App 53518.2. Packaging Web Apps for the Amazon Appstore 54118.3. Building a Basic Android App Using Cordova (PhoneGap) 54318.4. Porting Where Am I? to Android 55118.5. Creating a Geolocation Firefox OS App 55918.6. Porting the Geolocation App to a Google Chrome App 56918.7. Publishing Your Geolocation App in the Kindle Fire OS Environment 57718.8. Debugging Your Android or Amazon Fire OS App 58018.9. Getting Information About the Device 583A. Up and Running in jsBin and jsFiddle. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 589Index. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 595

 2021-05-12 10:40:45 |  133 | Naser

Jonathan Chaffer and Karl Swedberg photo

دانلود کتاب Learning jQuery
Author: Jonathan Chaffer and Karl Swedberg
Pages: 444
دوره آموزش JQuery
امروزه توسعه دهندگان در راستای اتوماسیون عملیات رایج و آسان سازی کارهای پیچیده و در نتیجه ساختن سایت های تعاملی و کارامد، به کتابخانه های زبان JavaScript نظیر jQuery روی می آورند. از آنجایی که غالب برنامه نویسان تحت وب تجربه ی بیشتری در زمینه ی کار با HTML و CSS در مقایسه با زبان برنامه نویسی در سمت کلاینت JavaScript دارند، طراحی این کتابخانه به گونه ای است که شروع به کار و یادگیری مفاهیم پایه ای آن برای تازه واردان (و همچنین افرادی که تجربه ی ناچیزی در زمینه ی برنامه نویسی دارند) آسان می باشد. این کتاب به سبب ثبات و انسجام در انتقال مفاهیم برای برنامه نویسان خبره نیز انتخاب مناسبی می باشد.
LearningjQuery - Fourth Edition در واقع نسخه ی ویراست و بروز آوری شده ی jQuery است. با مطالعه ی این کتاب آموزش های لازم برای افزودن قابلیت تعامل به صفحات و متحک سازی المان ها در آن ها را خواهد دید. حتی اگر تلاش های قبلی شما برای افزودن قابلیت های جدید با JavaScript خالص با شکست مواجه شده، این کتاب شما را در جهت رد موانع برنامه نویسی پیرامون AJAX، eventها، افکت ها و امکانات پیشرفته ی جاوا اسکریپت راهنمایی می کند.  

To build interesting interactive sites developers are turning to JavaScript libraries such as jQuery to automate common tasks and simplify complicated ones. Because many web developers have more experience with HTML and CSS than with JavaScript the librarys design lends itself to a quick start for designers with little programming experience. Experienced programmers will also be aided by its conceptual consistency. LearningjQuery - Fourth Edition is revised and updated version of jQuery. You will learn the basics of jQuery for adding interactions and animations to your pages. Even if previous attempts at writing JavaScript have left you baffled this book will guide you past the pitfalls associated with AJAX events effects and advanced JavaScript language features.
 



 
 


By:
Jonathan Chaffer Karl Swedberg


ISBN:
978-1-78216-314-5


Year:
2013


Pages:
444


Language:
English


File size:
6.9 MB


File format:
PDF




Chapter 1: Getting Started 7What jQuery does 8Why jQuery works well 9Making our first jQuery-powered web page 11Downloading jQuery 11Deciding on the version of jQuery to use 12Setting up jQuery in an HTML document 12Adding our jQuery code 15Finding the poem text 16Injecting the new class 16Executing the code 16The finished product 18Plain JavaScript versus jQuery 18Using development tools 19Chrome Developer Tools 20Summary 23Chapter 2: Selecting Elements 25Understanding the DOM 25Using the $() function 26CSS selectors 28Styling list-item levels 30Attribute selectors 31Styling links 32Custom selectors 34Styling alternate rows 35Finding elements based on textual content 38Form selectors 39DOM traversal methods 40Styling specific cells 42Chaining 44Accessing DOM elements 45Summary 46Further reading 46Exercises 47Chapter 3: Handling Events 49Performing tasks on page load 49Timing of code execution 49Handling multiple scripts on one page 51Alternate syntax for .ready() 52Passing an argument to the .ready() callback 52Handling simple events 53A simple style switcher 54Enabling the other buttons 56Making use of the event handler context 58Consolidating code using the event context 60Shorthand events 62Showing and hiding advanced features 62Event propagation 64The journey of an event 65Side effects of event bubbling 67Altering the journey – the event object 67Event targets 69Stopping event propagation 69Preventing default actions 70Delegating events 71Using built-in event-delegation capabilities 74Removing an event handler 74Giving namespaces to event handlers 75Rebinding events 76Simulating user interaction 78Reacting to keyboard events 79Summary 82Further reading 82Exercises 82Chapter 4: Styling and Animating 85Modifying CSS with inline properties 85Hiding and showing elements 91Effects and duration 94Speeding in 94Fading in and fading out 95Sliding up and sliding down 96Toggling visibility 97Creating custom animations 99Building effects by hand 100Animating multiple properties at once 101Positioning with CSS 103Simultaneous versus queued effects 105Working with a single set of elements 105Bypassing the queue 106Queuing effects manually 107Working with multiple sets of elements 109Queuing with callbacks 111In a nutshell 113Summary 114Further reading 114Exercises 114Chapter 5: Manipulating the DOM 115Manipulating attributes and properties 115Non-class attributes 116Value callbacks 118DOM element properties 120The value of form controls 121DOM tree manipulation 121The $() function revisited 122Creating new elements 122Inserting new elements 123Moving elements 124Wrapping elements 126Explicit iteration 127Using inverted insertion methods 129Copying elements 132Cloning for pull quotes 133Content getter and setter methods 136DOM manipulation methods in a nutshell 138Summary 139Further reading 139Exercises 140Chapter 6: Sending Data with Ajax 141Loading data on demand 142Appending HTML 143Working with JavaScript objects 146Retrieving JSON 147Using global jQuery functions 148Executing a script 152Loading an XML document 153Choosing a data format 156Passing data to the server 158Performing a GET request 158Performing a POST request 162Serializing a form 163Delivering different content for Ajax requests 166Keeping an eye on the request 167Error handling 170Ajax and events 172Security limitations 173Using JSONP for remote data 174Exploring additional options 176The low-level Ajax method 176Modifying default options 177Loading parts of an HTML page 177Summary 180Further reading 180Exercises 180Chapter 7: Using Plugins 181Finding plugins and help 181Using a plugin 182Downloading and referencing the Cycle plugin 182Calling a plugin method 183Specifying plugin method parameters 184Modifying parameter defaults 185Other types of plugins 186Custom selectors 186Global function plugins 187The jQuery UI plugin library 188Effects 189Color animations 189Class animations 190Advanced easing 191Interaction components 192Widgets 194jQuery UI ThemeRoller 197The jQuery Mobile plugin library 197HTML5 custom data attributes 198Mobile navigation 198Delivering multiple pages in one document 204Interactive elements 205List views 206Toolbar buttons 208Advanced features 209Summary 209Exercises 210Chapter 8: Developing Plugins 211Using the dollar ($) alias in plugins 211Adding new global functions 212Adding multiple functions 215Extending the global jQuery object 216Isolating functions within namespaces 217Adding jQuery object methods 218Object method context 219Implicit iteration 220Enabling method chaining 221Providing flexible method parameters 222The options object 223Default parameter values 224Callback functions 225Customizable defaults 227Creating plugins with the jQuery UI widget factory 229Creating a widget 229Destroying widgets 232Enabling and disabling widgets 233Accepting widget options 234Adding submethods 235Triggering widget events 236Plugin design recommendations 237Distributing a plugin 238Summary 238Exercises 239Chapter 9: Advanced Selectors and Traversing 241Selecting and traversing revisited 242Dynamic table filtering 243Striping table rows 246Combining filtering and striping 248More selectors and traversal methods 249Customizing and optimizing selectors 250Writing a custom selector plugin 250Selector performance 252The Sizzle selector implementation 253Testing selector speed 254DOM traversal under the hood 256jQuery object properties 256The DOM element stack 258Writing a DOM traversal method plugin 259DOM traversal performance 261Improving performance using chaining 261Improving performance with caching 262Summary 263Further reading 263Exercises 263Chapter 10: Advanced Events 265Revisiting events 265Loading additional pages of data 267Displaying data on hovering 269Event delegation 271Using jQuerys delegation capabilities 272Choosing a delegation scope 272Delegating early 273Defining custom events 274Infinite scrolling 276Custom event parameters 278Throttling events 279Other ways to perform throttling 280Extending events 281More about special events 284Summary 285Further reading 285Exercises 285Chapter 11: Advanced Effects 287Animation revisited 287Observing and interrupting animations 290Determining the animation state 290Halting a running animation 291Caution when halting animations 292Using global effect properties 292Disabling all effects 293Defining effect durations 293Multiproperty easing 296Using deferred objects 297Animation promises 298Taking fine-grained control of animations 301Summary 303Further reading 303Exercises 303Chapter 12: Advanced DOM Manipulation 305Sorting table rows 305Sorting tables on the server 306Sorting tables using Ajax 306Sorting tables within the browser 307Moving and inserting elements revisited 308Adding links around existing text 309Sorting simple JavaScript arrays 310Sorting DOM elements 310Storing data alongside DOM elements 312Performing additional precomputation 313Storing non-string data 314Alternating sort directions 317Using HTML5 custom data attributes 318Sorting and building rows with JSON 321Modifying the JSON object 323Rebuilding content on demand 324Revisiting attribute manipulation 325Using shorthand element-creation syntax 326DOM manipulation hooks 327Writing a CSS hook 328Summary 329Further reading 330Exercises 330Appendix C: Quick Reference 383Selector expressions 383Simple CSS 383Position among siblings 384Position among matched elements 384Attributes 385Forms 385Miscellaneous selectors 386DOM traversal methods 386Filtering 387Descendants 387Siblings 387Ancestors 388Collection manipulation 389Working with selected elements 389Event methods 390Binding 390Shorthand binding 391Triggering 392Shorthand triggering 393Utility 393Effect methods 393Predefined effects 393Custom animations 394Queue manipulation 394DOM manipulation methods 395Attributes and properties 395Content 396CSS 396Dimensions 397Insertion 397Replacement 398Removal 398Copying 399Data 399Ajax methods 399Issuing requests 399Request monitoring 400Configuration 400Utilities 401

 2021-05-09 00:33:54 |  117 | Naser


Zed A. Shaw photo
 2021-05-09 07:45:15 |  109 | Naser

Adam Freeman photo

Pro ASP.NET MVC 4
Author: Adam Freeman
Pages: 736
دوره آموزش MVC
Contents ................................................................................................................... vii
■ About the Author ..................................................................................................... xxi
■ About the Technical Reviewer ................................................................................ xxii
■ Acknowledgments ................................................................................................. xxiii
■ Part 1: Introducing ASP.NET MVC 4 .............................................................................1
■ Chapter 1: What’s the Big Idea? ................................................................................. 3
■ Chapter 2: Your First MVC Application ..................................................................... 15
■ Chapter 3: The MVC Pattern ..................................................................................... 47
■ Chapter 4: Essential Language Features .................................................................. 73
■ Chapter 5: Working with Razor .............................................................................. 101
■ Chapter 6: Essential Tools for MVC ........................................................................ 125
■ Chapter 7: SportsStore—A Real Application .......................................................... 161
■ Chapter 8: SportsStore: Navigation ........................................................................ 201
■ Chapter 9: SportsStore: Completing the Cart ......................................................... 231
■ Chapter 10: SportsStore: Administration ............................................................... 255
■ Chapter 11: SportsStore: Security & Finishing Touches ........................................ 283
■ Part 2: ASP.NET MVC 4 in Detail ............................................................................. 301
■ Chapter 12: Overview of MVC Projects ................................................................... 303
■ Chapter 13: URL Routing ........................................................................................ 323
■ Chapter 14: Advanced Routing Features ................................................................ 363
■ Chapter 15: Controllers and Actions ...................................................................... 391
■ Chapter 16: Filters .................................................................................................. 419
■ Chapter 17: Controller Extensibility ....................................................................... 455
■ Chapter 18: Views .................................................................................................. 485
■ Chapter 19: Helper Methods ................................................................................... 511
■ Chapter 20: Templated Helper Methods ................................................................. 541
■ Chapter 21: URL and Ajax Helper Methods ............................................................. 569
■ Chapter 22: Model Binding ..................................................................................... 599
■ Chapter 23: Model Validation ................................................................................. 629
■ Chapter 24: Bundles and Display Modes ................................................................ 657
■ Chapter 25: Web API ............................................................................................... 679
■ Chapter 26: Deployment ......................................................................................... 699
■ Index ....................................................................................................................... 717

 2021-05-11 06:37:33 |  185 | Naser

vijay joshi photo

دانلود کتاب Mastering jQuery UI
Author: vijay joshi
Pages: 455
دوره  آموزش Jquery
هر روزه شاهد قدرتمند تر شدن هر چه بیشتر مرورگرها هستیم. کتابخانه ی jQuery UI ابزار قدرتمندی در اختیار برنامه نویس قرار می دهد که به وی امکان می دهد تا بدون نیاز به نوشتن کدهای زیاد با JavaScript، اپلیکشین های تعاملی با قابلیت های فراوان بنویسید
Mastering jQuery UI تمامی امکانات کتابخانه ی jQuery UI را تشریح می کند. از همان فصل اول شما پروژه های خود را نوشته و در این حین با تمامی ریزه کاری های این کتابخانه آشنا خواهید شد. هر فصل موضوع جدیدی را مطرح کرده و کامپوننت های مربوطه را در قالب آن موضوع معرفی می کند. پس از فراگیری مفاهیم پایه ای، مباحث پیشرفته و نحوه ی ایجاد اپلیکیشن های پیچیده همچون tabbed newsreader (خبرخوان ها) را با استفاده از AJAX و Reddit API خواهید آموخت. همچنین بهترین روش ها و دستور العمل های کدنویسی که در اثر سالها تجربه ی سخت کار با کتابخانه ی jQuery UI بدست آمده در قالب این کتاب در اختیار شما قرار می گیرد.    همان طور که گفته شد هر فصل خود یک پروژه ی کوچک و مستقل است که در آن کامپوننت های مختلف jQuery UI تحت پوشش قرار داده شده، به طوری که با خواندن همان فوصل ابتدایی قادر خواهید بود یک برنامه ی کاملا کاربردی بنویسید.
With browsers becoming more and more powerful each day the jQuery UI library provides tools that can be used to create feature rich and interactive applications without bearing the pain of writing numerous lines of JavaScript. Mastering jQuery UI will help you explore the depths of the jQuery UI library. Right from the first chapter you will build your own projects while learning the intricacies of the library. Each chapter explores a new topic and covers some related components. By gaining confidence from the initial chapters you will proceed ahead to create complex applications like the Tabbed News reader utilizing the AJAX and Reddit APIs. As a bonus you will also learn about the best and most proven practices earned through years of diligent work on the jQuery UI platform. Each chapter is an independent mini project in itself covering different components from jQuery UI. You wont have to wait long to actually build something functional.







By:
Vijay Joshi


ISBN:
978-1-78328-665-2


Year:
2015


Pages:
312


Language:
English


File size:
8 MB


File format:
PDF



eBook



Download:
Mastering jQuery UI



Paper Book








Mastering jQuery UICreditsAbout the AuthorAbout the Reviewerswww.PacktPub.comSupport files eBooks discount offers and moreWhy subscribe?Free access for Packt account holdersPrefaceWhat this book coversWhat you need for this bookWho this book is forConventionsReader feedbackCustomer supportDownloading the example codeDownloading the color images of this bookErrataPiracyQuestions1. Designing a Simple Quiz ApplicationSetting up jQuery UIDownloading the required filesUsing jQuery/jQuery UI libraries with a CDNSetting up the folder structure for the JavaScript and CSS filesCreating the layoutMarkup for the quiz pageStyling elementsMaking the quiz functional

 2021-05-09 00:02:44 |  96 | Naser

Christian Wenz photo

Programming ASP.NET AJAX
Author: Christian Wenz
Pages: 475
Part I. Basics1. ASP.NET AJAX Ajax and ASP.NET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3ASP.NET AJAX and Ajax 3ASP.NET AJAX and ASP.NET 5ASP.NET AJAX Prerequisites and Installation 6ASP.NET AJAX Structure and Architecture 12A First ASP.NET AJAX Example: Hello User 14The ScriptManager Control 19Summary 21For Further Reading 212. JavaScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22The JavaScript Language 24Object-Oriented Programming (OOP) 34Accessing Page Elements 38DOM Methods 42Summary 43For Further Reading 433. Ajax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44The XMLHttpRequest Object 45The XMLDocument Object 55JSON 61Summary 64For Further Reading 64Part II. ASP.NET AJAX Extensions4. Using ASP.NET AJAX JavaScript Extensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67ASP.NET AJAX Shortcuts and Helper Functions 67Extensions to Existing JavaScript Objects 70ASP.NET AJAX OOP Features for JavaScript 71Client Versions of .NET Classes 83Summary 87For Further Reading 875. Web Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88Error Handling 88Page Methods 93Maintaining Session State 95Exchanging Complex Data with the Server 100Consuming Web Services with JavaScript 105Summary 114For Further Reading 1156. UpdatePanel: Refreshing Only Parts of a Page . . . . . . . . . . . . . . . . . . . . . . . . 116Making a Page Region Updatable 116Summary 131For Further Reading 1327. Using the ASP.NET AJAX Profile Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133Preparing the Web Site 133Accessing Profile Data 135Accessing Profile Group Data 139Summary 144For Further Reading 1448. Using the ASP.NET AJAX Authentication Service . . . . . . . . . . . . . . . . . . . . . . . 145Preparing the Application 145Login and Logout 148Summary 154For Further Reading 1549. Localizing and Globalizing Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155Localization 156Globalization and Internationalization 169Summary 173For Further Reading 173Part III. ASP.NET AJAX Control Toolkit10. Using the Control Toolkit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177Installing the Control Toolkit 177Using the Control Toolkit 181Summary 184For Further Reading 18411. Adding Animation to a Web Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185Animation Framework 185Drag-and-Drop 193Summary 195For Further Reading 19612. Autocompleting User Input Fighting Spam and More . . . . . . . . . . . . . . . . 197Creating an Accordion Pane 197Maintaining the Relative Position of an Element 199Adding Autocomplete Behavior to a TextBox Control 201Attaching a Calendar to a Text Field 208Dynamically Collapsing a Single Panel 210Displaying a Pop Up Over a Page 211Fighting Spam in Blogs and in Other Entry Forms 214Creating a Tabbed Interface 216Summary 218For Further Reading 21813. Writing Custom Controls and Contributing to the Community . . . . . . . . . . 219Writing Custom ASP.NET AJAX Controls 219Contributing to the Control Toolkit 228Summary 237For Further Reading 237Part IV. ASP.NET AJAX Futures14. Client Controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241Introducing ASP.NET AJAX Client Controls 241Using ASP.NET AJAX Controls 242Handling Control Events 259Summary 263For Further Reading 26315. Binding and Validating Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264Data Binding 264Data Validation 280Summary 296For Further Reading 29616. Using Behaviors and Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297Using Behaviors 297Using Components 310Summary 313For Further Reading 31317. Using Server Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314Using a ListView Control 314Creating a Custom Data Source 330Summary 336For Further Reading 33618. Using Remote Web Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337Using the Google Web Service 338Using the Amazon Web Service 345Transforming a Web Service Result with XSLT 350Using the Yahoo! Web Service (and REST and XPath) 358Summary 367For Further Reading 36719. Using Animations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368Using Animations 368Using an Animation to Create a Fade Effect 370Summary 380For Further Reading 38020. Fixing Bookmarks and Back/Forward Buttons . . . . . . . . . . . . . . . . . . . . . . . . 381Fixing with Code 382Fixing Bookmarks and Back/Forward Buttons with Controls UsingUpdateHistory 384Fixing Bookmarks and Back/Forward Buttons with Controls Using theASP.NET AJAX Futures 388Summary 395For Further Reading 39521. Web Parts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396Using ASP.NET AJAX with ASP.NET Web Parts 396Summary 401For Further Reading 401Part V. Microsoft AJAX Library22. Using ASP.NET AJAX with Other Server Technologies . . . . . . . . . . . . . . . . . . . 405Using ASP.NET AJAX with PHP 406Summary 409For Further Reading 410Part VI. AppendixesA. Debugging ASP.NET AJAX Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413B. XMLHttpRequest Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426C. DOM Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 428D. ASP.NET AJAX Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432E. ScriptManager UpdatePanel UpdateProgress and TimerDeclarative Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439

 2021-05-09 00:58:06 |  112 | Naser

Alexander Egyed photo

آموزش uml
Author: Alexander Egyed
Pages: 26
دوره های UML

 2021-05-08 15:56:11 |  156 | Naser

Shelley Powers photo

Adding Ajax
Author: Shelley Powers
Pages: 401
Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix1. Getting Ready to Make a Move to Ajax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1The Technologies That Are Ajax 3Start Clean 7Converting Tables to CSS Layouts 11Continuing the Conversion: Element by Element 16Dealing with Browser-Specific Quirks 17Understanding Your Client Base 20Designing a Framework for Your Site 24Progressive Enhancement Versus Massive Overhaul 262. The Ajax Bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29The Web Application 29Preparing the Object for Use 37Preparing and Sending a Request 39Processing the Ajax Response 45Endpoints the JavaScript Sandbox and Widgets 62That Security Stuff 67A First Look at Performance 68One Last Word on Asynchronous Versus Synchronous 683. Ajax Tools and Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71Prototype 72script.aculo.us 80Rico 83Dojo 85Other Libraries 924. Interactive Effects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97Ajax-Friendly Event Handling 98Just-In-Time Information 106In-Page Previews 118Color Fades for Success or Failure 1235. Space: The Final Frontier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133Horizontal Spacing: The Accordion 134Tabbed Pages 160Overlays 1736. Dynamic Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180In-Place Editing 181In-Place Editing: Performance Security and Accessibility 192Highlighting Changes 196Revisiting In-Page Update Accessibility One More Time 208Live Validation 211Performance and Two-Phase Commits 214External Library Data Effects 2177. History Navigation and Place with Single-Page Applications . . . . . . . . . . 222Introducing the Challenger: Paged Content 223Remembering Place 244Old and New Persistence: Side by Side 252The New Page View 261Post-Mortem 2648. Adding Advanced Visual Effects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265Advanced CSS Tricks 266Scalable Vector Graphics 277SVG Quick View 282Mixer: SVG and Ajax 287The Future of Graphics 2939. Mashup Your Site . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296Mapping with Google 297A Second Service: Flickr 303Adding Technorati to Our Mashup 317

 2021-05-12 10:42:04 |  159 | Naser

Quentin Docter Emmett Dulaney Toby Skandier photo
 2021-05-08 15:56:04 |  102 | Naser

Alex Martelli photo

Python Cookbook 2nd Edition
Author: Alex Martelli
Pages: 846
Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.1 Processing a String One Character at a Time 71.2 Converting Between Characters and Numeric Codes 81.3 Testing Whether an Object Is String-like 91.4 Aligning Strings 111.5 Trimming Space from the Ends of a String 121.6 Combining Strings 121.7 Reversing a String by Words or Characters 151.8 Checking Whether a String Contains a Set of Characters 161.9 Simplifying Usage of Strings’ translate Method 201.10 Filtering a String for a Set of Characters 221.11 Checking Whether a String Is Text or Binary 251.12 Controlling Case 261.13 Accessing Substrings 281.14 Changing the Indentation of a Multiline String 311.15 Expanding and Compressing Tabs 321.16 Interpolating Variables in a String 351.17 Interpolating Variables in a String in Python 2.4 361.18 Replacing Multiple Patterns in a Single Pass 381.19 Checking a String for Any of Multiple Endings 411.20 Handling International Text with Unicode 431.21 Converting Between Unicode and Plain Strings 451.22 Printing Unicode Characters to Standard Output 481.23 Encoding Unicode Data for XML and HTML 491.24 Making Some Strings Case-Insensitive 521.25 Converting HTML Documents to Text on a Unix Terminal 55
2.1 Reading from a File 622.2 Writing to a File 662.3 Searching and Replacing Text in a File 672.4 Reading a Specific Line from a File 682.5 Counting Lines in a File 692.6 Processing Every Word in a File 722.7 Using Random-Access Input/Output 742.8 Updating a Random-Access File 752.9 Reading Data from zip Files 772.10 Handling a zip File Inside a String 792.11 Archiving a Tree of Files into a Compressed tar File 802.12 Sending Binary Data to Standard Output Under Windows 822.13 Using a C++-like iostream Syntax 832.14 Rewinding an Input File to the Beginning 842.15 Adapting a File-like Object to a True File Object 872.16 Walking Directory Trees 882.17 Swapping One File Extension for AnotherThroughout a Directory Tree 902.18 Finding a File Given a Search Path 912.19 Finding Files Given a Search Path and a Pattern 922.20 Finding a File on the Python Search Path 932.21 Dynamically Changing the Python Search Path 942.22 Computing the Relative Path from One Directory to Another 962.23 Reading an Unbuffered Character in a Cross-Platform Way 982.24 Counting Pages of PDF Documents on Mac OS X 992.25 Changing File Attributes on Windows 1002.26 Extracting Text from OpenOffice.org Documents 1012.27 Extracting Text from Microsoft Word Documents 1022.28 File Locking Using a Cross-Platform API 1032.29 Versioning Filenames 1052.30 Calculating CRC-64 Cyclic Redundancy Checks 1073. Time and Money . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1103.1 Calculating Yesterday and Tomorrow 1163.2 Finding Last Friday 1183.3 Calculating Time Periods in a Date Range 1203.4 Summing Durations of Songs 121

 2021-05-08 15:56:01 |  106 | Naser

Anthony T. Holdener III photo

Ajax The Definitive Guide
Author: Anthony T. Holdener III
Pages: 982
Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiiiPart I. Ajax Fundamentals1. Reinventing the Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3Web Page Components 3Modern Web Standards 9Browsers 17Standards Compliance 19Welcome to Web 2.0 202. From Web Sites to Web Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22The Transition 22Basic Web and Ajax Design Patterns 28Application Environments 31The Developer 33What Ajax Is Not 343. Servers Databases and the Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35The Web Server 36Server-Side Scripting 39Databases 44Getting Data Into and Out of Relational Databases 48Interfacing the Interface 54Frameworks and Languages 57What Good Are Frameworks? 634. Foundations: Scripting XML and JSON . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68XML 68JSON 86Choosing a Data Exchange Format 92A Quick Introduction to Client Frameworks 94Simplifying Development 975. Manipulating the DOM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103Understanding the DOM 103We’ve Already Met 105Manipulating DOM Elements Attributes and Objects 106Change That Style 117Events in the DOM 129DOM Stuff for Tables 135Is innerHTML Evil? 1386. Designing Ajax Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141Usability 141Functionality 153Visualization 158Accessibility 167The Ajax Interface 171Part II. Ajax Foundations7. Laying Out Site Navigation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175Menus 175Tabs 212Navigation Aids 221Problems with Ajax Navigation 243General Layout 2468. Fun with Tables and Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247Layout Without Tables 247Accessible Tables 252Sorting Tables 264Tables with Style 280Table Pagination 283Lists 2.0 291Lists for All Seasons 2929. Page Layout with Frames That Aren’t . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316Using Frames 316XHTML and Frames 321The Magic of Ajax and a DIV 323Page Layout 32910. Navigation Boxes and Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335The Alert Box 335Integrating the Window 335Navigation Windows 347Tool Tips 355The Necessary Pop Up 36011. Customizing the Client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363Browser Customizations 363Stylesheet Switching 368Switching Different Customizations 381Easy Font-Size Switching 386Creating Color Themes 392Throwing Ajax into the Mix 397Changing Site Language with Ajax 400Repositioning Objects and Keeping Those Positions 403Storing It All in the Database 40712. Errors: To Be (in Style) or Not to Be . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408Error Handling on the Web 408Should I React to That Error? 413Handling an Error with Care 417Integrating the User Error 42013. This Ain’t Your Father’s Animation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434Animation on the Web 434What Is Wrong with GIF? 437Building Animation with the PNG Format 439Ajax Animations 45314. A Funny Thing Happened on the Way to the Form . . . . . . . . . . . . . . . . . . . . . 482XHTML Forms 482Using JavaScript 490Fancier Forms 498The Basics of Ajax and Forms 519Accepting Ajax-Delivered Data 524Server Responses 53115. Data Validation: Client Server or Both . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 534Data Validation Is Important 534Validation with JavaScript 536CSS Notification of Errors 552Validation on the Server 555Ajax Client/Server Validation 558Part III. Ajax in Applications16. Search: The New Frontier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 565Types of Site Searches 565Dynamic Searching with Ajax 577Googling a Site 58117. Introducing Web Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 594What Is a Web Service? 594Web Service Architectures 594Ajax and Web Services 606Web Feeds 613Web Service APIs 61818. Web Services: The APIs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 619Publicly Available Web Services 619Ajax and the API 657The Next Step with Services 65819. Mashups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 659Mashups in Web 2.0 Applications 659What Are Mashups? 659Mashups As Applications 661Data Sources 665Application Portlets 668Building a Mashup 668Mashups and Business 67120. For Your Business Communication Needs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 672Businesses and Ajax 672Real-Time Communication 674File Sharing 691Whiteboards 703Combining Applications 72021. Internet Games Without Plug-ins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 721Gaming on the Web 721Internet Requirements 732Animating a Character 735Basic Collisions 753User Input 764The Basics of Event Handling 767Putting It All Together 776Part IV. Wrapping Up22. Modular Coding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 789What Is Modular Coding? 789The Client Side 791The Server Side 80423. Optimizing Ajax Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 807Site Optimization Factors 807HTTP 809Packets 815Client-Side Optimizations 818Server-Side Optimizations 830Ajax Optimization 838Part V. ReferencesA. The XML and XSLT You Need to Know . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 843B. JavaScript Framework Toolkit and Library References . . . . . . . . . . . . . . . . 863C. Web Service API Catalog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 892D. Ajax Risk References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 916Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 925

 2021-05-08 15:55:58 |  102 | Naser

Ross Mistry and Stacia Misner photo

Introducing Microsoft SQL Server 2012
Author: Ross Mistry and Stacia Misner
Pages: 287
 
Chapter 1 SQL Server 2012 Editions and Engine Enhancements 3

 2021-05-08 15:55:53 |  116 | Naser

---- photo

آموزش حرفه ای Word 2013
Author: ----
Pages: 111
آموزش حرفه ای Word 2013

 2021-05-06 18:19:36 |  124 | Naser