web应用程序和web网站_Web应用程序是未来

news/2024/5/8 9:53:11/文章来源:https://blog.csdn.net/culi3118/article/details/108384018

web应用程序和web网站

Native mobile apps are a little weird, if you stop and think about them.

如果您停下来考虑一下,本机移动应用程序会有些奇怪。

The average mobile app weighs around 20MB, often requires an internet connection in order to be used as intended, and issues several data-heavy updates during its lifetime. Some of these mobile apps have a web version that contains all or most of the same features, at nearly 1/20th of the size.

一般移动应用程序的重量约为20MB ,通常需要互联网连接才能按预期使用,并在其生命周期内发布大量数据更新。 其中一些移动应用程序的网络版本包含全部或大部分相同的功能,其大小几乎是其1/20。

When you buy a mobile phone, a lot of these apps come preinstalled, and can be difficult to remove from your device. There is an app for every use you can think of, but every download means less available storage on your device. Many native apps have specific and trivial use cases (calculators, alarm clocks, sound recorders), while still having large file sizes and internet connection requirements.

当您购买手机时,其中许多应用程序都已预装,可能很难从设备中删除。 您可以想到一个可以满足各种用途的应用程序,但是每次下载都意味着设备上的可用存储空间减少。 许多本机应用程序都有特定而琐碎的用例(计算器,闹钟,录音机),同时仍然具有较大的文件大小和Internet连接要求。

If you’re a developer, it only gets weirder. You can’t just make an app and release it into the wild. You first have to get it approved it on some marketplace to be seen, which can be a difficult and expensive process ($99 USD on apple app store). If you want to make your app available to a wider audience (apple, android, and Firefox OS), you have to release separate versions, which include additional marketplace approval processes and plenty of extra development time.

如果您是开发人员,那只会变得很奇怪。 您不能只是制作一个应用并将其发布到野外。 您首先必须让它在某些市场上获得批准才能被看到,这可能是一个困难而昂贵的过程(苹果应用程序商店上的价格为99美元)。 如果要使您的应用程序可供更广泛的受众(Apple,Android和Firefox OS)使用,则必须发布单独的版本,其中包括其他市场批准流程和大量额外的开发时间。

Vector Hands touching a Smart phone with Social Marketing icon

问题 (The Problem)

Although native mobile applications are useful and entertaining, they’re also a giant inconvenience.

尽管本机移动应用程序有用且有趣,但它们也带来了极大的不便。

For developers, they’re difficult to develop if your skill set revolves around HTML, CSS, and JavaScript. They’re difficult to get on a marketplace, because of tightly controlled requirements and licensing fees. They’re difficult to support because of multiple software versions and device incompatibilities. As an Android user, I’ve come across several great apps that I’d love to install and use, but am unable to because they only exist for iPhone users. This is an upsetting (albeit “first world”) problem, but I can’t blame the developers of the app, because supporting just one platform is difficult enough!

对于开发人员而言,如果您的技能集围绕HTML,CSS和JavaScript进行,则很难进行开发。 由于要求和许可费用受到严格控制,它们很难进入市场。 由于多个软件版本和设备不兼容,因此难以支持它们。 作为Android用户,我遇到了一些我希望安装和使用的出色应用程序,但由于它们仅适用于iPhone用户而无法使用。 这是一个令人烦恼的问题(尽管是“第一世界”),但是我不能责怪该应用程序的开发人员,因为仅支持一个平台已经非常困难!

For users, they’re difficult to install because of bandwidth constraints, file sizes, and frequent updates (open your application manager on your phone and see how many of your apps need or have recently downloaded an update). How many times have you had to uninstall an app on your device to make room for a more important one?

对于用户而言,由于带宽限制,文件大小和频繁的更新,它们很难安装(在手机上打开应用程序管理器,查看有多少应用程序需要或最近下载了更新)。 您必须卸载设备上的应用程序多少次才能腾出空间来安装更重要的应用程序?

Let’s not forget that several mobile applications have web versions that have the same content and capabilities, negating the need for an app in the first place.

让我们不要忘记,几个移动应用程序具有具有相同内容和功能的Web版本,从而一开始就不需要应用程序。

So native mobile applications are difficult for both users and developers alike. But developers keep building them, users continue to download them, and everyone keeps complaining. So is there a solution to the problem of native mobile applications, or are we stuck with the problems we have?

因此,本机移动应用程序对于用户和开发人员都非常困难。 但是开发人员继续构建它们,用户继续下载它们,并且每个人都在抱怨。 那么,是否有解决本机移动应用程序问题的解决方案,还是我们陷入困境?

解决方案 (The Solution)

The solution is the browser. Remember when I said that most applications require some form of an internet connection to work properly? Well truthfully, all applications require an internet connection to work properly, because without the internet, you can’t download any applications. We use the internet to download applications and updates for them, and often to send and receive application-related data.

