{"product_id":"designing-platform-independent-mobile-apps-and-services-hardback-9781119060147","title":"Designing Platform Independent Mobile Apps and Services (Hardback) 9781119060147","description":"\u003cfont face=\"Georgia\"\u003e\r\n\u003cp\u003e\u003cfont size=\"6\"\u003eDesigning Platform Independent Mobile Apps and Services\u003c\/font\u003e\u003cbr\u003e\r\n\r\n\r\n\r\n\r\n\r\n\u003c\/p\u003e\n\u003cp\u003e\u003cfont size=\"4\"\u003eRocky Heckman (Author)\u003c\/font\u003e\u003c\/p\u003e\r\n\r\n\u003cp\u003e\u003cfont size=\"3\"\u003e9781119060147, Wiley\u003c\/font\u003e\u003c\/p\u003e\r\n\r\n\u003cp\u003e\u003cfont size=\"3\"\u003eHardback, published 8 November 2016\u003c\/font\u003e\u003c\/p\u003e\r\n\r\n\u003cp\u003e\u003cfont size=\"3\"\u003e256 pages\u003cbr\u003e23.6 x 15.5 x 1.8 cm, 0.499 kg\u003c\/font\u003e\u003c\/p\u003e\r\n\r\n\r\n\r\n\r\n\r\n\u003cp align=\"justify\"\u003e\u003cstrong\u003e\u003cfont size=\"3\"\u003eStellt Strategien für die Entwicklung plattformunabhängiger mobiler Apps vor, die mit cloud-basierten Diensten verbunden sind. Mit diesen Diensten lassen sich riesige Mengen an modernen Computing-Anwendungen ausführen.\u003cbr\u003e - Bietet Entwicklungsmuster für die Entwicklung plattformunabhängiger Apps und Technologien.\u003cbr\u003e - Präsentiert empfohlene Standards und Strukturen, die einfach übernommen werden können.\u003cbr\u003e - Beschäftigt sich auch mit mobilen und modularen Backend-Architekturen zur Unterstützung von Serviceagilität und schnellen Entwicklungszyklen.\u003cbr\u003e\u003c\/font\u003e\u003c\/strong\u003e\u003c\/p\u003e\r\n\r\n\u003cp\u003e\u003cfont size=\"3\"\u003e\u003cp\u003eLIST OF FIGURES xi\u003c\/p\u003e \u003cp\u003eLIST OF TABLES xiii\u003c\/p\u003e \u003cp\u003ePREFACE xv\u003c\/p\u003e \u003cp\u003eACKNOWLEDGMENTS xvii\u003c\/p\u003e \u003cp\u003e\u003cb\u003eCHAPTER 1 THE MOBILE LANDSCAPE 1\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e1.1 Introduction 1\u003c\/p\u003e \u003cp\u003e1.2 Previous Attempts at Cross-Platform 2\u003c\/p\u003e \u003cp\u003e1.2.1 Java 2\u003c\/p\u003e \u003cp\u003e1.2.2 Early Web Apps 5\u003c\/p\u003e \u003cp\u003e1.2.3 Multiple Codebases 7\u003c\/p\u003e \u003cp\u003e1.3 Breadth Versus Depth 9\u003c\/p\u003e \u003cp\u003e1.4 The Multi-Platform Targets 10\u003c\/p\u003e \u003cp\u003e1.4.1 Traditional 10\u003c\/p\u003e \u003cp\u003e1.4.2 Mobile 11\u003c\/p\u003e \u003cp\u003e1.4.3 Wearables 12\u003c\/p\u003e \u003cp\u003e1.4.4 Embedded 13\u003c\/p\u003e \u003cp\u003e\u003cb\u003eCHAPTER 2 PLATFORM-INDEPENDENT DEVELOPMENT TECHNOLOGIES 15\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eThe Golden Rule 15\u003c\/p\u003e \u003cp\u003e2.1 Vendor Lock-In 16\u003c\/p\u003e \u003cp\u003e2.2 Recommended Standards and Guidelines 18\u003c\/p\u003e \u003cp\u003e2.2.1 Respecting the Device 18\u003c\/p\u003e \u003cp\u003e2.2.2 Respecting the Network 19\u003c\/p\u003e \u003cp\u003e2.2.3 Communication Protocols 21\u003c\/p\u003e \u003cp\u003e2.2.4 Data Formats 31\u003c\/p\u003e \u003cp\u003e2.2.5 Mobile User Experience Guidelines 40\u003c\/p\u003e \u003cp\u003e2.2.6 Authentication 45\u003c\/p\u003e \u003cp\u003e2.2.7 Dealing with Offline and Partially Connected Devices 47\u003c\/p\u003e \u003cp\u003e2.3 Wrapping Up 63\u003c\/p\u003e \u003cp\u003e\u003cb\u003eCHAPTER 3 PLATFORM-INDEPENDENT DEVELOPMENT STRATEGY 64\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e3.1 High-Level App Development Flow 64\u003c\/p\u003e \u003cp\u003e3.2 Five-Layer Architecture 65\u003c\/p\u003e \u003cp\u003e3.3 Five-Layer Architecture Detail 66\u003c\/p\u003e \u003cp\u003e3.3.1 The User Interface Layer 66\u003c\/p\u003e \u003cp\u003e3.3.2 The Service Interface Layer 68\u003c\/p\u003e \u003cp\u003e3.3.3 The Service Layer 69\u003c\/p\u003e \u003cp\u003e3.3.4 The Data Abstraction Layer 70\u003c\/p\u003e \u003cp\u003e3.3.5 The Data Layer 70\u003c\/p\u003e \u003cp\u003e\u003cb\u003eCHAPTER 4 THE USER INTERFACE LAYER 72\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e4.1 Porting Versus Wrapping 72\u003c\/p\u003e \u003cp\u003e4.2 Multi-Client Development Tools 73\u003c\/p\u003e \u003cp\u003e4.2.1 PhoneGap (http:\/\/phonegap.com\/) 73\u003c\/p\u003e \u003cp\u003e4.2.2 Xamarin (http:\/\/xamarin.com\/) 74\u003c\/p\u003e \u003cp\u003e4.2.3 Unity (http:\/\/www.unity3d.com) 75\u003c\/p\u003e \u003cp\u003e4.2.4 Visual Studio 76\u003c\/p\u003e \u003cp\u003e4.3 Cross-Platform Languages 76\u003c\/p\u003e \u003cp\u003e4.4 Avoid Writing for the Least Common Denominator 77\u003c\/p\u003e \u003cp\u003e4.5 Wrapping Up 78\u003c\/p\u003e \u003cp\u003e\u003cb\u003eCHAPTER 5 THE SERVICE INTERFACE LAYER 79\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e5.1 Message Processing 79\u003c\/p\u003e \u003cp\u003e5.1.1 Push versus Pull 80\u003c\/p\u003e \u003cp\u003e5.1.2 Partially Connected Scenarios 81\u003c\/p\u003e \u003cp\u003e5.2 Message Processing Patterns 82\u003c\/p\u003e \u003cp\u003e5.3 High-Volume Messaging Patterns 85\u003c\/p\u003e \u003cp\u003e5.3.1 Queue Services and Microsoft Azure Event Hubs 86\u003c\/p\u003e \u003cp\u003e5.3.2 Web Sockets 89\u003c\/p\u003e \u003cp\u003e5.4 High-Volume Push Notifications 91\u003c\/p\u003e \u003cp\u003e5.4.1 Third Party Notification Hubs 93\u003c\/p\u003e \u003cp\u003e5.5 Message Translation and Routing 97\u003c\/p\u003e \u003cp\u003e5.5.1 Message Translation 97\u003c\/p\u003e \u003cp\u003e5.5.2 Message Routing 103\u003c\/p\u003e \u003cp\u003e5.5.3 Handling Large Amounts of Data 108\u003c\/p\u003e \u003cp\u003e5.6 Wrapping Up 111\u003c\/p\u003e \u003cp\u003e\u003cb\u003eCHAPTER 6 THE SERVICE LAYER 114\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e6.1 Thinking in Nodes 114\u003c\/p\u003e \u003cp\u003e6.1.1 Scale Out and Scale Up 114\u003c\/p\u003e \u003cp\u003e6.1.2 Scale Out versus Scale Up 114\u003c\/p\u003e \u003cp\u003e6.2 Planning for Horizontal Scaling 117\u003c\/p\u003e \u003cp\u003e6.2.1 Node Sizing 117\u003c\/p\u003e \u003cp\u003e6.2.2 Statelessness 120\u003c\/p\u003e \u003cp\u003e6.3 Designing Service Layers for Mobile Computing 121\u003c\/p\u003e \u003cp\u003e6.3.1 Service Componentization 122\u003c\/p\u003e \u003cp\u003e6.4 Implementation Abstraction 124\u003c\/p\u003e \u003cp\u003e6.4.1 Service Interface Abstraction 124\u003c\/p\u003e \u003cp\u003e6.5 Using CQRS\/ES for Service Implementation 127\u003c\/p\u003e \u003cp\u003e6.5.1 CQRS Overview 127\u003c\/p\u003e \u003cp\u003e6.5.2 Why CQRS 129\u003c\/p\u003e \u003cp\u003e6.5.3 Being Able to Separate Data Models 129\u003c\/p\u003e \u003cp\u003e6.5.4 Aggregates and Bounded Contexts 131\u003c\/p\u003e \u003cp\u003e6.5.5 The Read and Write Sides 132\u003c\/p\u003e \u003cp\u003e6.5.6 CQRS Communications 132\u003c\/p\u003e \u003cp\u003e6.6 Side by Side Multi-Versioning 140\u003c\/p\u003e \u003cp\u003e6.7 Service Agility 141\u003c\/p\u003e \u003cp\u003e6.8 Consumer, Business, and Partner Services 141\u003c\/p\u003e \u003cp\u003e6.9 Portable and Modular Service Architectures 142\u003c\/p\u003e \u003cp\u003e6.9.1 Designing Pluggable Services 145\u003c\/p\u003e \u003cp\u003e6.9.2 Swapping Services 147\u003c\/p\u003e \u003cp\u003e6.9.3 Deployment and Hosting Strategies 151\u003c\/p\u003e \u003cp\u003e6.10 Wrapping up 152\u003c\/p\u003e \u003cp\u003e\u003cb\u003eCHAPTER 7 THE DATA ABSTRACTION LAYER 154\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e7.1 Objects to Data 154\u003c\/p\u003e \u003cp\u003e7.2 Using the DAL with External Services 157\u003c\/p\u003e \u003cp\u003e7.3 Components of a DAL 159\u003c\/p\u003e \u003cp\u003e7.3.1 Data Mapper 160\u003c\/p\u003e \u003cp\u003e7.3.2 Query Mapper 161\u003c\/p\u003e \u003cp\u003e7.3.3 Repository 166\u003c\/p\u003e \u003cp\u003e7.3.4 Serializers 168\u003c\/p\u003e \u003cp\u003e7.3.5 Storage Consideration 169\u003c\/p\u003e \u003cp\u003e7.3.6 Cache 172\u003c\/p\u003e \u003cp\u003e7.4 Wrapping Up 174\u003c\/p\u003e \u003cp\u003e\u003cb\u003eCHAPTER 8 THE DATA LAYER 176\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e8.1 Overview 177\u003c\/p\u003e \u003cp\u003e8.2 Business Rules in the Data Layer 178\u003c\/p\u003e \u003cp\u003e8.3 Relational Databases 178\u003c\/p\u003e \u003cp\u003e8.4 NoSQL Databases 181\u003c\/p\u003e \u003cp\u003e8.4.1 Key Value Database 183\u003c\/p\u003e \u003cp\u003e8.4.2 Document Database 186\u003c\/p\u003e \u003cp\u003e8.4.3 Column Family Databases 189\u003c\/p\u003e \u003cp\u003e8.4.4 Graph Database 194\u003c\/p\u003e \u003cp\u003e8.4.5 How to Choose? 197\u003c\/p\u003e \u003cp\u003e8.5 File Storage 197\u003c\/p\u003e \u003cp\u003e8.6 Blended Approach 200\u003c\/p\u003e \u003cp\u003e8.6.1 The Polyglot Data Layer 201\u003c\/p\u003e \u003cp\u003e8.7 Wrapping up 203\u003c\/p\u003e \u003cp\u003e\u003cb\u003eCHAPTER 9 STRATEGIES FOR ONGOING IMPROVEMENT 204\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e9.1 Feature Expansion 204\u003c\/p\u003e \u003cp\u003e9.1.1 User Interface 206\u003c\/p\u003e \u003cp\u003e9.1.2 Service Interface Layer 206\u003c\/p\u003e \u003cp\u003e9.1.3 Service Layer 206\u003c\/p\u003e \u003cp\u003e9.1.4 Data Abstraction Layer 206\u003c\/p\u003e \u003cp\u003e9.1.5 Data Layer 207\u003c\/p\u003e \u003cp\u003e9.2 Data Collection Matters 207\u003c\/p\u003e \u003cp\u003e9.3 Multi-Versioning 209\u003c\/p\u003e \u003cp\u003e9.4 Version Retirement 212\u003c\/p\u003e \u003cp\u003e9.4.1 Scale Back 214\u003c\/p\u003e \u003cp\u003e9.5 Client Upgrades 216\u003c\/p\u003e \u003cp\u003e9.6 Wrapping Up 220\u003c\/p\u003e \u003cp\u003e\u003cb\u003eCHAPTER 10 CONCLUSION 221\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eREFERENCES 225\u003c\/p\u003e \u003cp\u003eINDEX 229\u003c\/p\u003e\u003c\/font\u003e\u003c\/p\u003e\r\n\r\n\u003cp\u003e\u003cfont size=\"3\"\u003eSubject Areas: Electronics \u0026amp; communications engineering [\u003ca title=\"See our other books on Electronics \u0026amp; communications engineering\" href=\"https:\/\/freshlyprintedbooks.co.uk\/search?q=%22Electronics%20\u0026amp;%20communications%20engineering%20%5BTJ%5D%22\"\u003eTJ\u003c\/a\u003e]\u003c\/font\u003e\u003c\/p\u003e\r\n\r\n\r\n\u003c\/font\u003e","brand":"Wiley-IEEE Computer Society Pr","offers":[{"title":"Brand New","offer_id":52421395677464,"sku":"9781119060147","price":38.29,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0730\/2037\/5320\/files\/9781119060147.jpg?v=1784594947","url":"https:\/\/freshlyprintedbooks.co.uk\/products\/designing-platform-independent-mobile-apps-and-services-hardback-9781119060147","provider":"Freshly Printed Books","version":"1.0","type":"link"}