Designing platform independent mobile apps and services / (Record no. 42648)

000 -LEADER
fixed length control field 09432nam a2201057 i 4500
001 - CONTROL NUMBER
control field 7753054
003 - CONTROL NUMBER IDENTIFIER
control field IEEE
005 - DATE AND TIME OF LATEST TRANSACTION
control field 20191218152127.0
006 - FIXED-LENGTH DATA ELEMENTS--ADDITIONAL MATERIAL CHARACTERISTICS
fixed length control field m o d
007 - PHYSICAL DESCRIPTION FIXED FIELD--GENERAL INFORMATION
fixed length control field cr |n|||||||||
008 - FIXED-LENGTH DATA ELEMENTS--GENERAL INFORMATION
fixed length control field 161207s2016 nju ob 001 eng d
010 ## - LIBRARY OF CONGRESS CONTROL NUMBER
Canceled/invalid LC control number 2016009419 (print)
020 ## - INTERNATIONAL STANDARD BOOK NUMBER
International Standard Book Number 9781119060406
Qualifying information electronic
020 ## - INTERNATIONAL STANDARD BOOK NUMBER
Canceled/invalid ISBN 9781119060147
Qualifying information cloth
020 ## - INTERNATIONAL STANDARD BOOK NUMBER
Canceled/invalid ISBN 9781119060185
Qualifying information epub
020 ## - INTERNATIONAL STANDARD BOOK NUMBER
Canceled/invalid ISBN 9781119060154
Qualifying information Adobe PDF
024 7# - OTHER STANDARD IDENTIFIER
Standard number or code 10.1002/9781119060406
Source of number or code doi
035 ## - SYSTEM CONTROL NUMBER
System control number (CaBNVSL)mat07753054
035 ## - SYSTEM CONTROL NUMBER
System control number (IDAMS)0b0000648585c6c9
040 ## - CATALOGING SOURCE
Original cataloging agency CaBNVSL
Language of cataloging eng
Description conventions rda
Transcribing agency CaBNVSL
Modifying agency CaBNVSL
050 #4 - LIBRARY OF CONGRESS CALL NUMBER
Classification number QA76.59
Item number .H43 2016eb
082 00 - DEWEY DECIMAL CLASSIFICATION NUMBER
Classification number 005.25
Edition number 23
100 1# - MAIN ENTRY--PERSONAL NAME
Personal name Heckman, Rocky,
Relator term author.
245 10 - TITLE STATEMENT
Title Designing platform independent mobile apps and services /
Statement of responsibility, etc. Rocky Heckman.
264 #1 - PRODUCTION, PUBLICATION, DISTRIBUTION, MANUFACTURE, AND COPYRIGHT NOTICE
Place of production, publication, distribution, manufacture Hoboken, New Jersey :
Name of producer, publisher, distributor, manufacturer John Wiley & Sons, Inc.,
Date of production, publication, distribution, manufacture, or copyright notice [2016]
264 #2 - PRODUCTION, PUBLICATION, DISTRIBUTION, MANUFACTURE, AND COPYRIGHT NOTICE
Place of production, publication, distribution, manufacture [Piscataqay, New Jersey] :
Name of producer, publisher, distributor, manufacturer IEEE Xplore,
Date of production, publication, distribution, manufacture, or copyright notice [2016]
300 ## - PHYSICAL DESCRIPTION
Extent 1 PDF (256 pages).
336 ## - CONTENT TYPE
Content type term text
Source rdacontent
337 ## - MEDIA TYPE
Media type term electronic
Source isbdmedia
338 ## - CARRIER TYPE
Carrier type term online resource
Source rdacarrier
500 ## - GENERAL NOTE
General note Includes index.
505 0# - FORMATTED CONTENTS NOTE
Formatted contents note -- LIST OF FIGURES xi -- LIST OF TABLES xiii -- PREFACE xv -- ACKNOWLEDGMENTS xvii -- CHAPTER 1 THE MOBILE LANDSCAPE 1 -- 1.1 Introduction 1 -- 1.2 Previous Attempts at Cross-Platform 2 -- 1.2.1 Java 2 -- 1.2.2 Early Web Apps 5 -- 1.2.3 Multiple Codebases 7 -- 1.3 Breadth Versus Depth 9 -- 1.4 The Multi-Platform Targets 10 -- 1.4.1 Traditional 10 -- 1.4.2 Mobile 11 -- 1.4.3 Wearables 12 -- 1.4.4 Embedded 13 -- CHAPTER 2 PLATFORM-INDEPENDENT DEVELOPMENT TECHNOLOGIES 15 -- The Golden Rule 15 -- 2.1 Vendor Lock-In 16 -- 2.2 Recommended Standards and Guidelines 18 -- 2.2.1 Respecting the Device 18 -- 2.2.2 Respecting the Network 19 -- 2.2.3 Communication Protocols 21 -- 2.2.4 Data Formats 31 -- 2.2.5 Mobile User Experience Guidelines 40 -- 2.2.6 Authentication 45 -- 2.2.7 Dealing with Offline and Partially Connected Devices 47 -- 2.3 Wrapping Up 63 -- CHAPTER 3 PLATFORM-INDEPENDENT DEVELOPMENT STRATEGY 64 -- 3.1 High-Level App Development Flow 64 -- 3.2 Five-Layer Architecture 65 -- 3.3 Five-Layer Architecture Detail 66 -- 3.3.1 The User Interface Layer 66 -- 3.3.2 The Service Interface Layer 68 -- 3.3.3 The Service Layer 69 -- 3.3.4 The Data Abstraction Layer 70 -- 3.3.5 The Data Layer 70 -- CHAPTER 4 THE USER INTERFACE LAYER 72 -- 4.1 Porting Versus Wrapping 72 -- 4.2 Multi-Client Development Tools 73 -- 4.2.1 PhoneGap (http://phonegap.com/) 73 -- 4.2.2 Xamarin (http://xamarin.com/) 74 -- 4.2.3 Unity (http://www.unity3d.com) 75 -- 4.2.4 Visual Studio 76 -- 4.3 Cross-Platform Languages 76 -- 4.4 Avoid Writing for the Least Common Denominator 77 -- 4.5 Wrapping Up 78 -- CHAPTER 5 THE SERVICE INTERFACE LAYER 79 -- 5.1 Message Processing 79 -- 5.1.1 Push versus Pull 80 -- 5.1.2 Partially Connected Scenarios 81 -- 5.2 Message Processing Patterns 82 -- 5.3 High-Volume Messaging Patterns 85 -- 5.3.1 Queue Services and Microsoft Azure Event Hubs 86 -- 5.3.2 Web Sockets 89.
505 8# - FORMATTED CONTENTS NOTE
Formatted contents note 5.4 High-Volume Push Notifications 91 -- 5.4.1 Third Party Notification Hubs 93 -- 5.5 Message Translation and Routing 97 -- 5.5.1 Message Translation 97 -- 5.5.2 Message Routing 103 -- 5.5.3 Handling Large Amounts of Data 108 -- 5.6 Wrapping Up 111 -- CHAPTER 6 THE SERVICE LAYER 114 -- 6.1 Thinking in Nodes 114 -- 6.1.1 Scale Out and Scale Up 114 -- 6.1.2 Scale Out versus Scale Up 114 -- 6.2 Planning for Horizontal Scaling 117 -- 6.2.1 Node Sizing 117 -- 6.2.2 Statelessness 120 -- 6.3 Designing Service Layers for Mobile Computing 121 -- 6.3.1 Service Componentization 122 -- 6.4 Implementation Abstraction 124 -- 6.4.1 Service Interface Abstraction 124 -- 6.5 Using CQRS/ES for Service Implementation 127 -- 6.5.1 CQRS Overview 127 -- 6.5.2 Why CQRS 129 -- 6.5.3 Being Able to Separate Data Models 129 -- 6.5.4 Aggregates and Bounded Contexts 131 -- 6.5.5 The Read and Write Sides 132 -- 6.5.6 CQRS Communications 132 -- 6.6 Side by Side Multi-Versioning 140 -- 6.7 Service Agility 141 -- 6.8 Consumer, Business, and Partner Services 141 -- 6.9 Portable and Modular Service Architectures 142 -- 6.9.1 Designing Pluggable Services 145 -- 6.9.2 Swapping Services 147 -- 6.9.3 Deployment and Hosting Strategies 151 -- 6.10 Wrapping up 152 -- CHAPTER 7 THE DATA ABSTRACTION LAYER 154 -- 7.1 Objects to Data 154 -- 7.2 Using the DAL with External Services 157 -- 7.3 Components of a DAL 159 -- 7.3.1 Data Mapper 160 -- 7.3.2 Query Mapper 161 -- 7.3.3 Repository 166 -- 7.3.4 Serializers 168 -- 7.3.5 Storage Consideration 169 -- 7.3.6 Cache 172 -- 7.4 Wrapping Up 174 -- CHAPTER 8 THE DATA LAYER 176 -- 8.1 Overview 177 -- 8.2 Business Rules in the Data Layer 178 -- 8.3 Relational Databases 178 -- 8.4 NoSQL Databases 181 -- 8.4.1 Key Value Database 183 -- 8.4.2 Document Database 186 -- 8.4.3 Column Family Databases 189 -- 8.4.4 Graph Database 194 -- 8.4.5 How to Choose? 197 -- 8.5 File Storage 197 -- 8.6 Blended Approach 200 -- 8.6.1 The Polyglot Data Layer 201 -- 8.7 Wrapping up 203 -- CHAPTER 9 STRATEGIES FOR ONGOING IMPROVEMENT 204.
505 8# - FORMATTED CONTENTS NOTE
Formatted contents note 9.1 Feature Expansion 204 -- 9.1.1 User Interface 206 -- 9.1.2 Service Interface Layer 206 -- 9.1.3 Service Layer 206 -- 9.1.4 Data Abstraction Layer 206 -- 9.1.5 Data Layer 207 -- 9.2 Data Collection Matters 207 -- 9.3 Multi-Versioning 209 -- 9.4 Version Retirement 212 -- 9.4.1 Scale Back 214 -- 9.5 Client Upgrades 216 -- 9.6 Wrapping Up 220 -- CHAPTER 10 CONCLUSION 221 -- REFERENCES 225 -- INDEX 229.
506 1# - RESTRICTIONS ON ACCESS NOTE
Terms governing access Restricted to subscribers or individual electronic text purchasers.
520 ## - SUMMARY, ETC.
Summary, etc. Presents strategies to designing platform agnostic mobile apps connected to cloud based services that can handle heavy loads of modern computing This book explains how to help create an innovative and future proof architecture for mobile apps by introducing practical approaches to increase the value and flexibility of their service layers and reduce their delivery time. Designing Platform Independent Mobile Apps and Services begins by describing the mobile computing landscape and previous attempts at cross platform development. Platform independent mobile technologies and development strategies are described in chapter two and three. Communication protocols, details of a recommended five layer architecture, service layers, and the data abstraction layer are also introduced in these chapters. Cross platform languages and multi-client development tools for the User Interface (UI) layer, as well as message processing patterns and message routing of the Service Interface (SI) layer are explained in chapter four and five. Ways to design the service layer for mobile computing, using Command Query Responsibility Segregation (CQRS) and the Data Abstraction Layer with external services, and strategies to deploy and host portable and modular service architectures are included in chapter six and seven. The last chapters cover the foundation of the data layer and polyglot data layer, as well as strategies for ongoing improvements for apps and services. . Provides development patterns for platform agnostic app development and technologies. Includes recommended standards and structures for easy adoption and extensibility. Covers portable and modular back-end architectures to support service agility and rapid development and future proof service designs This book is geared toward mobile consumer and commercial app developers. It will also be useful for students interested in learning about modern application development.
530 ## - ADDITIONAL PHYSICAL FORM AVAILABLE NOTE
Additional physical form available note Also available in print.
538 ## - SYSTEM DETAILS NOTE
System details note Mode of access: World Wide Web
588 ## - SOURCE OF DESCRIPTION NOTE
Source of description note Description based on PDF viewed 12/07/2016.
650 #0 - SUBJECT ADDED ENTRY--TOPICAL TERM
Topical term or geographic name entry element Mobile computing.
650 #0 - SUBJECT ADDED ENTRY--TOPICAL TERM
Topical term or geographic name entry element Cell phones
General subdivision Programming.
650 #0 - SUBJECT ADDED ENTRY--TOPICAL TERM
Topical term or geographic name entry element Mobile apps.
655 #0 - INDEX TERM--GENRE/FORM
Genre/form data or focus term Electronic books.
695 ## -
-- Androids
695 ## -
-- Asynchronous communication
695 ## -
-- Batteries
695 ## -
-- Browsers
695 ## -
-- Buildings
695 ## -
-- Business
695 ## -
-- C# languages
695 ## -
-- Cloud computing
695 ## -
-- Computer architecture
695 ## -
-- Computer crime
695 ## -
-- Data mining
695 ## -
-- Data models
695 ## -
-- Databases
695 ## -
-- Extrapolation
695 ## -
-- FAA
695 ## -
-- Games
695 ## -
-- Hardware
695 ## -
-- Humanoid robots
695 ## -
-- Indexes
695 ## -
-- Java
695 ## -
-- Libraries
695 ## -
-- Maintenance engineering
695 ## -
-- Memory
695 ## -
-- Mobile communication
695 ## -
-- Operating systems
695 ## -
-- Organizations
695 ## -
-- Planning
695 ## -
-- Production
695 ## -
-- Random access memory
695 ## -
-- Receivers
695 ## -
-- Relational databases
695 ## -
-- Ribs
695 ## -
-- Routing
695 ## -
-- Servers
695 ## -
-- Service-oriented architecture
695 ## -
-- Smart phones
695 ## -
-- Sun
695 ## -
-- Synchronization
695 ## -
-- Tablet computers
695 ## -
-- Testing
695 ## -
-- User interfaces
695 ## -
-- Visualization
695 ## -
-- Wrapping
710 2# - ADDED ENTRY--CORPORATE NAME
Corporate name or jurisdiction name as entry element IEEE Xplore (Online Service),
Relator term distributor.
710 2# - ADDED ENTRY--CORPORATE NAME
Corporate name or jurisdiction name as entry element Wiley,
Relator term publisher.
776 08 - ADDITIONAL PHYSICAL FORM ENTRY
Relationship information Print version:
International Standard Book Number 9781119060147
856 42 - ELECTRONIC LOCATION AND ACCESS
Materials specified Abstract with links to resource
Uniform Resource Identifier https://ieeexplore.ieee.org/xpl/bkabstractplus.jsp?bkn=7753054

No items available.


International Institute of Information Technology, Bangalore
26/C, Electronics City, Hosur Road,Bengaluru-560100 Contact Us
Koha & OPAC at IIITB deployed by Bhargav Sridhar & Team.

Powered by Koha