Category: Uncategorized

  • Mobile Application

    mobile application or app is a computer program or software application designed to run on a mobile device such as a phonetablet, or watch. Mobile applications often stand in contrast to desktop applications which are designed to run on desktop computers, and web applications which run in mobile web browsers rather than directly on the mobile device.

    Apps were originally intended for productivity assistance such as email, calendar, and contact databases, but the public demand for apps caused rapid expansion into other areas such as mobile gamesfactory automation, GPS and location-based services, order-tracking, and ticket purchases, so that there are now millions of apps available. Many apps require Internet access. Apps are generally downloaded from app stores, which are a type of digital distribution platforms.

    The term “app”, short for “application“, has since become very popular; in 2010, it was listed as “Word of the Year” by the American Dialect Society.[1]

    Apps are broadly classified into three types: native apps, hybrid and web apps. Native applications are designed specifically for a mobile operating system, typically iOS or Android. Web apps are written in HTML5 or CSS and typically run through a browser. Hybrid apps are built using web technologies such as JavaScript, CSS, and HTML5 and function like web apps disguised in a native container.[2]

    Overview

    An emulation app for the programmable pocket calculator HP-41CX from 1983. Several such apps exist for full-functionally emulating old home computersgame consoles or even mainframe computers from up to several decades ago.

    Most mobile devices are sold with several apps bundled as pre-installed software, such as a web browseremail clientcalendar, mapping program, and an app for buying music, other media, or more apps. Some pre-installed apps can be removed by an ordinary uninstall process, thus leaving more storage space for desired ones. Where the software does not allow this, some devices can be rooted to eliminate the undesired apps.

    Apps that are not preinstalled are usually available through distribution platforms called app stores. These may operated by the owner of the device’s mobile operating system, such as the App Store or Google Play Store; by the device manufacturers, such as the Galaxy Store and Huawei AppGallery; or by third parties, such as the Amazon Appstore and F-Droid.

    Usually, they are downloaded from the platform to a target device, but sometimes they can be downloaded to laptops or desktop computers. Apps can also be installed manually, for example by running an Android application package on Android devices.

    Some apps are freeware, while others have a price, which can be upfront or a subscription. Some apps also include microtransactions and/or advertising. In any case, the revenue is usually split between the application’s creator and the app store.[3] The same app can, therefore, cost a different price depending on the mobile platform.

    Mobile apps were originally offered for general productivity and information retrieval, including email, calendar, contacts, the stock market and weather information. However, public demand and the availability of developer tools drove rapid expansion into other categories, such as those handled by desktop application software packages. As with other software, the explosion in number and variety of apps made discovery a challenge, which in turn led to the creation of a wide range of review, recommendation, and curation sources, including blogs, magazines, and dedicated online app-discovery services. In 2014 government regulatory agencies began trying to regulate and curate apps, particularly medical apps.[4] Some companies offer apps as an alternative method to deliver content with certain advantages over an official website.

    With a growing number of mobile applications available at app stores and the improved capabilities of smartphones, people are downloading more applications to their devices.[5] Usage of mobile apps has become increasingly prevalent across mobile phone users.[6] A May 2012 comScore study reported that during the previous quarter, more mobile subscribers used apps than browsed the web on their devices: 51.1% vs. 49.8% respectively.[7] Researchers found that usage of mobile apps strongly correlates with user context and depends on user’s location and time of the day.[8] Mobile apps are playing an ever-increasing role within healthcare and when designed and integrated correctly can yield many benefits.[9][10]

    Market research firm Gartner predicted that 102 billion apps would be downloaded in 2013 (91% of them free), which would generate $26 billion in the US, up 44.4% on 2012’s US$18 billion.[11] By Q2 2015, the Google Play and Apple stores alone generated $5 billion. An analyst report estimates that the app economy creates revenues of more than 10 billion per year within the European Union, while over 529,000 jobs have been created in 28 EU states due to the growth of the app market.[12]

    Types

    Mobile applications may be classified by numerous methods. A common scheme is to distinguish native, web-based, and hybrid apps.

    Native app

    All apps targeted toward a particular mobile platform are known as native apps. Therefore, an app intended for Apple device does not run in Android devices. As a result, most businesses develop apps for multiple platforms.

    While developing native apps, professionals incorporate best-in-class user interface modules. This accounts for better performance, consistency and good user experience. Users also benefit from wider access to application programming interfaces and make limitless use of all apps from the particular device. Further, they also switch over from one app to another effortlessly.

    The main purpose for creating such apps is to ensure best performance for a specific mobile operating system.

    Web-based app

    A web-based app is implemented with the standard web technologies of HTMLCSS, and JavaScript. Internet access is typically required for proper behavior or being able to use all features compared to offline usage. Most, if not all, user data is stored in the cloud.

    The performance of these apps is similar to a web application running in a browser, which can be noticeably slower than the equivalent native app. It also may not have the same level of features as the native app.

    Hybrid app

    The concept of the hybrid app is a mix of native and web-based apps. Apps developed using Apache CordovaFlutterXamarinReact NativeSencha Touch, and other frameworks fall into this category.

    These are made to support web and native technologies across multiple platforms. Moreover, these apps are easier and faster to develop. It involves use of single codebase which works in multiple mobile operating systems.[citation needed]

    Despite such advantages, hybrid apps exhibit lower performance. Often, apps fail to bear the same look-and-feel in different mobile operating systems.[citation needed]

    Development

    Main article: Mobile app development

    Developers at work

    Developing apps for mobile devices requires considering the constraints and features of these devices. Mobile devices run on battery and have less powerful processors than personal computers and also have more features such as location detection and cameras. Developers also have to consider a wide array of screen sizes, hardware specifications and configurations because of intense competition in mobile software and changes within each of the platforms (although these issues can be overcome with mobile device detection).

    Mobile application development requires the use of specialized integrated development environments. Mobile apps are first tested within the development environment using emulators and later subjected to field testing. Emulators provide an inexpensive way to test applications on mobile phones to which developers may not have physical access.[13][14]

    Mobile user interface (UI) Design is also essential. Mobile UI considers constraints and contexts, screen, input and mobility as outlines for design. The user is often the focus of interaction with their device, and the interface entails components of both hardware and software. User input allows for the users to manipulate a system, and device’s output allows the system to indicate the effects of the users’ manipulation. Mobile UI design constraints include limited attention and form factors, such as a mobile device’s screen size for a user’s hand. Mobile UI contexts signal cues from user activity, such as location and scheduling that can be shown from user interactions within a mobile application. Overall, mobile UI design’s goal is primarily for an understandable, user-friendly interface.

    Mobile UIs, or front-ends, rely on mobile back-ends to support access to enterprise systems. The mobile back-end facilitates data routing, security, authentication, authorization, working off-line, and service orchestration. This functionality is supported by a mix of middleware components including mobile app serversMobile Backend as a service (MBaaS), and SOA infrastructure.

    Conversational interfaces display the computer interface and present interactions through text instead of graphic elements. They emulate conversations with real humans.[15] There are two main types of conversational interfaces: voice assistants (like the Amazon Echo) and chatbots.[15]

    Conversational interfaces are growing particularly practical as users are starting to feel overwhelmed with mobile apps (a term known as “app fatigue”).[16][17]

    David Limp, Amazon’s senior vice president of devices, says in an interview with Bloomberg, “We believe the next big platform is voice.”[18]

    Distribution

    See also: List of mobile app distribution platforms

    This section needs to be updated. The reason given is: Outdated stats; Microsoft Store no longer caters for mobile apps as Windows Mobile has been discontinued; Nokia Ovi store is long closed; Samsung Apps has been renamed; etc.. Please help update this article to reflect recent events or newly available information. (April 2020)

    The three biggest app stores are Google Play for AndroidApp Store for iOS, and Microsoft Store for Windows 10Windows 10 Mobile, and Xbox One.

    Google Play

    Main article: Google Play

    Google Play (formerly known as the Android Market) is an international online software store developed by Google for Android devices. It opened in October 2008.[19] In July 2013, the number of apps downloaded via the Google Play Store surpassed 50 billion, of the over 1 million apps available.[20] As of September 2016, according to Statista the number of apps available exceeded 2.4 million. Over 80% of apps in the Google Play Store are free to download.[21] The store generated a revenue of 6 billion U.S. dollars in 2015.

    App Store

    Main article: App Store (Apple)

    Apple‘s App Store for iOS and iPadOS was not the first app distribution service, but it ignited the mobile revolution and was opened on July 10, 2008, and as of September 2016, reported over 140 billion downloads. The original AppStore was first demonstrated to Steve Jobs in 1993 by Jesse Tayler at NeXTWorld Expo[22] As of June 6, 2011, there were 425,000 apps available, which had been downloaded by 200 million iOS users.[23][24] During Apple’s 2012 Worldwide Developers Conference, CEO Tim Cook announced that the App Store has 650,000 available apps to download as well as 30 billion apps downloaded from the app store until that date.[25] From an alternative perspective, figures seen in July 2013 by the BBC from tracking service Adeven indicate over two-thirds of apps in the store are “zombies”, barely ever installed by consumers.[26]

    Microsoft Store

    Main article: Microsoft Store

    Microsoft Store (formerly known as the Windows Store) was introduced by Microsoft in 2012 for its Windows 8 and Windows RT platforms. While it can also carry listings for traditional desktop programs certified for compatibility with Windows 8, it is primarily used to distribute “Windows Store apps”—which are primarily built for use on tablets and other touch-based devices (but can still be used with a keyboard and mouse, and on desktop computers and laptops).[27][28]

    Others

    Main article: List of mobile app distribution platforms

    • Amazon Appstore is an alternative application store for the Android operating system. It was opened in March 2011 and as of June 2015, the app store has nearly 334,000 apps.[29] The Amazon Appstore’s Android Apps can also be installed and run on BlackBerry 10 devices.
    • BlackBerry World is the application store for BlackBerry 10 and BlackBerry OS devices. It opened in April 2009 as BlackBerry App World.
    • Ovi (Nokia) for Nokia phones was launched internationally in May 2009. In May 2011, Nokia announced plans to rebrand its Ovi product line under the Nokia brand[30] and Ovi Store was renamed Nokia Store in October 2011.[31] Nokia Store will no longer allow developers to publish new apps or app updates for its legacy Symbian and MeeGo operating systems from January 2014.[32]
    • Windows Phone Store was introduced by Microsoft for its Windows Phone platform, which was launched in October 2010. As of October 2012, it has over 120,000 apps available.[33]
    • Samsung Apps was introduced in September 2009.[34] As of October 2011, Samsung Apps reached 10 million downloads. The store is available in 125 countries and it offers apps for Windows Mobile, Android and Bada platforms.
    • The Electronic AppWrapper was the first electronic distribution service to collectively provide encryption and purchasing electronically[35]
    • F-Droid — Free and open Source Android app repository.
    • Opera Mobile Store is a platform independent app store for iOS, Java, BlackBerry OS, Symbian, iOS, and Windows Mobile, and Android based mobile phones. It was launched internationally in March, 2011.
    • There are numerous other independent app stores for Android devices.

    Enterprise management

    Main article: Mobile application management

    Mobile application management (MAM) describes software and services responsible for provisioning and controlling access to internally developed and commercially available mobile apps used in business settings. The strategy is meant to off-set the security risk of a Bring Your Own Device (BYOD) work strategy. When an employee brings a personal device into an enterprise setting, mobile application management enables the corporate IT staff to transfer required applications, control access to business data, and remove locally cached business data from the device if it is lost, or when its owner no longer works with the company. Containerization is an alternate approach to security. Rather than controlling an employee/s entire device, containerization apps create isolated pockets separate from personal data. Company control of the device only extends to that separate container.[36]

    App wrapping vs. native app management

    Especially when employees “bring your own device” (BYOD), mobile apps can be a significant security risk for businesses, because they transfer unprotected sensitive data to the Internet without knowledge and consent of the users. Reports of stolen corporate data show how quickly corporate and personal data can fall into the wrong hands. Data theft is not just the loss of confidential information, but makes companies vulnerable to attack and blackmail.[37]

    Professional mobile application management helps companies protect their data. One option for securing corporate data is app wrapping. But there also are some disadvantages like copyright infringement or the loss of warranty rights. Functionality, productivity and user experience are particularly limited under app wrapping. The policies of a wrapped app can not be changed. If required, it must be recreated from scratch, adding cost.[38] An app wrapper is a mobile app made wholly from an existing website or platform,[39] with few or no changes made to the underlying application. The “wrapper” is essentially a new management layer that allows developers to set up usage policies appropriate for app use.[39] Examples of these policies include whether or not authentication is required, allowing data to be stored on the device, and enabling/disabling file sharing between users.[40] Because most app wrappers are often websites first, they often do not align with iOS or Android Developer guidelines.

    Alternatively, it is possible to offer native apps securely through enterprise mobility management. This enables more flexible IT management as apps can be easily implemented and policies adjusted at any time.[41]

  • Website 

    website (also written as a web site) is any web page whose content is identified by a common domain name and is published on at least one web server. Websites are typically dedicated to a particular topic or purpose, such as news, education, commerce, entertainment, or social mediaHyperlinking between web pages guides the navigation of the site, which often starts with a home page. The most-visited sites are GoogleYouTube, and Facebook.

    All publicly-accessible websites collectively constitute the World Wide Web. There are also private websites that can only be accessed on a private network, such as a company’s internal website for its employees. Users can access websites on a range of devices, including desktopslaptopstablets, and smartphones. The app used on these devices is called a web browser.

    Background

    Further information: History of the World Wide Web

    The nasa.gov home page in 2015

    The World Wide Web (WWW) was created in 1989 by the British CERN computer scientist Tim Berners-Lee.[1][2] On 30 April 1993, CERN announced that the World Wide Web would be free to use for anyone, contributing to the immense growth of the Web.[3] Before the introduction of the Hypertext Transfer Protocol (HTTP), other protocols such as File Transfer Protocol and the gopher protocol were used to retrieve individual files from a server. These protocols offer a simple directory structure in which the user navigates and where they choose files to download. Documents were most often presented as plain text files without formatting or were encoded in word processor formats.

    History

    While “web site” was the original spelling (sometimes capitalized “Web site”, since “Web” is a proper noun when referring to the World Wide Web), this variant has become rarely used, and “website” has become the standard spelling. All major style guides, such as The Chicago Manual of Style[4] and the AP Stylebook,[5] have reflected this change.

    In February 2009, Netcraft, an Internet monitoring company that has tracked Web growth since 1995, reported that there were 215,675,903 websites with domain names and content on them in 2009, compared to just 19,732 websites in August 1995.[6] After reaching 1 billion websites in September 2014, a milestone confirmed by Netcraft in its October 2014 Web Server Survey and that Internet Live Stats was the first to announce—as attested by this tweet from the inventor of the World Wide Web himself, Tim Berners-Lee—the number of websites in the world have subsequently declined, reverting to a level below 1 billion. This is due to the monthly fluctuations in the count of inactive websites. The number of websites continued growing to over 1 billion by March 2016 and has continued growing since.[7] Netcraft Web Server Survey in January 2020 reported that there are 1,295,973,827 websites and in April 2021 reported that there are 1,212,139,815 sites across 10,939,637 web-facing computers, and 264,469,666 unique domains.[8] An estimated 85 percent of all websites are inactive.[9]

    Static website

    Main article: Static web page

    A static website is one that has Web pages stored on the server in the format that is sent to a client Web browser. It is primarily coded in Hypertext Markup Language (HTML); Cascading Style Sheets (CSS) are used to control appearance beyond basic HTML. Images are commonly used to create the desired appearance and as part of the main content. Audio or video might also be considered “static” content if it plays automatically or is generally non-interactive. This type of website usually displays the same information to all visitors. Similar to handing out a printed brochure to customers or clients, a static website will generally provide consistent, standard information for an extended period of time. Although the website owner may make updates periodically, it is a manual process to edit the text, photos, and other content and may require basic website design skills and software. Simple forms or marketing examples of websites, such as a classic website, a five-page website or a brochure website are often static websites, because they present pre-defined, static information to the user. This may include information about a company and its products and services through text, photos, animations, audio/video, and navigation menus.

    Static websites may still use server side includes (SSI) as an editing convenience, such as sharing a common menu bar across many pages. As the site’s behavior to the reader is still static, this is not considered a dynamic site.

    Dynamic website

    Main articles: Dynamic web pageWeb application, and Progressive web app

    Server-side programming language usage in 2016

    A dynamic website is one that changes or customizes itself frequently and automatically. Server-side dynamic pages are generated “on the fly” by computer code that produces the HTML (CSS are responsible for appearance and thus, are static files). There are a wide range of software systems, such as CGIJava Servlets and Java Server Pages (JSP), Active Server Pages and ColdFusion (CFML) that are available to generate dynamic Web systems and dynamic sites. Various Web application frameworks and Web template systems are available for general-use programming languages like PerlPHPPython and Ruby to make it faster and easier to create complex dynamic websites.

    A site can display the current state of a dialogue between users, monitor a changing situation, or provide information in some way personalized to the requirements of the individual user. For example, when the front page of a news site is requested, the code running on the webserver might combine stored HTML fragments with news stories retrieved from a database or another website via RSS to produce a page that includes the latest information. Dynamic sites can be interactive by using HTML forms, storing and reading back browser cookies, or by creating a series of pages that reflect the previous history of clicks. Another example of dynamic content is when a retail website with a database of media products allows a user to input a search request, e.g. for the keyword Beatles. In response, the content of the Web page will spontaneously change the way it looked before, and will then display a list of Beatles products like CDs, DVDs, and books. Dynamic HTML uses JavaScript code to instruct the Web browser how to interactively modify the page contents. One way to simulate a certain type of dynamic website while avoiding the performance loss of initiating the dynamic engine on a per-user or per-connection basis is to periodically automatically regenerate a large series of static pages.

    Multimedia and interactive content

    Early websites had only text, and soon after, images. Web browser plug-ins were then used to add audio, video, and interactivity (such as for a rich Web application that mirrors the complexity of a desktop application like a word processor). Examples of such plug-ins are Microsoft SilverlightAdobe Flash PlayerAdobe Shockwave Player, and Java SEHTML 5 includes provisions for audio and video without plugins. JavaScript is also built into most modern web browsers, and allows for website creators to send code to the web browser that instructs it how to interactively modify page content and communicate with the web server if needed. The browser’s internal representation of the content is known as the Document Object Model (DOM).

    WebGL (Web Graphics Library) is a modern JavaScript API for rendering interactive 3D graphics without the use of plug-ins. It allows interactive content such as 3D animations, visualizations and video explainers to presented users in the most intuitive way.[10]

    A 2010-era trend in websites called “responsive design” has given the best viewing experience as it provides a device-based layout for users. These websites change their layout according to the device or mobile platform, thus giving a rich user experience.[11]

    Types

    Websites can be divided into two broad categories—static and interactive. Interactive sites are part of the Web 2.0 community of sites and allow for interactivity between the site owner and site visitors or users. Static sites serve or capture information but do not allow engagement with the audience or users directly. Some websites are informational or produced by enthusiasts or for personal use or entertainment. Many websites do aim to make money using one or more business models, including: