我被自己的网站和网络应用程序之间的区别难住了。在我看来,一个网站指向一个特定的页面,而一个网络应用程序更像是某种内容和信息的“门户”。

但让我困惑的是,web应用程序仍然是通过浏览器查看的(不是吗?),网站仍然可以动态地查看内容,这使得网站和应用程序之间的界限非常模糊。

例如,一个网站使用ASP。NET或AJAX等成为一个web应用程序,因为它可以动态和异步检索数据,或者使用PHP和CMS的网站更像一个web应用程序,因为它根据客户端的请求和数据库中的内容形成页面?

也许我在这里完全错了——web应用程序和网站之间有什么区别?


当前回答

There is no real "difference". Web site is a more anachronistic term that exists from the early days of the internet where the notion of a dynamic application that can respond to user input was much more limited and much less common. Commercial websites started out largely as interactive brochures (with the notable exception of hotel/airline reservation sites). Over time their functionality (and the supporting technologies) became more and more responsive and the line between an application that you install on your computer and one that exists in the cloud became more and more blurred.

如果你只是想在谈论你正在构建的东西时清楚地表达自己,我会继续将交互式小册子或名片描述为“网站”,并将实际上更像应用程序的东西描述为web应用程序。

最基本的区别是,如果一个网站有一个支持数据库,存储用户数据,并根据用户指定的标准修改用户所看到的内容,那么它可能是某种类型的应用程序(尽管我不愿意将Amazon.com描述为web应用程序,尽管它有很多非常特定于用户的功能)。另一方面,如果它主要是相互链接的静态.html文件,我将称其为网站。

如今,大多数情况下,web应用程序的大部分功能都是在客户端上运行的(根据实现方式,使用javascript或actionscript完成大部分处理),并通过http进程返回到服务器以支持数据。用户不会频繁地从一个页面移动到另一个页面,而是在一个为他们创造应用体验的“页面”上体验他们将要体验的任何东西。

其他回答

我说一个网站可以是一个web应用程序,但更多情况下一个网站有多个web应用程序。两者之间的关系是一种组合:网站由应用程序组成。

约会网站可能有一个照片上传的网络应用程序,一个日历应用程序,这样你就可以标记你在和谁约会。

这些应用程序嵌入整个网站。

web应用程序是一个网站,就像正方形是一个矩形一样。

应用程序部分是模型-控制器组合。web部分(视图)是它被称为网站的原因。

仅仅是一个网站而不是一个web应用程序的东西就缺少了动态方面。

当然,很难确定需要多少服务器端处理才能使其成为一个web应用程序。可能是当它有数据存储时。

因此,你混淆了web应用程序的主要角色。网站的主要作用是提供信息。web应用程序的主要作用是使用动态内容(做某事部分)通知。

这完全是个人和主观的,但我想说的是,网站是由其内容定义的,而web应用程序是由其与用户的交互定义的。也就是说,一个网站可以由一个静态的内容存储库组成,可以分发给所有的访问者,而一个web应用程序依赖于交互,需要编程用户输入和数据处理。

例如,新闻网站是“网站”,而电子表格或协作日历则是网络“应用程序”。新闻网站向所有访问者显示本质上相同的信息,而日历则处理个人数据。

实际上,大多数内容快速变化的网站也依赖于复杂的编程(和/或数据库)后端,但至少在原则上,它们只由输出定义。另一方面,web应用程序本质上是一个远程运行的程序,它基本上依赖于处理和数据存储后端。

我不确定是否有一个绝对权威的答案,但你可以把它看作是当请求到达web服务器时发生的区别。可以通过让服务器返回一个已经生成的文件(静态内容)来处理请求,也可以将请求传递给应用程序,由应用程序生成响应并发送回浏览器(动态内容)。

这两种类型都被称为网站,但只有由应用程序生成内容的类型才被称为web应用程序。

应用程序是如何编写的并不那么重要。它可能是ASP, PHP, Ruby, JavaScript甚至C或c++。

There is no real "difference". Web site is a more anachronistic term that exists from the early days of the internet where the notion of a dynamic application that can respond to user input was much more limited and much less common. Commercial websites started out largely as interactive brochures (with the notable exception of hotel/airline reservation sites). Over time their functionality (and the supporting technologies) became more and more responsive and the line between an application that you install on your computer and one that exists in the cloud became more and more blurred.

如果你只是想在谈论你正在构建的东西时清楚地表达自己,我会继续将交互式小册子或名片描述为“网站”,并将实际上更像应用程序的东西描述为web应用程序。

最基本的区别是,如果一个网站有一个支持数据库,存储用户数据,并根据用户指定的标准修改用户所看到的内容,那么它可能是某种类型的应用程序(尽管我不愿意将Amazon.com描述为web应用程序,尽管它有很多非常特定于用户的功能)。另一方面,如果它主要是相互链接的静态.html文件,我将称其为网站。

如今,大多数情况下,web应用程序的大部分功能都是在客户端上运行的(根据实现方式,使用javascript或actionscript完成大部分处理),并通过http进程返回到服务器以支持数据。用户不会频繁地从一个页面移动到另一个页面,而是在一个为他们创造应用体验的“页面”上体验他们将要体验的任何东西。