解决方案是浏览器。 还记得我说过大多数应用程序需要某种形式的Internet连接才能正常工作吗? 说实话,所有应用程序都需要Internet连接才能正常运行,因为没有Internet,您将无法下载任何应用程序。 我们使用互联网为他们下载应用程序和更新,并经常发送和接收与应用程序相关的数据。

If all our applications depend so heavily on the internet, why don’t we just keep them there? This is exactly what a web app does. A web app relies on the browser and its capabilities to render the application, whereas a native mobile app relies on the device and its capabilities to render the application.

如果我们所有的应用程序都非常依赖互联网,那么为什么不将它们保持在互联网上呢? 这正是Web应用程序所做的。 Web应用程序依赖于浏览器及其功能来呈现应用程序,而本机移动应用程序依赖于设备及其功能来呈现应用程序。

Web apps cause plenty of native mobile application headaches to disappear. If you’re a developer, you only need HTML, CSS, and Javascript to start building your application! In some cases, your application can be completely static, meaning you don’t need to rely on any server side processing.

Web应用程序导致许多本机移动应用程序头痛消失。 如果您是开发人员,则只需要HTML,CSS和Javascript即可开始构建应用程序! 在某些情况下, 您的应用程序可以是完全静态的 ,这意味着您不需要依赖任何服务器端处理。

Although marketplaces for web apps do exist, the user doesn’t need to go to one to download your application. Web apps live in the browser, which means your users can navigate to a URL to use your application, and installation is as simple as bookmarking a website. Developers can also avoid the need to make several different versions depending on their users’ operating systems.

尽管确实存在用于Web应用程序的市场 ,但用户无需转到其中就可以下载您的应用程序。 Web应用程序驻留在浏览器中,这意味着您的用户可以导航到URL来使用您的应用程序,并且安装就像将网站添加为书签一样简单。 开发人员还可以避免根据用户的操作系统制作多个不同版本的需求。

Web apps are great for users, especially because they make distribution and installation so easy. They also eliminate size constraints, which means no more having to uninstall an application in order to make room for more! Updating a web application for a user is a seamless process, requiring nothing more than a browser refresh.

Web应用程序非常适合用户使用,特别是因为它们使分发和安装变得如此容易。 它们还消除了大小限制,这意味着不再需要卸载应用程序来腾出更多空间! 为用户更新Web应用程序是一个无缝过程,只需要刷新浏览器即可。

陷阱 (Gotchas)

Although web apps offer a potential solution to native mobile headaches, there are plenty of technology gaps that exist between browser and native rendering engines. Paul Kinlan writes an excellent article about this issue, in which he journals the results of his quest to live on nothing but web apps for a whole day.

尽管Web应用程序提供了解决本地移动难题的潜在解决方案,但浏览器和本地渲染引擎之间仍然存在大量技术差距。 保罗·金兰(Paul Kinlan)撰写了一篇有关此问题的出色文章 ,在其中记录了他寻求一整天只生活在网络应用程序上的结果。

Although explained in the above article, the issue of web apps and offline performance deserves its own mention. Offline-first architecture means structuring your content in such a way that when a user doesn’t have an internet connection, they don’t get a blank white screen from your web app. Instead, they can interact with the web app, and data will sync up to a server when a connection is available. Many web apps today are very bad at this, and as a result, the market for web apps is not as large as it could be. A list Apart has a great article explaining the concept in depth, and it’s well worth the read. Solutions for solving the offline problem are growing, one of the most exciting being PouchDB (here’s a guide to getting started).

尽管在上面的文章中进行了解释,但是Web应用程序和脱机性能的问题值得一提。 脱机优先架构意味着以这样的一种方式来构造您的内容,即当用户没有Internet连接时,他们不会从您的Web应用程序中获得白屏。 相反,他们可以与Web应用程序进行交互,并且当连接可用时,数据将同步到服务器。 如今,许多Web应用程序在这方面都非常糟糕,因此,Web应用程序的市场规模不尽如人意。 列表Apart有一篇很棒的文章深入解释了这个概念,值得一读。 解决离线问题的解决方案正在增长,其中最令人兴奋的就是PouchDB (这是入门指南 )。

Another large issue that the web platform has yet to fully solve, is the issue of caching and storing application resources on the client side. Appcache was created to solve this problem, (we’ve covered it before), but it had its issues, and so the community is looking to service workers for a final solution. But service workers are not yet ready either.

Web平台尚未完全解决的另一个大问题是在客户端缓存和存储应用程序资源的问题。 Appcache的创建是为了解决这个问题(我们之前已经讨论过 ), 但是它存在问题 ,因此社区正在寻求为工人提供最终解决方案。 但是服务人员还没有做好准备 。

