3

我需要学习一种用于编写 Web 应用程序(而不是网站!)的语言。

在对谷歌和 stackoverflow 进行一些研究之后,我最终认为选择应该属于:

1) Ruby + Rails

2)Python + Django

3) C# + ASP.NET

可以肯定的是,即使随机挑选一个也不是一个坏选择,但我的问题是针对 UI 控件的。我来自 win32 开发世界,所以在我过去的经验中,我曾在 DevExpress 和 Telerik 等销售 ASP.NET(或 silverlight)控件的网站上工作,如高级网格、调度组件、树列表......

所以涵盖了 ASP.NET,因为 Ruby/Python 对我来说目前是完全未知的,你能否请你对 UI 方面有所了解?我的意思是在这些世界中如何管理 UI 控件?在哪里可以找到它们?

一切都是使用 ExtJS 或 JQuery 之类的库完成的吗?它是如何工作的?(这是一个新手问题,所以请原谅过于简单的方法)。

4

3 回答 3

3

Ruby on Rails 是一个服务器端框架,用于处理 HTTP 请求并使用 HTML† 进行响应。它没有您所指的那种 UI 控件的任何概念。

但是,它可以与 ExtJS 或 jQuery 等 JavaScript 框架集成,并且有一些 Rails 插件或 RubyGems 可以使这种集成更容易。例如,这个 Railscast展示了在 Rails 应用程序中使用日历的示例。

†通常是 HTML。它还可以使用 XML、JSON、文本或您真正喜欢的任何内容进行响应。

于 2010-07-30T10:18:27.457 回答
2

HTML 仅提供一些“默认控件”。例如下拉菜单、按钮、超链接和复选框。

必须使用 javascript 和图像的组合在页面顶部构建更精细的控件,例如网格或树列表。有几个库可以做到这一点,我最喜欢的是jquery UI

Ruby + Rails 不包含任何“开箱即用”的复杂 UI 元素(只是简单的控件),但包含 jquery UI(或任何其他 javascript 库)并不是很困难。

我对 Python 和 Django 没有太多经验,但它们或多或少是相同的历史:默认情况下,它们不带有“高级控件”;他们只是提供常规的 html 控件。

我对 ASP.NET 的经验更少。它很可能带有一个 UI 库——你必须看看它。

我还有其他一些评论:您可能过于重视 UI 元素。Web 应用程序与网站的区别不在于它使用这个或那个控件。这是发生在服务器端的事情。这可能是您将大部分时间花在开发东西上的地方。

考虑到这一点,我建议您重新考虑您的问题。与其问自己“什么让我更容易获得更多 UI 元素”,不如问问自己“什么让我更轻松地开发服务器端”。

我对第二个问题的回答是“可能是 Ruby on Rails”。一开始它附带的东西的数量可能并不明显,但它强制执行了许多好的实践——从命名约定到测试,再到不显眼的 javascript(主要是在 rails 3.0 上的那个)。名单还在继续。最重要的是,它的社区很棒。

无论如何,请注意这只是我的观点,我对其他 2 个系统不是很有经验 - 我只是给了他们一些探索性的外观。您应该使用其他来源进行检查。

于 2010-07-30T10:07:31.083 回答
1

如果您已经熟悉 C# 和 ASP.NET,为什么不使用它呢?

当然,如果您了解 Python,那么Django 文档是一个很好的起点。即使您不了解 Python,它们至少也会让您了解学习/使用 Python+Django 需要什么。

于 2010-07-30T13:40:20.720 回答