代码之家  ›  专栏  ›  技术社区  ›  amit kumar

Java、Python或Ruby for Web应用程序?[闭门]

  •  32
  • amit kumar  · 技术社区  · 16 年前

    如果我今天从头开始实现一个web应用程序,我应该选择哪个应用程序堆栈?三个主要候选对象是java、python和RubyonRails(RoR)。也有.NET,但它偏向于M$。

    1) Stacks of thick books
    2) Largest developer community
    3) Typed languages, which prevents subtle bugs
    4) Augmented with groovy interpreted language
    

    Pro python:

    1) Concise code
    2) Thin books
    3) Can launch web app for free on Google Apps
    

    1) Concise code
    2) Thin books
    3) Ruby may be slightly better programming language than python, but they are converging.
    

    总体而言,python/RoR之间没有太多选择。我必须在Java和Python之间做出选择。我稍微喜欢java,因为它是一种类型化语言,但我的好朋友喜欢python,因为它更简洁。厚厚的java书籍是否意味着它的解决方案更全面(而且我必须自己编写更少的代码)?

    8 回复  |  直到 13 年前
        1
  •  26
  •   Guillaume    16 年前

    背景:我是一名专业的Java开发人员,兼职做Django。

    JAVA

    Java主要用于企业,这有很好的理由。如果您需要一种成熟的语言,对并发、事务、访问多个数据库有良好的支持,那么Java是一个很好的解决方案。。。Java也是一个非常稳定的平台。说到稳定,我不是说它的bug比Python或Ruby少,我是说它变化不大。

    对Java有极好的工具支持。伟大的IDE,伟大的重构工具,伟大的静态分析工具。。。对于任何其他语言,您可能找不到那么多具有这种质量的工具。

    有很多缓慢的Java应用程序,但在我看来,它更多地来自于使用他们不理解的体系结构的开发人员,他们试图做比他们需要的更复杂的事情。您可以使用Java开发高性能、非常快速的网站。

    德扬戈

    结论

    如果您已经了解Java,并且需要复杂的体系结构和长期支持,请使用Java。

        2
  •  22
  •   Swaroop C H    16 年前

    挑一个你熟悉的,带着它跑。

    或者你可以选择 Django on Jython 充分利用Java库和Python的快速编码。

    或者,如果您需要说服某人它是enterprise-y,那么选择Java。

        3
  •  12
  •   bobince    16 年前

    反Java:

    • 冗长的,有时繁琐的

    反Python:

    • 没有特定的标准框架,必须研究和选择(或者只在WSGI上使用独立的实用程序模块)

    • 在现代web脚本语言中没有本机Unicode?羞愧
    • 潜在的性能扩展问题

    就我个人而言,我最终选择了Python,但所有这些选项——以及.NET——都是很容易辩护的。

        4
  •  10
  •   informatik01 Viswanath Lekshmanan    11 年前

    我推荐Java和Spring框架——它解决了典型Java web应用程序的所有负担,并为您提供了获得所需内容的清晰方法。

    我会建议——让Spring开始尝试一下。

        5
  •  7
  •   David Andrei Ned Ahmer Kureishi    8 年前

    您的应用程序主要是演示、数据库(CRUD类型维护)还是大量后端逻辑?

    对于简单的积垢,RoR已经舔过了。

    对于任何使用大量后端逻辑或现有遗留数据库的东西,我会选择使用Spring和Freemarker、Ibatis、Tomcat或Jetty的java servlet。

        6
  •  4
  •   pbreitenbach    15 年前

    除非您是在Java/.net商店,或者您使用Java/.net有特定的原因,否则我建议您使用一种更适合web开发的平台:Python/Django(或者Ruby/Rails、PHP/CodeIgniter/Cake)。

        7
  •  2
  •   wvb    16 年前

    如果要投入生产,请使用您目前最熟悉的技术。学习一种新的框架、语言或技术可能会导致延迟,并且在开始时,您的代码质量会降低。

        8
  •  1
  •   tsimon    16 年前

    )一个真正的痛苦得到设置和运行。它还更适合于需要大量组织和可维护性的大型应用程序。然而,这是有代价的。

    从你帖子的声音来看,我认为其中一种动态语言更适合你。另外,他们玩起来更有趣(IMHO)。