Phonegap-Beginners-Guide.Pdf

Total Page:16

File Type:pdf, Size:1020Kb

Phonegap-Beginners-Guide.Pdf PhoneGap Beginner's Guide Build cross-platform mobile applications with the PhoneGap open source development framework Andrew Lunny BIRMINGHAM - MUMBAI PhoneGap Beginner's Guide Copyright © 2011 Packt Publishing All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews. Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author, nor Packt Publishing, and its dealers and distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book. Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information. First published: September 2011 Production Reference: 1160911 Published by Packt Publishing Ltd. Livery Place 35 Livery Street Birmingham B3 2PB, UK. ISBN 978-1-849515-36-8 www.packtpub.com Cover Image by Asher Wishkerman ([email protected]) Credits Author Project Coordinator Andrew Lunny Joel Goveya Reviewers Proofreader Paul McCrodden Aaron Nash Andrey Rebrov Indexer Acquisition Editor Hemangini Bari Usha Iyer Production Coordinator Development Editor Aparna Bhagat Meeta Rajani Cover Work Technical Editors Aparna Bhagat Pallavi Kachare Priyanka Shah About the Author Andrew Lunny is a software developer based in Vancouver, BC, where he is "Chief N00b" at Nitobi Software. He has worked at Nitobi for four years, since a brutal shark attack cut short his promising career as a surfer. He is the lead developer and all-around fall guy for the PhoneGap Build web service, a member of the PhoneGap team, and has over 10 years' experience with PhoneGap and related technologies. He is fond of Ruby, JavaScript, Unix, Git, and the Internet. Nitobi is a software company run by Andre Charland, Dave Johnson, and Brian Leroux. They specialize in cross-platform mobile development and design, and sponsor the PhoneGap open source project. In his spare time, Andrew enjoys cycling, running, walking, and jumping. He has two unrelated degrees from the University of British Columbia. Thanks to Tammy, to my parents, and to Hugo and Natasha for putting up with me while I procrastinated along. Thanks to Michael Brooks for running a Windows VM so I did not have to, and thanks to all of my other co-workers for working on such a great open source project. Thank you to everyone who follows me on Twitter. Finally, thanks to all my old surfing buddies—Skip, Dingo, even Jelly! I'll get back on the waves with you guys some time, I promise. About the Reviewers Paul McCrodden is a Digital Media Developer from a small country in the west of Europe known for its potatoes and leprechauns. He is a chartered engineer graduating with a Bachelor of Engineering in Digital Media from Dublin City University and a Master of Science in Multimedia Systems from Trinity College Dublin. With this knowledge he aims to merge the technical with the creative when it comes to digital media production. Paul has previously worked for global companies such as Ericsson and Bearingpoint Consulting along with various medium to small businesses on contract. He recently gave up the 9 - 5 to work 9 - 9 for his own company, which provides digital media consulting and a range of services including, web solutions, mobile application development, and other multimedia. For more information go towww.paulmccrodden.com . I would like to thank my family, friends, and last but by no means least, my girlfriend Claire for her support and patience. A huge thanks to the Drupal community for all their hard work and the Wordpress and PhoneGap communities for theirs. Lastly, a thank you to Packt for asking me to review the book; it has been a great all round learning experience. Andrey Rebrov, 23, has big plans for his future. He started as a software developer in Magenta Technology—a big British software company specialized in Enterprise Java Solutions, and worked there for more than three years. Now, he is working on Luxoft as a senior Java web developer. In February 2011 he graduated from the IT Department of Samara State Aerospace University with an honors degree. He is also working with different web technologies—JavaScript (ExtJS, jQuery), HTML/ HTML5, CSS/CSS3, and has some experience in Adobe Flex. He is also interested in mobile platforms, and developing web and native apps. Exploring PhoneGap, jQuery Mobile, and Sencha Touch, he has created some plugins for jQuery Mobile. In his work he uses Agile methodologies such as Scrum and Kanban, and is interested in innovation and Agile games. At the moment he is working on innovation games popularization in Russia and Russian communities. He also uses GTD methodologies, which help him in his work and daily routine. And, of course, it helps him with blogging. In his blog he writes about interesting technologies, shares his developer experience, and translates some articles from English into Russian. I would like to thank Kartikey Pandey who asked me to review this book and Joel Goveya who helped me throughout the review. I would like to thank my parents for providing me with the opportunity to be where I am. Without them, none of this would even be possible. You have always been my biggest support and I appreciate that. And the last thanks go to my girlfriend, Tatyana, who always gives me strength and hope. www.PacktPub.com Support files, eBooks, discount offers and more You might want to visit www.PacktPub.com for support files and downloads related to your book. Did you know that Packt offers eBook versions of every book published, with PDF and ePub files available? You can upgrade to the eBook version at www.PacktPub.com and as a print book customer, you are entitled to a discount on the eBook copy. Get in touch with us at [email protected] for more details. At www.PacktPub.com, you can also read a collection of free technical articles, sign up for a range of free newsletters and receive exclusive discounts and offers on Packt books and eBooks. http://PacktLib.PacktPub.com Do you need instant solutions to your IT questions? PacktLib is Packt's online digital book library. Here, you can access, read and search across Packt's entire library of books. Why Subscribe? Fully searchable across every book published by Packt Copy & paste, print and bookmark content On demand and accessible via web browser Free Access for Packt account holders If you have an account with Packt at www.PacktPub.com, you can use this to access PacktLib today and view nine entirely free books. Simply use your login credentials for immediate access. Table of Contents Preface 1 Chapter 1: Installing PhoneGap 7 Operating systems 7 Dependencies 8 Getting started with iOS 9 Time for action – Getting an app running on the simulator 9 Installing PhoneGap-iPhone 12 Time for action – Hello World with PhoneGap-iPhone 12 Getting started with Android 17 A note on development environments 18 Time for action – Getting the SDK running 18 PhoneGap Android 22 Time for action – Hello World on PhoneGap Android 23 What's in a PhoneGap Android application, anyway? 25 Getting started with BlackBerry web works 26 Time for action – Your first PhoneGap BlackBerry app 27 Code signing for BlackBerry 33 Summary 34 Chapter 2: Building and Debugging on Multiple Platforms 35 Designing with desktop browsers 36 WebKit 36 Developing our first application: You Are The Best 36 Time for action – Initial design and functionality 37 Our workflow 41 Our styles 41 Unobtrusiveness 41 Width and height 42 -webkit-border-radius 42 Table of Contents Our scripts 43 Unobtrusiveness 44 addEventListener 44 DOMContentLoaded 45 Using the web inspector 46 Accessing web inspector 46 Time for action – Simple logging and error checking 47 Moving to native platforms 52 Time for action – You Are The Best for iPhone 52 <meta name="viewport"> 57 phonegap.js 57 deviceready 58 Summary 59 Chapter 3: Mobile Web to Mobile Applications 61 Implementing web server roles 61 Time for action – Implementing LocalStorage 62 Other storage options 68 Web SQL 68 Indexed DB 68 View templating 69 Time for action – Food detail view 70 Accessing remote resources 76 Cross-origin policy 76 Time for action – Talking about food 77 Accessing remote resources 84 Parsing remote data 85 Event delegation 86 Sleight: The PhoneGap development server 88 Summary 89 Chapter 4: Managing a Cross-Platform Codebase 91 Inherent differences between platforms 91 Using a single codebase 92 Time for action - Detection and fallbacks 93 User agent sniffing 102 Feature detection 104 Media queries 106 Preprocessing code 109 Summary 110 Chapter 5: HTML5 APIs and Mobile JavaScript 111 Mobile JavaScript 111 XUI 112 [ ii ] Table of Contents Time for action – Downloading, building, and using XUI 112 Why not jQuery? 121 HTML5 123 Media elements 123 Time for action – My dinner with PhoneGap 124 Media events and attributes 128 The audio element 129 The canvas element 130 Time for action: Dinner dashboard 131 The canvas API 136 A note on performance 137 What else is in HTML5? 138 Summary 139 Chapter 6: CSS3: Transitions, Transforms, and Animation 141 Translate with transitions 141 Time for
Recommended publications
  • Amazon Silk Developer Guide Amazon Silk Developer Guide
    Amazon Silk Developer Guide Amazon Silk Developer Guide Amazon Silk: Developer Guide Copyright © 2015 Amazon Web Services, Inc. and/or its affiliates. All rights reserved. The following are trademarks of Amazon Web Services, Inc.: Amazon, Amazon Web Services Design, AWS, Amazon CloudFront, AWS CloudTrail, AWS CodeDeploy, Amazon Cognito, Amazon DevPay, DynamoDB, ElastiCache, Amazon EC2, Amazon Elastic Compute Cloud, Amazon Glacier, Amazon Kinesis, Kindle, Kindle Fire, AWS Marketplace Design, Mechanical Turk, Amazon Redshift, Amazon Route 53, Amazon S3, Amazon VPC, and Amazon WorkDocs. In addition, Amazon.com graphics, logos, page headers, button icons, scripts, and service names are trademarks, or trade dress of Amazon in the U.S. and/or other countries. Amazon©s trademarks and trade dress may not be used in connection with any product or service that is not Amazon©s, in any manner that is likely to cause confusion among customers, or in any manner that disparages or discredits Amazon. All other trademarks not owned by Amazon are the property of their respective owners, who may or may not be affiliated with, connected to, or sponsored by Amazon. AWS documentation posted on the Alpha server is for internal testing and review purposes only. It is not intended for external customers. Amazon Silk Developer Guide Table of Contents What Is Amazon Silk? .................................................................................................................... 1 Split Browser Architecture ......................................................................................................
    [Show full text]
  • Building Blocks: Utilizing Component-Based Software Engineering in Developing Cross-Platform Mobile Applications
    KTH Computer Science and Communication Building Blocks: Utilizing Component-Based Software Engineering in Developing Cross-Platform Mobile Applications Master of Science Thesis Interactive Media Technology at KTH Royal Institute of Technology By Oskar Andersson ([email protected]) Supervisor at KTH: Vasiliki Tsaknaki Supervisors at Ericsson Research: Michal Koziuk & Johan Sjöberg Acknowledgements I would like to thank Stefan Ålund and Ericsson Research for the opportunity to work with this thesis. In particular, I have to thank my supervisors, Michal Koziuk & Johan Sjöberg, for their help and support during my time there. I would also like to thank my supervisor at KTH, Vasiliki Tsaknaki, for her constructive criticism and valuable feedback. Thank you! Oskar Andersson October 3 2014, Stockholm 2 Abstract Contemporary approaches to cross-platform mobile application development, such as hybrid apps from PhoneGap and generated native apps from Xamarin, show promise in reducing development time towards Android, iOS and other platforms. At the same time, studies show that there are various problems associated with these approaches, including suffering user experiences and codebases that are difficult to maintain and test properly. In this thesis, a novel prototype framework called Building Blocks was developed with the purpose of investigating the feasibility of utilizing component-based software engineering in solving this problem. The prototype was developed towards Android along with a web interface that allowed users to assemble an Android app using software components. The report concludes that component-based software engineering can be – and already is – utilized successfully to improve cross-platform mobile app development with special regards to user experience. Qualitative data indicate that Building Blocks as a concept is flexible and shows promise for mobile app development in which functionality is often reused, such as enterprise apps.
    [Show full text]
  • Tests of Graphics Rendering in Browsers
    3 Tests of Graphics Rendering in Browsers JAAK HENNO Tallinn University of Technology HANNU JAAKKOLA, Tampere University of Technology, Pori Department JUKKA MÄKELÄ, University of Lapland, Rovaniemi, Finland Web browsers have become one of the most commonly used software and are important communication tool to access our data- driven, increasingly visual Internet. Browser graphics speed is essential for many commercial web applications – e-commerce sites, web portals, content management systems (CMS’s), therefore web developers should well understand their possibilities. Browsers can be seen as multi-input (HTML-text, images, CSS, Scripts) multi-output (code for processor, graphics card, sound system) translators, but little is known about their 'internal life', especially how they render graphics. Browsers interpreting HTML5 documents have two graphic modes: Retained Mode (images defined in HTML text and animated with CSS) and Immediate Mode (images created on canvas and animated with JavaScript). In order to understand differences of these modes in animation rendering speed were created nine different versions of an animation of Lunar Eclipse which were tested in six major PC and Android mobile phone browsers. Results indicate, that there are no significant differences in major browsers except that IE and Edge (still) lag behind in implementing novel graphics/video formats and that in all tested browsers Retained Mode is at least two times quicker than Immediate Mode. Categories and Subject Descriptors: I.3.6 [Computer graphics]: Methodology and Techniques; I.3.4 [Computer graphics] Graphics Utilities General Terms: Browser, Visualization, Layout Engine, Rendering Engine, Retained mode, Immediate Mode Additional Key Words and Phrases: HTML5, CSS3, JavaScript, SVG, rendering 1 INTRODUCTION The first program what (usually) everyone opens when starting a computer, tablet or internet-enabled phone is a browser.
    [Show full text]
  • Readme OSS Weather Extension Module for Desigocc
    Smart Infrastructure Note to Resellers: Please pass on this document to your customer to avoid license infringements. Third-Party Software Information for Weather Extension Module for Desigo CC, 5.0 This product, solution or service ("Product") contains third-party software components listed in this document. These components are Open Source Software licensed under a license approved by the Open Source Initiative (www.opensource.org) or similar licenses as determined by SIEMENS ("OSS") and/or commercial or freeware software components. With respect to the OSS components, the applicable OSS license conditions prevail over any other terms and conditions covering the Product. The OSS portions of this Product are provided royalty-free and can be used at no charge. If SIEMENS has combined or linked certain components of the Product with/to OSS components licensed under the GNU LGPL version 2 or later as per the definition of the applicable license, and if use of the corresponding object file is not unrestricted ("LGPL Licensed Module", whereas the LGPL Licensed Module and the components that the LGPL Licensed Module is combined with or linked to is the "Combined Product"), the following additional rights apply, if the relevant LGPL license criteria are met: (i) you are entitled to modify the Combined Product for your own use, including but not limited to the right to modify the Combined Product to relink modified versions of the LGPL Licensed Module, and (ii) you may reverse-engineer the Combined Product, but only to debug your modifications. The modification right does not include the right to distribute such modifications and you shall maintain in confidence any information resulting from such reverse-engineering of a Combined Product.
    [Show full text]
  • Controlpoint 5.6.1 Open Source and Third-Party Software License
    ControlPoint Software Version 5.6.1 Open Source and Third-Party Software License Agreements Document Release Date: December 2018 Software Release Date: December 2018 Open Source and Third-Party Software License Agreements Legal notices Copyright notice © Copyright 2015-2018 Micro Focus or one of its affiliates. The only warranties for products and services of Micro Focus and its affiliates and licensors (“Micro Focus”) are set forth in the express warranty statements accompanying such products and services. Nothing herein should be construed as constituting an additional warranty. Micro Focus shall not be liable for technical or editorial errors or omissions contained herein. The information contained herein is subject to change without notice. Documentation updates The title page of this document contains the following identifying information: l Software Version number, which indicates the software version. l Document Release Date, which changes each time the document is updated. l Software Release Date, which indicates the release date of this version of the software. You can check for more recent versions of a document through the MySupport portal. Many areas of the portal, including the one for documentation, require you to sign in with a Software Passport. If you need a Passport, you can create one when prompted to sign in. Additionally, if you subscribe to the appropriate product support service, you will receive new or updated editions of documentation. Contact your Micro Focus sales representative for details. Support Visit the MySupport portal to access contact information and details about the products, services, and support that Micro Focus offers. This portal also provides customer self-solve capabilities.
    [Show full text]
  • Webgl: 3D Application Development
    WebGL: 3D application development This chapter covers ■ Developing a WebGL engine ■ Communicating with a graphics card ■ Creating 3D shapes Web developers have been trying for years to overcome 3D limitations to create bet- ter interactive games, education tools, and infographics. In the past, plug-ins such as Unity, Flash, and Quicksilver created Google Maps and online 3D explorations programs. Plug-ins can be useful, but they leave you at the browser vendor’s mercy for updates, usually lack hardware acceleration, and are often proprietary. To solve these issues, the Khronos Group created a Web Graphics Library (WebGL). WebGL, as mentioned in chapter 1, gives you the ability to create awesome 3D applications like X-Wing, shown in figure 9.1, without plug-ins. Several developers have even used WebGL to make drawing interfaces that create 2D images and rotate those creations in 3D. WARNING! You should be very familiar with Canvas and JavaScript object- oriented programming (OOP) before working through this chapter’s sam- ple application. If you aren’t, please go through chapter 6 on 2D Canvas first, because the concepts we cover here build on chapter 6’s application, mainly because WebGL builds on top of the Canvas API. 267 268 CHAPTER 9 WebGL: 3D application development Figure 9.1 A simple WebGL application called X-Wing created by OutsideOfSociety. He worked on the popular WebGL project http://ro.me. You could learn basic 3D programming elsewhere, but we’ve provided it all for you— all in one place—along with thorough explanations of 3D programming concepts, mathematics, diagrams, and more.
    [Show full text]
  • Sqamia2017 Henno Jaakkola
    1 Tests of Graphic Rendering in Browsers JAAK HENNO Tallinn University of Technology HANNU JAAKKOLA, Tampere University of Technology, Pori Department JUKKA MÄKELÄ, University of Lapland, Rovaniemi, Finland Web browsers have become one of most commonly used software, important communication tool to access our data-driven, increasingly visual Internet-based ecosystem. Browsers can be seen as multi-input (html-text, images, CSS, Scripts) multi- output (code for processor, graphics card, sound system) translators, but little is known about their 'internal life', especially how they produce graphics '. For creating visual images browsers use two modes: Retained Mode and Immediate Mode. In order to understand differences in these modes, especially in differences in speed, we created nine different versions for animation of Lunar Eclipse on 20.03.2015 and tested them in six major PC and Android mobile phone browsers. Results indicate, that there are no significant differences in major browsers except that IE and Edge (still) lag behind in implementing novel graphics/video formats and that Retained Mode (images inserted in html text or animated with CSS3) is at least twice quicker than Immediate Mode (Javascript animation on Canvas) in all tested browsers. Categories and Subject Descriptors: • Information systems~Browsers • Computing methodologies~Computer graphics • Computing methodologies~Graphics file formats General Terms: Browser, Visualization, Browser's Layout Engine, Browser's Rendering Engine, Retained mode, Immediate Mode Additional Key Words and Phrases: HTML5, CSS3, JavaScript 1 INTRODUCTION The first program what (nearly) everyone open when sitting behind a computer, starting a tablet or internet-enabled phone is browser. Browsers have become the most common communication/interaction tool for all Internet-connected Mankind - more than half of whole Mankind.
    [Show full text]
  • How to Enable Javascript in Your Browser and Why
    How to enable JavaScript in your browser and why EN HR DE NL ES PT IT NO RU FR CZ JA KO HU TH PH TR ID SK PL How to enable JavaScript in your browser Nowadays almost all web pages contain JavaScript, a scripting programming language that runs on visitor's web browser. It makes web pages functional for specific purposes and if disabled for some reason, the content or the functionality of the web page can be limited or unavailable. Here you can find instructions on how to enable (activate) JavaScript in five most commonly used browsers. Internet Explorer Mozilla Firefox Google Chrome Opera Apple Safari Javascript is enabled in your web browser. If you disable JavaScript, this text will change. Instructions for web developers You may want to consider linking to this site, to educate any script-disabled users on how to enable JavaScript in five most commonly used browsers. You are free to use the code below and modify it according to your needs. <noscript> For full functionality of this site it is necessary to enable JavaScript. Here are the <a href="http://www.enable-javascript.com/" target="_blank"> instructions how to enable JavaScript in your web browser</a>. http://enable-javascript.com/[3/11/2015 11:29:50 AM] How to enable JavaScript in your browser and why </noscript> On enable-javascript.com we optimize the script-disabled user experience as much as we can: The instructions for your browser are put at the top of the page All the images are inlined, full-size, for easy perusing This developer-centric message is out of the way.
    [Show full text]
  • Fruit of the Accessibility Tree Presentation Slides (PDF)
    The Fruit of the Accessibility Tree 1 1. A little background 2. The browser path Agenda 3. The creation of the tree 4. Looking at the accessibility tree 5. Bring it on home 2 Why should we care about this junk “A firm grasp of the technology is paramount to making informed decisions about accessible design.” - Léonie Watson “As a web developer, learning the internals of browser operations helps you make better decisions and know the justifications behind development best practices.” - Paul Irish, Chrome Developer Relations 3 A little background 4 When everything was text • Personal computers originally relied on text based operating systems (e.g. DOS aka Disk Operating System). • Assistive technology could access the text directly from the screen. Image by Mega super editorman / CC BY (https://creativecommons.org/licenses/by/4.0) 5 Then came Graphic User Interfaces (GUI) • Graphical Interfaces for operating systems become popular (e.g. Windows, Apple Macintosh) “draw” information on the screen. • Assistive technology had to rely on heuristics to understand what was being presented to users. • Accessibility Application Programming Interfaces (APIs) were introduced to operating systems to more reliably and accurately pass information to assistive technologies. • As new browsers were introduced in the mid 2000’s they began integrating with the Accessibility APIs of different operating systems. 6 The Accessibility APIs Windows: Apple: Linux: • Microsoft Active • NSAccessibility (AXAPI) • Accessibility Toolkit (ATK) Accessibility (MSAA) • Assistive Technology Service • IAccessible2 (IA2) Provider Interface (ATK-SPI) • UI Automation (UIA) 7 Different paths: the browser 8 Browser breakdown • Browser requests HTML/CSS/JavaScript resources • Browser’s render engine parses the HTML/CSS/JavaScript and creates the Document Object Model (DOM) from the HTML and CSS Object Model (CSSOM) from the CSS.
    [Show full text]
  • Peter Gasston — «The Modern
    AA GUIDEGUIDE TOTO MODERNMODERN WEBWEB DEVELOPMENTDEVELOPMENT THE MODERN WEB THE MODERN WEB THETHE MODERNMODERN WEBWEB MULTI-DEVICE WEB DEVELOPMENT Today’s web technologies are evolving at near–light speed, • Incorporate cross-platform audio and video without WITH HTML5, CSS3, AND JAVASCRIPT bringing the promise of a seamless Internet ever closer to using troublesome plug-ins reality. When users can browse the Web on a three-inch • Make images and graphics scalable on high-resolution phone screen as easily as on a fifty-inch HDTV, what’s a devices with SVG developer to do? • Use powerful HTML5 elements to design better forms Peter Gasston’s The Modern Web will guide you through PETER GASSTON the latest and most important tools of device-agnostic web Turn outdated websites into flexible, user-friendly ones development, including HTML5, CSS3, and JavaScript. that take full advantage of the unique capabilities of any His plain-English explanations and practical examples device or browser. With the help of The Modern Web, emphasize the techniques, principles, and practices that you’ll be ready to navigate the front lines of device- you’ll need to easily transcend individual browser quirks independent development. and stay relevant as these technologies are updated. Learn how to: A B O U T T H E AUTHOR • Plan your content so that it displays fluidly across Peter Gasston has been a web developer for more than multiple devices 12 years in both agency and corporate settings. The author of The Book of CSS3, Gasston has also been published • Design websites to interact with devices using the most in Smashing Magazine, A List Apart, and .net magazine.
    [Show full text]
  • Your Roadmap to Success... 14-June-2018 Dan Mcghan Developer Advocate @ Oracle
    Getting Started: Your Roadmap to Success... 14-June-2018 Dan McGhan Developer Advocate @ Oracle If you were to give an APEX developer two recommendations for getting starting with JavaScript, what would they be? Read up on jQuery Learn about APEX JS APIs Peter Raganitsch I would direct them to my JS/CSS talk for PL/SQL developers ! Jorge Rimblas Also JSFiddle for The thing that helped me quick prototyping, best with getting started was looking at other a good Editor Plugin which peoples samples, etc helps with Intellisense, Auto- complete, Formatting, etc... John Scott I have had good success with And my favorite JS guru on Pluralsight’s Node.js course YouTube: FunFunFunction Christoph Ruepprich Websites - MDN web docs (for reference) Books - JavaScript: The Definitive Guide (still waiting for the 7th edition) Other than that... Web page inspection tools are great for learning. :-) Adrian Png One thing I would highly recommend is JavaScript the Good Parts by Douglas Crockford Also his web site John Snyders Learn "JavaScript" not jQuery Choose a sample app topic first. Understand what it that interests you (movie means to manipulate the database, car details, etc), DOM structure usinG real and try to build that same JavaScript before you use a sample app in multiple shortcut like jQuery. It will different serve you better down the frameworks/toolkits/libraries road to know what is GoinG on as you learn. behind the scenes. John Brock “JB” Even at your earliest stages of writing code, add Know your audience. From a comments about what you client perspective, what are trying to with a section of browsers are you going to code.
    [Show full text]
  • The Problem with Native Javascript Apis External Javascript Libraries Still Matter
    The Problem with Native JavaScript APIs External JavaScript Libraries Still Matter Nicholas C. Zakas www.allitebooks.com JavaScript Starter Kit The Tools You Need to Get Started with JavaScript “JavaScript is now a language every developer should know.” – Mike Loukides, Vice President of Content Strategy for O’Reilly Media Buy any two titles Or, buy them all for and get the 3rd Free. just $149 / 60% off. Use discount code: OPC10 Use discount code: JSSKT www.allitebooks.com The Problem with Native JavaScript APIs Nicholas C. Zakas Beijing • Cambridge • Farnham • Köln • Sebastopol • Tokyo www.allitebooks.com The Problem with Native JavaScript APIs by Nicholas C. Zakas Copyright © 2012 O’Reilly Media. 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://my.safaribookson line.com). For more information, contact our corporate/institutional sales depart- ment: 800-998-9938 or [email protected]. Editor: Mac Slocum Cover Designer: Karen Montgomery Production Editor: Melanie Yarbrough Interior Designer: David Futato Illustrator: Robert Romano July 2012: First Edition. Revision History for the First Edition: 2012-07-20 First release See http://oreilly.com/catalog/errata.csp?isbn=9781449339951 for release details. Nutshell Handbook, the Nutshell Handbook logo, and the O’Reilly logo are regis- tered trademarks of O’Reilly Media, Inc. The Problem with Native JavaScript APIs and related trade dress are trademarks of O’Reilly Media, Inc. Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks.
    [Show full text]