System notifications and background tasks are two other issues that web applications have yet to solve, although Google Chrome’s hosted web app solution seems to offer a fix for these problems.

系统通知和后台任务是Web应用程序尚未解决的另外两个问题,尽管Google Chrome托管的Web应用程序解决方案似乎可以解决这些问题。

入门 (Getting Started)

Even though there are areas in which web apps have yet to catch up, we shouldn’t be discouraged from building web applications today. Although technology limitations get in the way of making all web applications obsolete, we can currently start to replace native applications with the technology that we have right now. Here are some resources to help you get started.

即使在某些领域Web应用程序尚未赶上,我们也不应该阻止我们今天构建Web应用程序。 尽管技术限制阻碍了所有Web应用程序的淘汰,但是我们现在可以开始用我们现在拥有的技术替换本机应用程序。 这里有一些资源可以帮助您入门。

  • Hoodie is a framework for building web applications that features offline-first capabilities, making it great applications that need to work on mobile devices. Here’s how to get started with Hoodie.

    Hoodie是用于构建具有脱机优先功能的Web应用程序的框架,使其成为需要在移动设备上工作的出色应用程序。 这是Hoodie入门的方法 。

  • Intel XDK is an “HTML5 Cross-platform Development Tool” for building Web and Hybrid applications. Here’s a more detailed look at XDK.

    英特尔XDK是用于构建Web和混合应用程序的“ HTML5跨平台开发工具”。 这里是XDK的更详细介绍 。

  • Google Chrome and Firefox OS will allow you to create “Hosted Web Apps”, which can give your application extra features and capabilities, and even make your app installable on a users device.

    Google Chrome和Firefox OS允许您创建“托管的Web应用程序”,它可以为您的应用程序提供额外的功能,甚至可以将其安装在用户设备上。

  • Offline.js is a library that will notify your users if they have lost their internet connection.

    Offline.js是一个库,它将在您的用户失去互联网连接时通知您。

  • Famo.us is a javascript framework for building UIs that perform like native on any screen.

    Famo.us是一个JavaScript框架,用于构建在任何屏幕上都像本机一样运行的UI。

  • Treo is a jQuery like solution to using indexedDB.

    Treo是类似于jQuery的使用indexedDB的解决方案。

结论 (Conclusion)

We’re not yet at the point where the web can fully replace all native applications, but we can build high-performing responsive web applications right now. With new web APIs and libraries getting released every day, the web app is starting to look more appealing over traditional native apps. Let’s start building things on the web that perform like native apps, taking into consideration issues such as screen real estate, offline capabilities, and file size.

Web尚不能完全替代所有本机应用程序,但现在我们可以构建高性能的响应式Web应用程序。 随着每天都有新的Web API和库发布,与传统的本机应用程序相比,Web应用程序开始显得更具吸引力。 让我们开始在网络上构建性能类似于本机应用程序的东西,同时考虑诸如屏幕空间,脱机功能和文件大小之类的问题。

If you’re looking for a new side project, pick an application currently installed on your phone, and try to build a web app prototype. As a bonus, be sure to watch this great talk by Christian Heilmann where he touches on the subject of the web versus native applications,and what developers can do to make the web a better place to visit.

如果您正在寻找新的辅助项目,请选择手机上当前安装的应用程序,然后尝试构建Web应用程序原型。 另外,一定要观看Christian Heilmann的精彩演讲 ,他谈到了Web与本地应用程序的主题,以及开发人员可以做些什么来使Web成为更好的访问场所。

What native-app-like capabilities would you like to see implemented in the web platform?

您希望在网络平台上实现什么样的类似于本机应用程序的功能?

翻译自: https://www.sitepoint.com/long-live-web-app/

web应用程序和web网站

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_785197.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

joomla一键部署_如何在阿里云ECS上部署和托管Joomla网站

joomla一键部署This article was originally published on Alibaba Cloud. Thank you for supporting the partners who make SitePoint possible. 本文最初发表在阿里云上 。 感谢您支持使SitePoint成为可能的合作伙伴。 Joomla! is a free and open source content manageme…

seo策略_改善参与度指标的5种基本SEO策略

seo策略Every time someone types in a search query on Google, they’re given a list of results. 每当有人在Google上输入搜索查询时,就会得到一个结果列表。 The way in which those results are ordered is a highly complex algorithmic process that take…

wordpress环境安装_为什么暂存环境对于WordPress网站至关重要

wordpress环境安装This article is part of a series created in partnership with SiteGround. Thank you for supporting the partners who make SitePoint possible. 本文是与SiteGround合作创建的系列文章的一部分。 感谢您支持使SitePoint成为可能的合作伙伴。 Have you …

什么是您网站的正确图像格式?

This article is part of a series created in partnership with SiteGround. Thank you for supporting the partners who make SitePoint possible. 本文是与SiteGround合作创建的系列文章的一部分。 感谢您支持使SitePoint成为可能的合作伙伴。 As of March 2017, images m…

