A propos des applications

  • Raccourci de la révision : Applications/FAQ/A_propos_des_applications
  • Titre de la révision : A propos des applications
  • ID de la révision : 7720
  • Créé :
  • Créateur : sylzys
  • Version actuelle ? Non
  • Commentaire page created, 909 words added

Contenu de la révision

What is an Open Web app, technically?

An Open Web app is much more than an HTML application. Think of "Open Web Apps" as Web-standards-built applications or "Web Run Time" (WebRT) applications.

A WebRT application runs outside a normal browser and can be launched from the desktop (or device equivalent) on any of the popular internet-connected devices. Of course, WebRT applications can be run inside the browser too if the user prefers.

Although HTML5 is an evolution of the HTML syntax specification, in practice it is a wave of new or enhanced technologies.

For an Open Web app, you can use:

  • HTML5 as the declarative syntax to define the structure of the application's user interface.
  • CSS3 as the declarative syntax to define layout, visual aesthetics and portions of the UI behavior. Using CSS3, you can custom-tailor the visual experience to any device that needs a specific presentation without having to re-implement structure or programmatic logic.
  • JavaScript as the imperative syntax to implement logic to be executed on the client device.
  • New technologies that are part of the HTML5 wave if not the HTML5 markup specification such as AppCache, WebStorage, WebSockets, WebWorkers, Server-Sent Events, Crypto API, etc.

When appropriate, you can augment WebRT applications with server-side logic, for use when the user's device is in a connected state. Though WebRT applications can run whether or not they can connect to the world wide Web, you can offer an enhanced experience when connected. You can choose any server-side platform and technology that you like, since the application and the server communicate over HTTP/S using standard mechanisms such as JSON and XML.

I've already built a Web application. How do I make it into an installable app?

{{ page("/en/Apps/For_Web_developers", "Minimum requirements") }}

In practice, there is usually a great deal more that needs to be done. For more information, see App development for Web developers.

What is the difference between an app and a website?

An app can:

  • Run outside a normal browser
  • Run whether the device is connected to the Internet or not
  • Be launched in the same native way any device application is launched

At a minimum, an app is a website that can be "installed" on a mobile device or computer so that it looks to a user like a native application. You can distribute it either on your own website or through an app store. Both can be built using open web standards such as HTML5. You can control access to a Web app, so that only paid users can access it.

A site that is an app should be designed to work (or at least fail gracefully) when the device is not on the Internet. Building HTML5 WebRT applications (as opposed to building sites that will always be visited in a connected browser) requires some architectural additions to handle "sometimes connected" state, etc.

Building HTML5 sites (instead of apps) tends to focus especially on implementing page structure using the new HTML5 semantics.

Note that HTML5 apps versus sites is not an either-or proposition. You can build HTML5 "applications" that can run either inside a browser or outside it, and you can design them to provide an enhanced user experience when the user's device is connected to the Internet.

See also:

Should I build a website or an app?

Of course, it depends on your goals. In both cases, you can deliver your site on multiple device platforms by using the standard "Web stack" of technologies (HTML/CSS/JavaScript). However, an advantage of a Web app is that it looks like a native application to users — they can launch it from their home screen or desktop, without having to find a bookmark or remember a URL. This means they are more likely to use it and keep returning to it than a website.

What is the difference between an app and an add-on?

Apps are applications produced on and delivered through the Web. Apps are complete applications such as office applications, productivity applications, image processing applications, games, etc. Apps run in any modern Web browser (both on desktop as well as mobile). Add-ons are extensions to your Firefox browser, which provide specific functionality to the browser itself.

What tools should I use to build Open Web apps?

Use the same tool set you would choose for Web development on your platform of choice. Most "current" editors and IDEs for Web development support HTML5 syntax.

Can my app access device-level APIs?

The Web Run Time has access to necessary device APIs like Camera and Vibration. The Mozilla Web API project is working on expanding this list.

Hows does an Open Web App work across platforms? Form factors?

Unlike proprietary languages or run-times, HTML, CSS and JavaScript have already been implemented on all popular modern devices where customers want to use applications.

There are, however, unavoidable differences in form factor between disparate devices. A carefully designed and well developed application can implement one set of HTML and JavaScript for an application and then form-factor0specific CSS files to adapt layout and other aesthetic attributes as desired.

If you wish to provide the richest possible experience, you can also write code to detect the presence of "optional devices" like a camera, and leverage them as appropriate for the application.

Source de la révision

