Semester: 4 Title: a Model for Supporting the Discussion Around

Total Page:16

File Type:pdf, Size:1020Kb

Semester: 4 Title: a Model for Supporting the Discussion Around Semester: 4 Aalborg University Copenhagen A.C. Meyers Vænge 15 2450 København SV Title: A model for supporting the discussion around the Semester Coordinator: Henning choice of mobile technology in Olesen mobile application development Secretary: Maiken Keller Project Period: 1 February – 6 June Semester Theme: Master Thesis Project Abstract: The research identified a knowledge gap related to Supervisor(s): mobile Application Frameworks. Specifically, what is Professor Anders Hansen Henten important to know for a business organization when deciding how to build an application for their mobile Project group no.: 4BUS 4.7 service. In order to answer the research question, the thesis Members explored the mobile ecosystem, found the most (do not write CPR.nr.): influential members in the mobile development Dragos Nicolae Sassu process. Once it set up this context, the work Focuses on describing Application Frameworks from a technical perspective. The result of this analysis is a descriptive model of the application Frameworks and their surrounding ecosystem. In order to identify relevant implications for the business organization, the research focuses on users and their acceptance and continuance behaviours. Starting from these two descriptive blocks, the research identifies 6 relevant possible problems that should be discussed in the context of this technology choice. Lastly, the work proposes 5 mobile service- related characteristics that may change after a choice is made. Lastly, the work puts together all these blocks. The result is a model that can facilitate the discussion around a the mobile technology choice in question. Pages: 104 Finished: 6/6/2019 When uploading this document to Digital Exam each group member confirms that all have participated equally in the project work and that they collectively are responsible for the content of the project report. Furthermore each group member is liable for that there is no plagiarism in the report. AALBORG UNIVERVERSITY MASTER THESIS A model for supporting the discussion around the choice of mobile technology in mobile application development Author: Dragos SASSU i AALBORG UNIVERVERSITY Abstract Faculty Name Department or School Name MSc engineer Innovative Communication Technologies and Entrepreneurship A model for supporting the discussion around the choice of mobile technology in mobile application development by Dragos SASSU The research identified a knowledge gap related to mobile Application Frameworks. Specifically, what is important to know for a business organization when deciding how to build an application for their mobile service. In order to answer the research question, the thesis explored the mobile ecosystem, found the most influential members in the mobile development process. Once it set up this context, the work Focuses on describing Application Frameworks from a technical perspective. The result of this anal- ysis is a descriptive model of the application Frameworks and their surrounding ecosystem. In order to identify relevant implications for the business organization, the research focuses on users and their acceptance and continuance behaviours. Starting from these two descriptive blocks, the research identifies 6 relevant possible problems that should be discussed in the context of this technology choice. Lastly, the work proposes 5 mobile service-related characteristics that may change after a choice is made. Lastly, the work puts together all these blocks. The result is a model that can facilitate the discus- sion around a the mobile technology choice in question. ii Contents Abstract i 1 Introduction 1 1.1 Problem formulation......................................2 1.2 Scope definition.........................................3 2 Methodology 5 2.1 Research design.........................................5 2.1.1 Research process....................................6 2.1.2 Research Model.....................................6 Stage I: Exploratory interviews............................6 Stage II: Thorough literature review.........................6 Stage III: Defining the Technology Domain (T.D.).................7 Stage IV: Defining the Application Domain (A.D.).................7 Stage V: Identifying and analyzing the problem space (relationships) between T.D. and A.D..................................7 Stage VI: Define the Business Domain (B.D.) and analyze its opportunities and limitations in the context of mobile technologies............7 Stage VII: Showcase of the complete model....................8 2.1.3 Research Artifacts...................................8 2.2 Literature review........................................8 2.2.1 Sources..........................................9 2.2.2 Search process......................................9 2.2.3 Structuring knowledge.................................9 2.3 Interview process........................................ 10 2.3.1 Exploratory interviews................................. 10 2.3.2 In-depth interviews.................................. 10 2.4 Conference - Google I/o.................................... 10 2.5 Handling personal experience and experimentation.................... 10 2.6 Analysis frameworks...................................... 11 2.6.1 The ecosystem analogy................................ 11 Business ecosystem................................... 11 Technology ecosystem................................. 12 Digital Ecosystem.................................... 13 Ecosystem control and interdependence....................... 14 2.6.2 Technology adoption theory.............................. 15 Pre-adoption theories................................. 16 Post-adoption theories................................. 17 iii 3 The mobile landscape 19 3.1 The evolution of Mobile landscape.............................. 19 3.1.1 The Brick Era (1973 – 1988).............................. 19 3.1.2 The Candy Bar Era (1988 – 1998)........................... 20 3.1.3 The Feature Phone Era (1998 - 2007)......................... 20 3.1.4 (First) Smartphone Era (2002 - 2007)......................... 21 3.1.5 The Touch Era - (Second) Smartphone Era (2007 - Present)............ 22 3.1.6 The smart device era.................................. 24 3.2 Evolution of mobile services.................................. 24 3.3 State of the art in the Mobile ecosystem........................... 26 3.3.1 Operators........................................ 27 3.3.2 Networks........................................ 28 3.3.3 Devices.......................................... 28 3.3.4 Mobile platforms and Operating Systems (O.S.).................. 32 Android Platform.................................... 33 iOS Platform....................................... 38 3.3.5 Application framework................................ 39 3.3.6 Applications....................................... 39 3.3.7 Services......................................... 41 3.4 Ecosystem considerations for applications developers................... 42 3.4.1 Consequences of platform differentiation...................... 43 3.4.2 Fragmentation..................................... 43 4 Technology Domain - An analysis of Application Frameworks 45 4.1 An overview of mobile application frameworks...................... 45 4.1.1 Related research.................................... 45 4.1.2 Framework classification............................... 46 4.1.3 Native Application Frameworks........................... 46 4.1.4 Mobile Web Application Frameworks........................ 47 A classical approach to Web Applications...................... 47 A modern approach to Web Applications...................... 48 4.1.5 Cross-platform Application Frameworks...................... 49 Hybrid.......................................... 50 Interpreted........................................ 51 Cross-compiled..................................... 52 Other approaches.................................... 53 4.2 Analysis framework development.............................. 54 4.2.1 Scope definition..................................... 54 4.2.2 Stage 1 - Adapting Adomavicius et. al model of technology roles........ 54 4.2.3 Stage 2 - Component identification and classification............... 55 4.2.4 Stage 3 - Component characteristics definition................... 55 4.3 Analysis of Technology Domain components........................ 57 4.3.1 Analysis sources.................................... 58 4.3.2 Native - Android.................................... 59 4.3.3 Native - iOS....................................... 60 4.3.4 Web - Angular...................................... 61 4.3.5 Cross-platform - Cordova............................... 61 4.3.6 Cross-platform - React Native............................. 62 4.3.7 Cross-platform - Flutter................................ 63 iv 4.4 Conclusion............................................ 64 5 Application Domain Definition 65 5.1 Exploratory expert interviews................................. 66 5.1.1 Findings summary................................... 66 5.1.2 Initial considerations.................................. 69 5.1.3 Related research.................................... 70 5.1.4 Domain key concepts................................. 72 5.1.5 Domain analysis expectations and requirements.................. 72 5.2 Application Domain analysis framework development.................. 72 5.2.1 UTAUT adaptation................................... 73 5.3 Application Domain analysis................................. 76 5.3.1 Who are the App and the User?............................ 77
Recommended publications
  • Learning React Functional Web Development with React and Redux
    Learning React Functional Web Development with React and Redux Alex Banks and Eve Porcello Beijing Boston Farnham Sebastopol Tokyo Learning React by Alex Banks and Eve Porcello Copyright © 2017 Alex Banks and Eve Porcello. All rights reserved. Printed in the United States of America. Published by O’Reilly Media, Inc., 1005 Gravenstein Highway North, Sebastopol, CA 95472. O’Reilly books may be purchased for educational, business, or sales promotional use. Online editions are also available for most titles (http://oreilly.com/safari). For more information, contact our corporate/insti‐ tutional sales department: 800-998-9938 or [email protected]. Editor: Allyson MacDonald Indexer: WordCo Indexing Services Production Editor: Melanie Yarbrough Interior Designer: David Futato Copyeditor: Colleen Toporek Cover Designer: Karen Montgomery Proofreader: Rachel Head Illustrator: Rebecca Demarest May 2017: First Edition Revision History for the First Edition 2017-04-26: First Release See http://oreilly.com/catalog/errata.csp?isbn=9781491954621 for release details. The O’Reilly logo is a registered trademark of O’Reilly Media, Inc. Learning React, the cover image, and related trade dress are trademarks of O’Reilly Media, Inc. While the publisher and the authors have used good faith efforts to ensure that the information and instructions contained in this work are accurate, the publisher and the authors disclaim all responsibility for errors or omissions, including without limitation responsibility for damages resulting from the use of or reliance on this work. Use of the information and instructions contained in this work is at your own risk. If any code samples or other technology this work contains or describes is subject to open source licenses or the intellectual property rights of others, it is your responsibility to ensure that your use thereof complies with such licenses and/or rights.
    [Show full text]
  • The Book of Apigee Edge Antipatterns V2.0
    The Book of Apigee Edge Antipatterns Avoid common pitfalls, maximize the power of your APIs Version 2.0 Google Cloud ​Privileged and confidential. ​apigee 1 Contents Introduction to Antipatterns 3 What is this book about? 4 Why did we write it? 5 Antipattern Context 5 Target Audience 5 Authors 6 Acknowledgements 6 Edge Antipatterns 1. Policy Antipatterns 8 1.1. Use waitForComplete() in JavaScript code 8 1.2. Set Long Expiration time for OAuth Access and Refresh Token 13 1.3. Use Greedy Quantifiers in RegularExpressionProtection policy​ 16 1.4. Cache Error Responses 19 1.5. Store data greater than 512kb size in Cache ​24 1.6. Log data to third party servers using JavaScript policy 27 1.7. Invoke the MessageLogging policy multiple times in an API proxy​ 29 1.8. Configure a Non Distributed Quota 36 1.9. Re-use a Quota policy 38 1.10. Use the RaiseFault policy under inappropriate conditions​ 44 1.11. Access multi-value HTTP Headers incorrectly in an API proxy​ 49 1.12. Use Service Callout policy to invoke a backend service in a No Target API proxy 54 Google Cloud ​Privileged and confidential. ​apigee 2 2. Performance Antipatterns 58 2.1. Leave unused NodeJS API Proxies deployed 58 3. Generic Antipatterns 60 3.1. Invoke Management API calls from an API proxy 60 3.2. Invoke a Proxy within Proxy using custom code or as a Target 65 3.3. Manage Edge Resources without using Source Control Management 69 3.4. Define multiple virtual hosts with same host alias and port number​ 73 3.5.
    [Show full text]
  • Duo Access Gateway (SAML): Cisco ASA Only
    #CLMEL Duo Security: Journey toward Zero Trust Karl Lewis, Solutions Engineer - APJC BRKSEC-2718 #CLMEL BRK-2718 Cisco Webex Teams Questions? Use Cisco Webex Teams (formerly Cisco Spark) to chat with the speaker after the session How 1 Find this session in the Cisco Events Mobile App 2 Click “Join the Discussion” 3 Install Webex Teams or go directly to the team space 4 Enter messages/questions in the team space cs.co/ciscolivebot#BRKSEC-2718 © 2019 Cisco and/or its affiliates. All rights reserved. Cisco Public Agenda • Introduction • Where did Zero-Trust come from? • Why are traditional approaches Failing? • How does Zero-Trust address these new challenges? • What does the journey look like? Where do I get value? • Use Cases and Architecture– How does it really work? • Live Demo and Integrations discussion. • Q&A BRK-2718 © 2019 Cisco and/or its affiliates. All rights reserved. Cisco Public Different Words, Similar Ideas John Kindervag at Forrester describes a “Zero Trust model” 2009 2003-ish 2013 The Jericho Forum Google talks about their first discusses “de- implementation, called perimeterization” “BeyondCorp” #CLMEL © 2019BRK Cisco-2718 and/or its affiliates. All rights reserved. Cisco Public Don’t trust something just because it’s on the “inside” of your firewall. It doesn’t mean you don’t need a firewall. #CLMEL BRK-2718 © 2019 Cisco and/or its affiliates. All rights reserved. Cisco Public BRK-2718 Traditional approaches to security are falling short. A Castle Wall only works when everything you need to protect is: INSIDE And the attackers are: OUTSIDE © 2019 Cisco and/or its affiliates.
    [Show full text]
  • UNIVERSITY of CALIFORNIA SAN DIEGO Simplifying Datacenter Fault
    UNIVERSITY OF CALIFORNIA SAN DIEGO Simplifying datacenter fault detection and localization A dissertation submitted in partial satisfaction of the requirements for the degree of Doctor of Philosophy in Computer Science by Arjun Roy Committee in charge: Alex C. Snoeren, Co-Chair Ken Yocum, Co-Chair George Papen George Porter Stefan Savage Geoff Voelker 2018 Copyright Arjun Roy, 2018 All rights reserved. The Dissertation of Arjun Roy is approved and is acceptable in quality and form for publication on microfilm and electronically: Co-Chair Co-Chair University of California San Diego 2018 iii DEDICATION Dedicated to my grandmother, Bela Sarkar. iv TABLE OF CONTENTS Signature Page . iii Dedication . iv Table of Contents . v List of Figures . viii List of Tables . x Acknowledgements . xi Vita........................................................................ xiii Abstract of the Dissertation . xiv Chapter 1 Introduction . 1 Chapter 2 Datacenters, applications, and failures . 6 2.1 Datacenter applications, networks and faults . 7 2.1.1 Datacenter application patterns . 7 2.1.2 Datacenter networks . 10 2.1.3 Datacenter partial faults . 14 2.2 Partial faults require passive impact monitoring . 17 2.2.1 Multipath hampers server-centric monitoring . 18 2.2.2 Partial faults confuse network-centric monitoring . 19 2.3 Unifying network and server centric monitoring . 21 2.3.1 Load-balanced links mean outliers correspond with partial faults . 22 2.3.2 Centralized network control enables collating viewpoints . 23 Chapter 3 Related work, challenges and a solution . 24 3.1 Fault localization effectiveness criteria . 24 3.2 Existing fault management techniques . 28 3.2.1 Server-centric fault detection . 28 3.2.2 Network-centric fault detection .
    [Show full text]
  • Crawling Code Review Data from Phabricator
    Friedrich-Alexander-Universit¨atErlangen-N¨urnberg Technische Fakult¨at,Department Informatik DUMITRU COTET MASTER THESIS CRAWLING CODE REVIEW DATA FROM PHABRICATOR Submitted on 4 June 2019 Supervisors: Michael Dorner, M. Sc. Prof. Dr. Dirk Riehle, M.B.A. Professur f¨urOpen-Source-Software Department Informatik, Technische Fakult¨at Friedrich-Alexander-Universit¨atErlangen-N¨urnberg Versicherung Ich versichere, dass ich die Arbeit ohne fremde Hilfe und ohne Benutzung anderer als der angegebenen Quellen angefertigt habe und dass die Arbeit in gleicher oder ¨ahnlicherForm noch keiner anderen Pr¨ufungsbeh¨ordevorgelegen hat und von dieser als Teil einer Pr¨ufungsleistung angenommen wurde. Alle Ausf¨uhrungen,die w¨ortlich oder sinngem¨aߨubernommenwurden, sind als solche gekennzeichnet. Nuremberg, 4 June 2019 License This work is licensed under the Creative Commons Attribution 4.0 International license (CC BY 4.0), see https://creativecommons.org/licenses/by/4.0/ Nuremberg, 4 June 2019 i Abstract Modern code review is typically supported by software tools. Researchers use data tracked by these tools to study code review practices. A popular tool in open-source and closed-source projects is Phabricator. However, there is no tool to crawl all the available code review data from Phabricator hosts. In this thesis, we develop a Python crawler named Phabry, for crawling code review data from Phabricator instances using its REST API. The tool produces minimal server and client load, reproducible crawling runs, and stores complete and genuine review data. The new tool is used to crawl the Phabricator instances of the open source projects FreeBSD, KDE and LLVM. The resulting data sets can be used by researchers.
    [Show full text]
  • Artificial Intelligence for Understanding Large and Complex
    Artificial Intelligence for Understanding Large and Complex Datacenters by Pengfei Zheng Department of Computer Science Duke University Date: Approved: Benjamin C. Lee, Advisor Bruce M. Maggs Jeffrey S. Chase Jun Yang Dissertation submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy in the Department of Computer Science in the Graduate School of Duke University 2020 Abstract Artificial Intelligence for Understanding Large and Complex Datacenters by Pengfei Zheng Department of Computer Science Duke University Date: Approved: Benjamin C. Lee, Advisor Bruce M. Maggs Jeffrey S. Chase Jun Yang An abstract of a dissertation submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy in the Department of Computer Science in the Graduate School of Duke University 2020 Copyright © 2020 by Pengfei Zheng All rights reserved except the rights granted by the Creative Commons Attribution-Noncommercial Licence Abstract As the democratization of global-scale web applications and cloud computing, under- standing the performance of a live production datacenter becomes a prerequisite for making strategic decisions related to datacenter design and optimization. Advances in monitoring, tracing, and profiling large, complex systems provide rich datasets and establish a rigorous foundation for performance understanding and reasoning. But the sheer volume and complexity of collected data challenges existing techniques, which rely heavily on human intervention, expert knowledge, and simple statistics. In this dissertation, we address this challenge using artificial intelligence and make the case for two important problems, datacenter performance diagnosis and datacenter workload characterization. The first thrust of this dissertation is the use of statistical causal inference and Bayesian probabilistic model for datacenter straggler diagnosis.
    [Show full text]
  • Economic and Social Impacts of Google Cloud September 2018 Economic and Social Impacts of Google Cloud |
    Economic and social impacts of Google Cloud September 2018 Economic and social impacts of Google Cloud | Contents Executive Summary 03 Introduction 10 Productivity impacts 15 Social and other impacts 29 Barriers to Cloud adoption and use 38 Policy actions to support Cloud adoption 42 Appendix 1. Country Sections 48 Appendix 2. Methodology 105 This final report (the “Final Report”) has been prepared by Deloitte Financial Advisory, S.L.U. (“Deloitte”) for Google in accordance with the contract with them dated 23rd February 2018 (“the Contract”) and on the basis of the scope and limitations set out below. The Final Report has been prepared solely for the purposes of assessment of the economic and social impacts of Google Cloud as set out in the Contract. It should not be used for any other purposes or in any other context, and Deloitte accepts no responsibility for its use in either regard. The Final Report is provided exclusively for Google’s use under the terms of the Contract. No party other than Google is entitled to rely on the Final Report for any purpose whatsoever and Deloitte accepts no responsibility or liability or duty of care to any party other than Google in respect of the Final Report and any of its contents. As set out in the Contract, the scope of our work has been limited by the time, information and explanations made available to us. The information contained in the Final Report has been obtained from Google and third party sources that are clearly referenced in the appropriate sections of the Final Report.
    [Show full text]
  • Unicorn: a System for Searching the Social Graph
    Unicorn: A System for Searching the Social Graph Michael Curtiss, Iain Becker, Tudor Bosman, Sergey Doroshenko, Lucian Grijincu, Tom Jackson, Sandhya Kunnatur, Soren Lassen, Philip Pronin, Sriram Sankar, Guanghao Shen, Gintaras Woss, Chao Yang, Ning Zhang Facebook, Inc. ABSTRACT rative of the evolution of Unicorn's architecture, as well as Unicorn is an online, in-memory social graph-aware index- documentation for the major features and components of ing system designed to search trillions of edges between tens the system. of billions of users and entities on thousands of commodity To the best of our knowledge, no other online graph re- servers. Unicorn is based on standard concepts in informa- trieval system has ever been built with the scale of Unicorn tion retrieval, but it includes features to promote results in terms of both data volume and query volume. The sys- with good social proximity. It also supports queries that re- tem serves tens of billions of nodes and trillions of edges quire multiple round-trips to leaves in order to retrieve ob- at scale while accounting for per-edge privacy, and it must jects that are more than one edge away from source nodes. also support realtime updates for all edges and nodes while Unicorn is designed to answer billions of queries per day at serving billions of daily queries at low latencies. latencies in the hundreds of milliseconds, and it serves as an This paper includes three main contributions: infrastructural building block for Facebook's Graph Search • We describe how we applied common information re- product. In this paper, we describe the data model and trieval architectural concepts to the domain of the so- query language supported by Unicorn.
    [Show full text]
  • 2.3 Apache Chemistry
    UNIVERSITY OF DUBLIN TRINITY COLLEGE DISSERTATION PRESENTED TO THE UNIVERSITY OF DUBLIN,TRINITY COLLEGE IN PARTIAL FULFILMENT OF THE REQUIREMENTS FOR THE DEGREE OF MAGISTER IN ARTE INGENIARIA Content Interoperability and Open Source Content Management Systems An implementation of the CMIS standard as a PHP library Author: Supervisor: MATTHEW NICHOLSON DAVE LEWIS Submitted to the University of Dublin, Trinity College, May, 2015 Declaration I, Matthew Nicholson, declare that the following dissertation, except where otherwise stated, is entirely my own work; that it has not previously been submitted as an exercise for a degree, either in Trinity College Dublin, or in any other University; and that the library may lend or copy it or any part thereof on request. May 21, 2015 Matthew Nicholson i Summary This paper covers the design, implementation and evaluation of PHP li- brary to aid in use of the Content Management Interoperability Services (CMIS) standard. The standard attempts to provide a language indepen- dent and platform specific mechanisms to better allow content manage- ment systems (CM systems) work together. There is currently no PHP implementation of CMIS server framework available, at least not widely. The name given to the library is Elaphus CMIS. The implementation should remove a barrier for making PHP CM sys- tems CMIS compliant. Aswell testing how language independent the stan- dard is and look into the features of PHP programming language. The technologies that are the focus of this report are: CMIS A standard that attempts to structure the data within a wide range of CM systems and provide standardised API for interacting with this data.
    [Show full text]
  • Google Search Techniques
    Google Search Techniques Google Search Techniques Disclaimer: Using Google to search the Internet will locate resources that are available to the public. While these resources are good for some purposes, serious research and academic work often requires access to databases, articles and books that, if they are available online, are only accessible by subscription. Fortunately, the UMass Library subscribes to most of these services. To access these resources online, go to the UMass Library Web site (library.umass.edu). For the best possible help finding information on any topic, talk to a reference librarian in person. They can help you find the resources you need and can teach you some fantastic techniques for doing your own searches. For a complete guide to Google’s features go to http://www.google.com/help/ Simple Search Strategies Google keeps the specifics of its page-ranking techniques secret, but here are a few things we know about what makes pages appear at the top of your search: - your search terms appears in the title of the web page - your search terms appear in links that lead to that page - your search terms appear in the content of the page (especially in headers) When you choose the search terms you enter into Google, think about the titles you would expect to see on these pages or that you would see in links to these pages. The more well-known your search target, the more easy it will be to find. Obscure topics or topics that share terms with more common topics will take more work to find.
    [Show full text]
  • Talks at Google Ep. 8 2018 10 02 Jl Collins 00:00:07 Maxine
    TALKS AT GOOGLE EP. 8 2018 10 02 JL COLLINS 00:00:07 MAXINE: Welcome to another episode of the Talks at Google podcast, where great minds meet. I'm Maxine bringing you this latest episode with author and financial blogger, JL Collins. Talks at Google brings the world's most influential thinkers, creators, makers, doers all to one place. Every episode of this podcast is taken from a video that can be seen at YouTube.com/talksatGoogle. In this episode, JL Collins brings his refreshingly unique and approachable technique on investing to Google. The author of "The Simple Path to Wealth: Your Roadmap to Financial Independence and a Rich, Free Life", Collins offers easy-to-understand effective tips and resources to understand investing with confidence. In this interview with Googler Rachel Smith, he discusses money and investing, including how to think about money and investing to build wealth, how to avoid debt, how to simplify the world of retirement accounts, and much more. 00:01:00 He also talks about what the stock market really is and how it really works, how to invest in a raging bull or bear market and ways to implement financial strategies. Here is JL Collins' "The Simple Path to Wealth." JL COLLINS: Thank you. RACHEL SMITH: Welcome. Welcome. So, my first question for you, the title of your book is "The Simple Path to Wealth." JL COLLINS: It is. RACHEL SMITH: And it's a road map to financial independence and a rich, free life. So, what does wealth mean to you? And how is it tied to a free life? JL COLLINS: Well, I suppose we can look at that in two different directions.
    [Show full text]
  • Learning React Modern Patterns for Developing React Apps
    Second Edition Learning React Modern Patterns for Developing React Apps Alex Banks & Eve Porcello SECOND EDITION Learning React Modern Patterns for Developing React Apps Alex Banks and Eve Porcello Beijing Boston Farnham Sebastopol Tokyo Learning React by Alex Banks and Eve Porcello Copyright © 2020 Alex Banks and Eve Porcello. All rights reserved. Printed in the United States of America. Published by O’Reilly Media, Inc., 1005 Gravenstein Highway North, Sebastopol, CA 95472. O’Reilly books may be purchased for educational, business, or sales promotional use. Online editions are also available for most titles (http://oreilly.com). For more information, contact our corporate/institutional sales department: 800-998-9938 or [email protected]. Acquisitions Editor: Jennifer Pollock Indexer: Judith McConville Development Editor: Angela Rufino Interior Designer: David Futato Production Editor: Kristen Brown Cover Designer: Karen Montgomery Copyeditor: Holly Bauer Forsyth Illustrator: Rebecca Demarest Proofreader: Abby Wheeler May 2017: First Edition June 2020: Second Edition Revision History for the Second Edition 2020-06-12: First Release See http://oreilly.com/catalog/errata.csp?isbn=9781492051725 for release details. The O’Reilly logo is a registered trademark of O’Reilly Media, Inc. Learning React, the cover image, and related trade dress are trademarks of O’Reilly Media, Inc. The views expressed in this work are those of the authors, and do not represent the publisher’s views. While the publisher and the authors have used good faith efforts to ensure that the information and instructions contained in this work are accurate, the publisher and the authors disclaim all responsibility for errors or omissions, including without limitation responsibility for damages resulting from the use of or reliance on this work.
    [Show full text]