【问题标题】:Webchat: Flash or Java or HTML5 or other? [closed]网络聊天:Flash 或 Java 或 HTML5 或其他? [关闭]
【发布时间】:2012-03-28 09:40:18
【问题描述】:

我想根据大学的要求开始制作一个在网络浏览器中运行的聊天客户端。这是我第一次做这样的事情,所以我对此进行了一些研究,主要是关于 HTML5。我研究了平台本身,它的速度和使用方式,但我最重要的因素是:移动支持

我计划开发这个聊天很长一段时间以获得经验,因为作为编码器/程序员我仍然缺乏经验。所以我也在考虑未来。我有一个聊天访问权限非常有限的论坛社区。我也想改变这一点,并额外包括移动支持。

我研究了 Flash、java 和 HTML5,它们是 Web 应用程序中最明显的两个选择,以及几乎是新来者 HTML5。

Flash 被更广泛地用作网络应用程序(至少是我所看到和发现的),并且它比程序员更面向设计师,但许多聊天都是用它编写的,并且被使用。但据我所知,它没有移动支持。这阻碍了我未来的计划。

Java 是一种强大的编程语言,并且在其中看到了一些网络聊天,但我的主要问题是性能:它比闪存慢得多。但至少有手机支持,至少是安卓手机。

至于 HTML5....它几乎还是个孩子,并不是所有的网络浏览器都完全支持它,但主要的浏览器已经支持网络套接字,除了 IE9。可悲的是,IE9 是最常用的网络浏览器。而且我在手机上找不到任何支持它。

而且我不知道互联网上有任何其他平台可以做到与上述三个相同,但我是开放的。

所以我的问题是:哪个是编写网络聊天的最佳平台,以免我在后期做移动支持?

【问题讨论】:

    标签: java flash html mobile livechat


    【解决方案1】:

    不,正确答案是:了解哪种方法部署速度快、成本效益高且易于学习。您需要集成语言才能完成这项工作。 HTML 5 是最新和最伟大的,仅此而已。 JAVA ~ 在 Android 方面仍然有需求..学习它.. Flash 快要死了..别学了。

    Windows ~ .NET..不要把这个排除在外......微软正计划推出一个移动平台......这仍然很好学......总是学习一门会给你工作机会的语言未来。

    【讨论】:

    • 我实际上认为,如果 Flash 是完成这项工作的正确工具,那么您应该学习 Flash,或者至少有足够的 Flash 来完成这项工作。事实上,如果发布者想要支持旧版浏览器,Flash 几乎肯定需要成为解决方案的一部分。
    【解决方案2】:

    你不能单独用 HTML 5 编写聊天(因为它在客户端上运行并且需要服务器代码),你需要 PHP 或 JSP。

    除非您已经非常熟练,否则我不会使用 Flash,因为:

    • 它需要一个额外的插件
    • 它经常阻止或崩溃某些浏览器
    • 我觉得开发难度很大,不确定开发软件是否免费

    所以我的默认选择是 Java Applet。它需要一个额外的插件,但它比 flash 稳定得多,而且无论如何你都需要它来处理许多应用程序,但它的功能非常多,很容易与之聊天。

    P.S.:Java 的速度对于聊天来说绝对没问题。 Java 可能比 C++ 落后 10%,具体取决于应用程序,但我们谈论的是 Flash 或 PHP 等语言,因此 Java 并不慢,但无论如何这都无关紧要,因为聊天几乎没有资源要求。

    【讨论】:

    • 是的,我知道我需要脚本语言,但我忘了提。主要是因为我在 HTML5 中看到的大部分内容都使用 JS,就像它是 HTML5 的一部分一样。
    • 再次感谢您的回答。我决定用 POST/GET 的 PHP 后端做 Java 小程序。实际上,这允许我使用任何前端软件,只要它可以以这种方式进行通信。
    【解决方案3】:

    正确答案是:视情况而定。您可以使用多种技术来实现这样的程序。这些技术中的每一种都有不同的特点和优缺点,但你已经提到这将是为大学任务而设计的。这种方式我推荐你选择HTML5,这是一项相当新的技术,我觉得值得在这方面有一点经验! 如果你想在这个项目上做最少的工作,你应该使用 java。 这是我的意见。

    【讨论】:

    • 您不能单独在 HTML 5 中编写聊天程序... HTML 只是标记,您需要一种编程或脚本语言来做到这一点,并且需要一个服务器(使用 PHP 或 JSP)或执行的插件该代码类似于带有小程序的 Java JRE。
    【解决方案4】:

    你应该看看nodejs:

    http://nodejs.org/

    还有用于 nodejs 的 socket.io 模块,它允许您使用 websockets 作为支持浏览器的传输机制,并为旧浏览器提供回退方法:

    http://socket.io/

    有一个可能有用的node and socket.io chat tutorial 和一个有效的chat demo based on node(虽然我在查看代码时看不到任何对socket.io 的引用)。

    【讨论】:

    • 我检查了一下,我对 node.js 的问题是:你需要为你自己的服务器设置它。现在我只有我的本地主机和共享主机。主要观众(我的社区)在那里,我不知道我大学的服务器,但他有可能无法使用它。还是我在这里有某种误解,
    • 是的,您需要在网络服务器上运行 nodejs。对于您的本地开发环境,nodejs 官方站点提供了一个 Windows 安装程序供下载,我知道在虚拟机上运行的 Ubuntu 安装中设置 node 很简单。至于托管,如果您的大学/共享托管无法为您提供节点设置,您可以调查一些免费的节点托管服务。在这个阶段可能还值得检查您的共享主机提供的服务器端技术。正如 Kirdie 指出的那样,这将需要一个后端。
    【解决方案5】:

    我不会使用 Flash 打折。它仍然是 Web 开发的行业标准。它比 Java 小程序快得多,但你是对的,Java 不会去任何地方。 Flash 允许您将项目部署到 Web、Mac 和 PC 上的独立应用程序以及移动设备上。

    【讨论】:

    • 为什么要投反对票?你不喜欢我帖子的哪一部分?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-08-08
    • 2011-02-06
    • 2017-07-06
    • 1970-01-01
    • 1970-01-01
    • 2013-05-03
    • 2013-10-31
    相关资源
    最近更新 更多