<h2>What is an Open Web app, technically?</h2>
<p>An Open Web app is much more than an HTML application. Think of "Open Web Apps" as Web-standards-built applications or "Web Run Time" (WebRT) applications.</p>
<p>A WebRT application runs outside a normal browser and can be launched from the desktop (or device equivalent) on any of the popular internet-connected devices. Of course, WebRT applications can be run inside the browser too if the user prefers.</p>
<p>Although HTML5 is an evolution of the HTML syntax specification, in practice it is a wave of new or enhanced technologies.</p>
<p>For an Open Web app, you can use:</p>
<ul> <li><strong>HTML5</strong> as the declarative syntax to define the structure of the application's user interface.</li> <li><strong>CSS3</strong> as the declarative syntax to define layout, visual aesthetics and portions of the UI behavior. Using CSS3, you can custom-tailor the visual experience to any device that needs a specific presentation without having to re-implement structure or programmatic logic.</li> <li><strong>JavaScript</strong> as the imperative syntax to implement logic to be executed on the client device.</li> <li>New technologies that are part of the HTML5 wave if not the HTML5 markup specification such as <a href="/en/HTML/Using_the_application_cache" title="Using the application cache">AppCache</a>, <a href="/en/Storage" title="Storage">WebStorage</a>, <a href="/en/WebSockets" title="WebSockets">WebSockets</a>, <a href="/En/DOM/Using_web_workers" title="Using web workers">WebWorkers</a>, <a href="/en/Server-sent_events" title="Server-sent events">Server-Sent Events</a>, <a href="/en/DOM/window.crypto" title="window.crypto">Crypto API,</a> etc.</li>
</ul>
<p>When appropriate, you can augment WebRT applications with server-side logic, for use when the user's device is in a connected state. Though WebRT applications can run whether or not they can connect to the world wide Web, you can offer an enhanced experience when connected. You can choose any server-side platform and technology that you like, since the application and the server communicate over HTTP/S using standard mechanisms such as JSON and XML.</p>
<h2>I've already built a Web application. How do I make it into an installable app?</h2>
<p>{{ page("/en/Apps/For_Web_developers", "Minimum requirements") }}</p>
<p>In practice, there is usually a great deal more that needs to be done. For more information, see <a href="/en/Apps/For_Web_developers" title="App development for Web developers">App development for Web developers</a>.</p>
<h2>What is the difference between an app and a website?</h2>
<p>An app can:</p>
<ul> <li>Run outside a normal browser</li> <li>Run whether the device is connected to the Internet or not</li> <li>Be launched in the same native way any device application is launched</li>
</ul>
<p>At a minimum, an app is a website that can be "installed" on a mobile device or computer so that it looks to a user like a native application. You can distribute it either on your own website or through an app store. Both can be built using open web standards such as HTML5. You can control access to a Web app, so that only paid users can access it.</p>
<p>A site that is an app should be designed to work (or at least fail gracefully) when the device is not on the Internet. Building HTML5 WebRT applications (as opposed to building sites that will always be visited in a connected browser) requires some architectural additions to handle "sometimes connected" state, etc.</p>
<p>Building HTML5 sites (instead of apps) tends to focus especially on implementing page structure using the new HTML5 semantics.</p>
<p>Note that HTML5 apps versus sites is not an either-or proposition. You can build HTML5 "applications" that can run either inside a browser or outside it, and you can design them to provide an enhanced user experience when the user's device is connected to the Internet.</p>
<p>See also:</p>
<ul> <li><a href="/en/Apps/Using_apps_offline" title="en/Apps/Using apps offline">Using apps offline</a></li> <li><a class="external" href="http://www.misfitgeek.com/2011/11/html5-app-versus-html5-page/" title="http://www.misfitgeek.com/2011/11/html5-app-versus-html5-page/">HTML5 App Vs. HTML5 Page — What's the Difference?</a></li>
</ul>
<h2>Should I build a website or an app?</h2>
<p>Of course, it depends on your goals. In both cases, you can deliver your site on multiple device platforms by using the standard "Web stack" of technologies (HTML/CSS/JavaScript). However, an advantage of a Web app is that it looks like a native application to users — they can launch it from their home screen or desktop, without having to find a bookmark or remember a URL. This means they are more likely to use it and keep returning to it than a website.</p>
<h2>What is the difference between an app and an add-on?</h2>
<p>Apps are applications produced on and delivered through the Web. Apps are complete applications such as office applications, productivity applications, image processing applications, games, etc. Apps run in any modern Web browser (both on desktop as well as mobile). Add-ons are extensions to your Firefox browser, which provide specific functionality to the browser itself.</p>
<h2>What tools should I use to build Open Web apps?</h2>
<p>Use the same tool set you would choose for Web development on your platform of choice. Most "current" editors and IDEs for Web development support HTML5 syntax.</p>
<h2>Can my app access device-level APIs?</h2>
<p>The Web Run Time has access to necessary device APIs like <a href="/en/DOM/Using_the_Camera_API" title="Using the Camera API">Camera</a> and <a href="/en/DOM/window.navigator.vibrate" title="window.navigator.vibrate">Vibration</a>. The <a class="link-https" href="https://wiki.mozilla.org/WebAPI" title="https://wiki.mozilla.org/WebAPI">Mozilla Web API project</a> is working on expanding this list.</p>
<h2>Hows does an Open Web App work across platforms? Form factors?</h2>
<p>Unlike proprietary languages or run-times, HTML, CSS and JavaScript have already been implemented on all popular modern devices where customers want to use applications.</p>
<p>There are, however, unavoidable differences in form factor between disparate devices. A carefully designed and well developed application can implement one set of HTML and JavaScript for an application and then form-factor0specific CSS files to adapt layout and other aesthetic attributes as desired.</p>
<p>If you wish to provide the richest possible experience, you can also write code to detect the presence of "optional devices" like a camera, and leverage them as appropriate for the application.</p>
Revenir à cette révision