seo服务端渲染_我应该向SEO服务收取多少费用?

seo服务端渲染Good SEO might be the very reason you’re reading this article. As its name implies, SEO is the process of optimizing a website or web page to maximize visibility in search engine results, and it is hugely important for any business that maint…

wordpress 邮件_将您的WordPress网站变成电子邮件营销机器

wordpress 邮件With over 35,000 plugins available, there are few things that you cannot do with WordPress. 有超过35,000个可用的插件,几乎没有WordPress无法做的事情。 For many site builders, the ultimate goal is to reach as many viewers as possible…

微信小程序选择图片优化_如何选择完美的图像格式来优化您的网站

微信小程序选择图片优化This article was sponsored by Cloudinary. Thank you for supporting the partners who make SitePoint possible. 本文由Cloudinary赞助。 感谢您支持使SitePoint成为可能的合作伙伴。 When adding images to a website, most of us will instinctiv…

Visual Studio Community 2015:设置网站

This article was sponsored by Microsoft. Thank you for supporting the sponsors who make SitePoint possible. 本文由Microsoft赞助。 感谢您支持使SitePoint成为可能的赞助商。 For this series of articles, we’re going to use Microsoft’s modern IDE: Visual Stud…

wordpress移动_如何轻松地将WordPress网站转换为移动应用程序

wordpress移动Whether you are an advanced or novice WordPress user, for many companies and organizations, having an mobile app for your website can be a huge asset for improving overall reach. Unfortunately mobile development typically is a labor intensive …

八岐大蛇蛇的伤害算谁的伤害_避免诱惑损害网站性能

八岐大蛇蛇的伤害算谁的伤害SitePoint recently published Lean Websites, by Barbara Bermes—a book that presents the latest techniques for improving web page performance. In this article, Barbara details some of the performance pitfalls that all too often cat…

css gpu加速_五个CSS性能工具可加速您的网站

css gpu加速This article is part of a series created in partnership with SiteGround. Thank you for supporting the partners who make SitePoint possible. 本文是与SiteGround合作创建的系列文章的一部分。 感谢您支持使SitePoint成为可能的合作伙伴。 In this article…

php网站开发架构_PHP的干净代码架构和测试驱动开发

php网站开发架构The Clean Code Architecture was introduced by Robert C. Martin on the 8light blog. The idea was to create an architecture which is independent of any external agency. Your business logic should not be coupled to a framework, a database, or t…

小型企业服务器选择_小型企业的最佳免费和廉价网站选择

小型企业服务器选择Not long ago, if you wanted a website, you had to be willing to shell out at least a few grand for the most basic of static sites. I remember about ten years ago at a firm I worked for, quotes for ecommerce sites, or sites with other dyna…

cms数据库设计_使用Statamic CMS构建无数据库的网站

cms数据库设计A content management system (CMS) is a package of code around which you build a dynamic website—with components that change, adapt and update automatically, in contrast to a hard-coded, static site. 内容管理系统(CMS)是一揽子代码,您…

编辑器生成静态网页_使用静态网站生成器的7个理由

编辑器生成静态网页Static site generators have become increasingly popular and, if my prediction is correct, usage will explode during 2016. Let’s establish what we mean by the term “static site generator” … 静态站点生成器已变得越来越流行,如果…

wordpress 自定义_为您的WordPress网站设计自定义主页

wordpress 自定义WordPress is used on a large portion of sites on the web. It allows us to create a variety of different types of sites, but one of the most important components of any website is always the home page. The perfect landing page will help you …

编辑器生成静态网页_不使用静态网站生成器的7个理由

编辑器生成静态网页Trending posts on SitePoint today: 今天在SitePoint上的热门帖子: 7 Ways to Make WordPress Simpler for Users 为用户简化WordPress的7种方法 I Need a Website. What Do I Need to Know About Hosting? 我需要一个网站。 关于托管我需要了…

wordpress插件_审查的顶级WordPress SEO插件

wordpress插件WordPress provides great native SEO features, so might your theme. However, by using a dedicated SEO plugin (and knowing how to use it) we can further optimize our site. In this article we compare the top SEO plugins for WordPress side-by-side…

如何安装和使用WP-CLI来管理WordPress网站

Speeding up your work process should be one of your top priorities. Simply put, if you do more work in less time, then you will have more time to work on more projects, study and rest. 加快工作流程应该是您的首要任务之一。 简而言之,如果您用更少的…

wordpress快速建站_快速提示:使用WordPress联络表7增强选择加入

wordpress快速建站You might have heard the saying, “the money is in the list”. Your email list, to be exact. Email marketing is widely considered to be the most powerful form of marketing today, and there are plenty of stats to back it up. 您可能已经听说过…