Some thoughts on native app and web App

Source: Internet
Author: User

Objective

Native app:c/s architecture, implemented using native technology (Java/objective-c/swift).

The Web app:b/s architecture, implemented using browser technology, also broadly includes PHONEGAP and the EFTE framework that DP is trying to use.

On the PC, the lightweight application is b/s architecture, with light, fast, no installation, easy version control and other advantages, this idea applies to the extreme is to use the browser as the operating system (Chromium OS). On the mobile phone, due to network traffic, screen adaptation, functional limitations and other reasons, C/S architecture native app is still the mainstream. Because this blog is mainly focused on mobile development, the following on the mobile platform, the pros and cons of the two apps to do a simple summary, personal humble opinion.

The lack of Web apps

Compared to native, the Web App app on mobile platform is not very wide, open the store, ranked in the top 10 of the Web app is not a strict sense. A rough analysis of its causes can be summed up in the following points:

    1. Limitations of the mobile network environment. Transmission speed is slow, unstable, expensive, these are the current situation of mobile network in most of China. Compared to native applications, Web apps tend to require more traffic, and the rendering effect is quite general. For mobile applications, slow loading is a deadly key. With the user experience in mind, most vendors will choose native as the implementation method.
    2. The device itself has limited performance. This is particularly noticeable on low-end Android computers, where the gap between CPU, memory, memory, and image processing is quite large compared to PC. This is reflected in the user experience, which is also an unacceptable speed to slow down. The native implementation can make more use of the mobile platform's underlying API interface and optimize it accordingly.
    3. Compared to the browser, native makes it easier to implement some cool interactions. such as sensors, animation, positioning, gyro, photo, recording ...
    4. Mobile platform fragmentation serious, screen size, resolution is very different, resulting in the same page on the big screen phone display normal, on the small screen phone on the strange occurrence of line change, poor visual effect, affecting the user experience. Native, on the other hand, provides some measures to reduce the workload of adaptation.
    5. The same is due to network restrictions, the browser is not easy to control the image of large files such as cache, waste traffic and slow loading, native can freely develop a cache strategy, and have SQLite and other tools to do data storage.

The lack of web apps, from another perspective, is the advantage of the native app. If the above 5 points are classified, with the popularity of 4G and WiFi, 1, 2 in the foreseeable future, I believe there will be some improvement, 3, 42 points I am afraid that a considerable amount of time and effort, can be completely overcome. In particular, the fragmentation of this, coupled with GFW this stumbling block, directly let Google unified Android system into the difficult mode.

The hope of the Web App

  I am the hope of the Chinese DotA Although many of these aspects show that in ten years (? , native will still be the mainstream, but web apps continue to have the same advantages as the PC era, and in some cases can be a better solution than native. Here is a brief summary of the Web App Flash:

    1. Easy to maintain and upgrade. The reason why this is ranked first, because deeply efte poisoned. Every time the DP app submitted for review, you have to risk being called back by the App Store, fortunately the celestial need not mention Google Play audit, or the Android version is afraid to release. Efte is a good solution to this problem, in the background update the relevant module jar package, the front end does not need to upgrade the version, you can download new features to use. It is said that the game is similar to the realization, has not studied, can not jump to conclusions. But standing in the user's point of view, go out need to upgrade a variety of clients, is also quite distressed, especially in the absence of WiFi environment.
    2. The PC era, Trident/gecko/khtml/webkit and other core crowded scenes, so many front-end engineers headache unceasingly. In the mobile Internet era, HTML, CSS, JavaScript technology, maintain a high degree of consistency. With these technologies, you can eliminate the difference between mobile platforms and make a set of things that run on both iOS and Android systems. (Feel the rhythm of being unemployed)
    3. The development and popularization of HTML5, CSS3 and other technologies provide more possibilities for web apps.
Recognize your position.

Native or web, it's not who they replace, but how they work together to complement one another. For a front-end (client) engineer, to thoroughly understand any one of the two, is not overnight to complete. The process of learning, more is a process of improving their ability to learn and solve problems, like musical instruments, knowledge in a certain degree is also interlinked. It is interesting to think of reading a passage a few days ago: people always say that children learn to be faster than adults, perhaps because, when a child is learning a skill, it is often mindedly to do it day in, and seldom to think about it, is this something I can learn in a week? Will you be proficient in one months? Lead to encourage each other.

Resources
    1. The role of Web front-end engineers in the mobile internet era by summer forest

Some thoughts on native app and web App

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.