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