mobixplat/androidxplat.txt

Fri, 13 Jan 2012 19:15:33 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Fri, 13 Jan 2012 19:15:33 +0100
changeset 10
8b5e50e4968e
child 12
3136dcf5275b
permissions
-rw-r--r--

Write initial draft of concepts for upcoming mobile computing lecture series.

michael@10 1 Mobile Cross-platform Development Frameworks
michael@10 2 Type: Lecture/presentation
michael@10 3 Category: Engineering/development
michael@10 4 Topic: Networking/Internals/Implementation choices
michael@10 5 Audience: Android application developers
michael@10 6 Duration: 30 minute presentation
michael@10 7
michael@10 8 Author and Speaker
michael@10 9 ------------------
michael@10 10 Michael Schloh von Bennewitz
michael@10 11 Software Engineer, Europalab Networks
michael@10 12 web: http://michael.schloh.com/
michael@10 13 email: michael@schloh.com
michael@10 14 isdn: +49(89)44239885
michael@10 15 voip: sips:michael@schloh.com
michael@10 16 xmpp: MSvB
michael@10 17
michael@10 18 Biography
michael@10 19 ---------
michael@10 20 Michael Schloh von Bennewitz is a computer scientist specializing in
michael@10 21 network software, mobile computing, and client server design. He speaks
michael@10 22 at technical events every year. In 2011 he gave two presentations on
michael@10 23 MeeGo to the Opensource Treffen as well as presentations on LDAP
michael@10 24 integration strategies and the Qt library build process to fellow
michael@10 25 developers at the Nokia Developer Summit in Berlin. His speaking style
michael@10 26 is humerous, using gestures and good eye contact. He walks about the
michael@10 27 room and writes presentations in SVG or HTML5.
michael@10 28
michael@10 29 Abstract
michael@10 30 --------
michael@10 31 With cross-platform mobile development frameworks like jQuery, Dojo, and
michael@10 32 Sencha, developers enjoy the ability to write an application for several
michael@10 33 APIs. Particularly of benefit to Android developers is the smooth
michael@10 34 transition between API versions as well as reduced porting work.
michael@10 35
michael@10 36 Many developers write Java code strictly for the Android OS. It may
michael@10 37 surprise them to know that for many applications a similar workload
michael@10 38 writing HTML code results in a functionally similar APK package.
michael@10 39 Concrete benefits are considered as well as limits to this strategy.
michael@10 40 Requirements, implementation choices, and distribution using Phonegap
michael@10 41 are considered.
michael@10 42
michael@10 43 The audience consists of developers familiar with the traditional
michael@10 44 development lifecycle of Android applications. Attendants expect a
michael@10 45 clearly defined workflow of using trendy cross-platform frameworks and
michael@10 46 pro and contra criteria for considering them along with abstract proof
michael@10 47 (provided in a demonstration) of concept.
michael@10 48
michael@10 49 The Android community stands to benefit from being informed about
michael@10 50 current trends in cross-platform mobile development frameworks as many
michael@10 51 developers suffer the stumbling block of porting and supporting
michael@10 52 applications.
michael@10 53
michael@10 54 Please see the file attachment for a lecture outline.
michael@10 55
michael@10 56 Main chapters (15 minutes)
michael@10 57 --------------------------
michael@10 58 Concepts
michael@10 59 Advantage of cross platform development
michael@10 60 Advantage of (mostly) standardized API
michael@10 61 Work flow of platform dependent development
michael@10 62 Work flow of cross platform development
michael@10 63 Architecture of HTML5/CSS3/Javascript app
michael@10 64 Supporting of runtime processes
michael@10 65
michael@10 66 Frameworks
michael@10 67 JQuery Mobile [1]
michael@10 68 Sencha Touch [2]
michael@10 69 Dojo Toolkit [3]
michael@10 70 Phonegap Toolkit [4]
michael@10 71 Common requirements
michael@10 72
michael@10 73 Constraints
michael@10 74 Performance
michael@10 75 Hardware
michael@10 76 API
michael@10 77
michael@10 78 Case studies
michael@10 79 Well known mobile apps
michael@10 80
michael@10 81 Demonstration (10 minutes)
michael@10 82 --------------------------
michael@10 83 Hello world in HTML5 for browser
michael@10 84 Package to app manually
michael@10 85 Use Phonegap to prepare distribution
michael@10 86 Extend hello world to process user input
michael@10 87 Using jQuery Mobile
michael@10 88 Using Sencha Touch
michael@10 89 Using Dojo Toolkit
michael@10 90 Automated repackaging
michael@10 91 Submit to market
michael@10 92
michael@10 93 Questions (5 minutes)
michael@10 94 ---------------------
michael@10 95 Anticipated questions
michael@10 96 What is a general rule when considering cross-platform frameworks?
michael@10 97 Where do you find a list of supported features for a given framework?
michael@10 98
michael@10 99 Relevant jokes about...
michael@10 100 -----------------------
michael@10 101 Android and Linux
michael@10 102 Engineers and developers
michael@10 103
michael@10 104 Glossary
michael@10 105 --------
michael@10 106 Application Programming Interface (API)
michael@10 107 Software Development Kit (SDK)
michael@10 108 Framework
michael@10 109 World Wide Web Consortium (W3C)
michael@10 110 Structured Vector Graphics (SVG)
michael@10 111 Hypertext Markup Language (HTML)
michael@10 112 Hypertext Transfer Protocol (HTTP)
michael@10 113 Cascading Stylesheets (CSS)
michael@10 114 JavaScript - Casual name for the ECMAScript language, prevelant in
michael@10 115 client-side web applications and standardized in ISO/IEC 16262.
michael@10 116 International Organization for Standards (ISO)
michael@10 117 Ecma International
michael@10 118
michael@10 119 Errata
michael@10 120 ------
michael@10 121 Errata here.
michael@10 122
michael@10 123 Lecture materials
michael@10 124 -----------------
michael@10 125 This lecture is developed on a public source code revision management
michael@10 126 system [6]. It is (or will be) published on a public file server [7].
michael@10 127
michael@10 128 Technical requirements
michael@10 129 ----------------------
michael@10 130 A WLAN connection (for remote slide advancement,) internet connectivity
michael@10 131 (for demonstration purposes,) and a whiteboard (to sketch diagrams) are
michael@10 132 needed for this presentation.
michael@10 133
michael@10 134 Links and notes
michael@10 135 ---------------
michael@10 136 [1] http://jquerymobile.com/
michael@10 137 [2] http://www.sencha.com/products/touch/
michael@10 138 [3] http://dojotoolkit.org/
michael@10 139 [4] http://phonegap.com/
michael@10 140 [5] http://scm.europalab.com/lectures/
michael@10 141 [6] ftp://ftp.europalab.com/pub/doc/lect/

mercurial