-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathread.me
More file actions
146 lines (82 loc) · 10.6 KB
/
read.me
File metadata and controls
146 lines (82 loc) · 10.6 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
Mobile JS Frameworks
-Advantages, Disadvantages, Browser Support
Mobile js frameworks have very big disadvantages about performance. Although mobile devices are getting
faster by day , they are still not as fast as desktop computers. This makes a bad user experience.
* 1) Rich user experience (native wins)
85% of mobile professionals in a March, 2013 Compuware survey preferred mobile apps over mobile websites. One of the main reasons was the richer experience users get with native apps. Features like VR, NFC, and passport simply aren’t available in HTML. Where HTML has 30-50 native device capabilities open to it, native developers have access to 6,000-7,000.
* 2) Performance (native wins)
When it comes to both loading and rendering, whether you have good, weak, or terrible internet access, native is always faster. Click on a calendar event in a native app, for example, and it opens instantly. The time it takes to do the same in an HTML app typically drives people nuts.
* 3) Monetization for developers (native wins)
Recent numbers from Canalys report that native app developers’ combined income in Q1 2013 was $2.2 billion. In contrast, the monetization available to developers building HTML5 apps is essentially zero. It’s pretty obvious, then, that financially ambitious app owners need a massive incentive to move out of the app store fold.
* 4) Cross platform development costs (HTML wins, but by less than you’d think)
This is usually seen as a big point in HTML’s favor. The line is that you ‘write once, run anywhere,’ and that’s true, but only up to a point. You certainly have to factor in costs for going native for multiple OSs, although solutions like Appcelerator will help reduce those costs significantly. But they are not zero with HTML5, either, thanks to the next point of comparison: fragmentation.
* 5) Fragmentation challenges (a wash)
If it’s a challenge to develop apps for multiple platforms (and for different versions of those platforms), even with Appcelerator’s help, it’s not the case that developers writing for the mobile web are writing simply for one HTML5. There are at least 15 mobile browsers in existence, each available in different versions and each supporting different levels of HTML. So there’s a fragmentation challenge with both. On this measure, the two are pretty much a wash.
* 6) Availability of programming expertise (HTML wins)
There’s no debate here. There are millions of HTML developers out there who will look at HTML5 and say, ‘eureka, I can now develop mobile apps.’ Objective-C, meanwhile, and to some degree Java, are much harder to learn, and people who know them are harder to find and cost more to hire. Again, solutions like Appcelerator’s address this by using JavaScript, a language that pretty much every web developer knows well, but the overall comparison still favors HTML5.
* 7) Immediate updates & distribution control (HTML wins)
Mobile is all about constantly innovating. Because they don’t sit on the device, HTML5 apps can be instantly updated. In contrast, having to go an app store for an update remains a barrier to offering the best, most up-to-date experience. A win, then, for HTML.
* 8) Timely access to new OS innovations (native wins big)
Apple and Google offer, on average, 1-3 updates a year that offer major new capabilities. When they are making so much money from their app businesses (see #3 above), they have every incentive to coral those new capabilities within their native OSs and zero incentive to offer them in HTML. Meanwhile, it takes years for the HTML consortium to ratify new standards. At the rate at which device manufacturers are innovating, there’s no way that the HTML consortium can move swiftly enough to compete.
* 9) Security (native wins big)
People are increasingly worried about security, especially as mobile moves ever further into the enterprise and, frankly, there is no way that anyone could say that HTML is more secure than a native app. Native clearly wins thanks to:
- the security of the source code of itself; browser source code is open for all to see, and to then work around.
- the security of data at rest on the device; on a native app, it’s completely secure. In HTML, the browser is typically not secure and as a result exposes the data it’s accessing within its caches.
- the security of data in transit; when using HTML, you are pretty much restricted to using SSL. VPNs are just too slow. With native apps, you can also run VPNs and other encrypted solutions, without ruining performance.
- URL security vulnerabilities; these are unique to web applications and beloved by hackers. Native apps simply don’t have them, so hackers can’t get into native apps in the same way.
1. jQuery Mobile
jQuery Mobile
jQuery Mobile, a framework that will help you rapidly and confidently develop mobile app user interfaces across popular mobile device platforms like iOS and Android, is perhaps the most popular project out there.
The framework boasts a lightweight code base (weighing in at 20KB when minified and gzipped) and a huge bevy of standard user interface elements that mobile device users are accustomed to, such as switches and sliders.
See jQuery Mobile in action by going to its demo page (it doubles as the framework’s official documentation).
If jQuery isn’t your thing, check out MooTools Mobile, a MooTools plugin by MooTools core developer Christoph Pojer and Dojo Mobile, which leverages the Dojo API to help developers rapidly build apps for mobile platforms.
2. Titanium Mobile
Titanium Mobile
This powerful and robust mobile web development framework allows you to use your existing HTML, CSS and JavaScript knowledge to make native-like mobile apps for iOS and Android.
As one of the bigger mobile web development frameworks out there — with over 300 APIs and an active developer community — you know you’ll often find help and support from peer developers.
Titanium Mobile supports native UI elements for iOS and Android like table views, tabs, switches and popovers. It also has features that enable you to interact with the mobile devices’ camera and native file storage system.
3. The-M-Project
The-M-Project
The-M-Project is another solid JavaScript framework that takes advantage of new HTML5 features for easier and better mobile app development.
The framework follows the popular model-view-controller (MVC) software architecture pattern, which is a huge selling point for many developers.
It has offline support so that your users can continue working without an Internet connection (they can then sync up to the server next time they’re online) and excellent documentation (the project has a Getting Started guide for new users of the project).
To witness The-M-Project in action, check out their showcase, which includes items like the ToDo App and KitchenSink (a showcase of all the UI elements included in the framework).
4. Jo
Jo
Jo is a framework aimed at developers working on HTML5-capable mobile devices such as those the use the iOS, webOS, Android and Chrome OS platforms.
It has standard, native-like UI elements such as the web form widget for your login screens and the popup widget that you can use for providing extra information when a user clicks on an interface element.
See the demo page on their site, which includes a screencast displaying Jo in action on multiple devices and mobile platforms.
5. xui.js
xui.js
If you need something super lightweight and you only need features for standard client-side development tasks such as DOM manipulation, event-handling, Ajax and a few animation effects, check out xui.js. xui.js packs a punch in such a tiny package (4.2 KB when gzipped).
xui.js provides targeted builds for specific mobile browsers such as WebKit and IE mobile for when you’re developing apps strictly towards a particular mobile device operating system.
6. EmbedJS
EmbedJS
EmbedJS is a JavaScript framework for embedded devices (which includes mobile phones, TVs, tablets and so forth).
What’s great about EmbedJS is that it has multiple builds for specific platforms and browsers such as iOS, Firefox, Android, etc., which translates to an optimal user experience and less code to serve to your users. And if you’d like to customize your build, the creators provide you with the EmbedJS Build tool.
EmbedJS is based on Dojo, so if you’re familiar with the Dojo API syntax, you’ll be able to use EmbedJS right away.
7. zepto.js
zepto.js
zepto.js is a mobile JavaScript framework built specifically for mobile WebKit browsers (e.g. Safari and Chrome). It prides itself in its minimalist development philosophy, which translates to simplicity for helping developers get stuff done quickly. What’s more is that this JS framework is ultra-lightweight at only 5KB.
The zepto.js syntax borrows from, and is compatible with, jQuery — a welcome plus for many developers.
To learn more about this framework, see developer Thomas Fuchs’ presentation of zepto.js.
8. DHTMLX Touch
DHTMLX Touch
DHTMLX Touch, a free HTML5/JavaScript framework optimized for touchscreen devices, brings you the ability to craft beautiful mobile web apps quickly.
The DHTMLX Touch UI Designer is a visual editor for building mobile user interfaces, and it’ll help you construct top-notch UIs with minimal coding.
Check out samples of DHTMLX Touch in action, which includes a menu app for the iPad (perfect for restaurants) and Book Shop (a proof-of-concept demo for an e-store offering books).
9. Mobilize.js
Mobilize.js
Mobilize.js is a JavaScript framework for porting your existing website to a mobile-friendly version. It’s easy to integrate into your site because it does everything on the client-side, and has facilities for detecting mobile browsers so that you can serve them the mobile version of the site.
WordPress users might want to check out the Mobilize.js WordPress plugin.
10. ChocolateChip Mobile
ChocolateChip Mobile
ChocolateChip Mobile is a JavaScript framework developed towards future-forward web browsers. It shares syntax similar to jQuery or Prototype.
The resemblance to jQuery doesn’t stop at the syntax — for example, like jQuery, it can handle events through binding and delegation, and has methods such as .css and .toggleClass.
You can grab ChocolateChip Mobile’s source code off GitHub.
Other JavaScript Libraries for Mobile Web Development
jQTouch: a jQuery plugin specifically for Android and iOS devices.
jqpad: a web development framework built and optimized for iPad development.
iUI: a user interface framework for making iPhone-like web apps.
Sencha: an HTML5 mobile web development framework (suggested by Steven Roussey)
http://www.businessinsider.com/html5-vs-native-apps-for-mobile-2013-6