javascript - 您会推荐 Python 或 NodeJS 来创建实时 Web 服务吗?

标签 javascript python node.js django socket.io

关闭。这个问题是opinion-based .它目前不接受答案。












想改进这个问题?更新问题,以便 editing this post 可以用事实和引用来回答它.

4年前关闭。




Improve this question




我想创建一个 Web 应用程序,即 实时本质上( 仪表板 )。我正在寻求关于我应该为项目选择什么堆栈以便长期维护它的建议,考虑到维护项目的时间和复杂性,维护 API .

以下是我的一些要求:

  • 仪表板上有关最近事件的实时更新。
  • 服务的适当 API。
  • 专注于问题,而不是处理配置和调整。

  • 问题 : 我对自己的选择感到困惑,很难做出从长远来看对我有帮助的决定。

    以下是我研究后发现的一些事情:
  • Python 和 NodeJS 都有用于 websocket 的框架(SocketIO、Greenlets、Twisted 等)。但是,JavaScript 对异步处理的支持更好。
  • 回调 hell 可能很糟糕。事实上,你不能期望一个函数的所有调用的返回值都是异步的(有 Promises)。但是,必须遵循体面的编程实践。
  • Python 使您可以更好地控制代码并且更易于维护。
  • 对我来说,Javascript 因出人意料而臭名昭著,在几次更新后就打破了一切。社区正在快速发展,但这对于企业级应用程序来说可能太快了。尽管如此,还是有像 PayPal 这样的大企业的例子,谷歌对此表示赞赏。
  • Javascript 正在成为新的酷炫,所以我更有可能为我的项目找到维护者或将来招募更多新人。
  • 与 Django/Flask 相比,使用 Express 在 JavaScript 中创建 API 之类的东西更容易。
  • 一个 Node 项目通常有很多模块(在 Github 上看一些项目),比如 BodyParser、Meteor、Webpack。我不认识他们,但感觉工作太多了。
  • Python 比较难拉屎,社区比较成熟稳定。与此相反,Node 有很多用于简单任务的模块,其中大多数是由不合标准的程序员创建的,只是因为它们更容易制作。 (无意冒犯你,你不是其中之一:P)
  • 有像 Firebase 这样的解决方案,但我想避免使用它,因为从长远来看,这会导致对专有工具的严重依赖。欢迎提出建议。

  • 我为什么要问?

    在日常生活中处理此类应用程序时,您可能比我更有经验。

    PS:我在 JavaScript 和 Python 方面都有不错的经验(在 Python 中效率更高)。但请不要将语言视为障碍。我想要一个解决方案,即使我的团队中有更多成员,他们也应该对代码库感到满意。

    编辑: Stack Exchange 不允许基于意见的问题。这不应该是一个。我打算从许多可用的解决方案中选择一个特定解决方案的人提出一个合乎逻辑的论点。在给出评论而不是意见之前,需要您在某个领域的专业知识。请不要将其搁置。

    最佳答案

    我认为这与其他任何事情一样都是个人喜好。我个人的偏好肯定是 NodeJS。原因是:

  • 像 Socket.io 这样的框架非常棒,而且很容易通过 npm 实现。
  • Node 移动很快,但我从来没有遇到过它打破我的麻烦。
  • 就像你说的在 JS 中创建 API 更容易。
  • NPM 太棒了! docs super 有帮助。

  • 归根结底,这是您的电话。话虽如此,我每天都会毫不犹豫地使用 nodeJS。

    关于javascript - 您会推荐 Python 或 NodeJS 来创建实时 Web 服务吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42185098/

    相关文章:

    python - 不同屏幕上的 cv2.imshow()

    javascript - 我想在 Action on Google 中添加列表

    node.js - 使用 Zombie.js 进行摘要式身份验证

    javascript - 使用点击事件隐藏和显示 div

    javascript - 使用 VS 2013 的自定义自动格式化程序 "Edit->Format Document"

    javascript - 使用 mindmup-editabletable.js 时显示的阴影

    javascript - Angular 5 : adding types to external JS file

    python - 来自 Pandas 数据框的 json 文件中的正斜杠

    python:从任何网站提取文本

    javascript - 如何使用 javascript 函数返回 Node 模块中的对象