0

是否有一种适合构建 Web 应用程序的编程语言,即编译型、强类型,而不是 ASP.NET?

我想过使用 Mono ( http://www.mono-project.com/ ),但我想知道是否还有其他选择。

(如果语言和框架是开源的,那是一大优势!)

4

8 回答 8

8

不知道你说的“编译”是什么意思。Java 呢?

Java 有很多用于 Web 开发的框架。例如挂毯

Tapestry 是一个开源框架,用于在 Java 中创建动态、健壮、高度可扩展的 Web 应用程序。

于 2008-10-02T07:53:23.240 回答
5

Java 满足所有标准

于 2008-10-02T07:56:49.457 回答
4

如果您的意思是编译为 win32 代码,而不是中间语言,请尝试Delphi

于 2008-10-02T08:49:26.600 回答
3

spring框架和java语言。

http://www.springframework.org/开源并在业界广泛使用。

特别是检查 spring-mvc 和 spring web-flow 模块,它们使创建 web 项目变得更加简单。

于 2008-10-02T08:04:03.387 回答
2

是否有一种适合构建 Web 应用程序的编程语言,即编译型、强类型,而不是 ASP.NET?

只是为了完整起见:理论上,甚至可以使用Ada来满足这些要求:

AdaCGI是“通用网关接口”(CGI) 的 Ada 95 接口。AdaCGI 使创建可由万维网 (WWW) HTTP 服务器使用标准 CGI 接口调用的 Ada 程序变得更加容易。使用它,您可以创建 Ada 程序,根据 WWW 用户的请求执行查询或其他处理。AdaCGI 以前被命名为“Package CGI”。AdaCGI 是开源/自由软件,使用 LGPL(“一般公共许可证”)许可证发布。

Ada for the Web:本网站致力于推广使用 Ada95 作为编程 Web 和 Internet 小程序和应用程序、服务器和浏览器的主要语言。

在http://libre.adacore.com/libre/tools/aws/上还有 Ada“aws”包

首先,AWS 代表 Ada Web Server,但它不仅仅是另一个 Web 服务器……</p>

AWS 是一个用于开发基于 Web 的应用程序的完整框架。该框架的主要部分是嵌入式 Web 服务器。这个小而强大的 Web 服务器可以嵌入到您的应用程序中,因此您的应用程序将能够与标准的 Web 浏览器(例如 Microsoft Internet Explorer 或 Netscape Communicator)进行通信。围绕这个 Web 服务器已经开发了很多服务。

该框架包括:

* A Web parameters module. This module takes care of retrieving the forms or URL parameters and to build an associative table for easy access.
* A session server, this is a very important module to be able to keep client’s data from page to page.
* Support SOAP to develop Web Services.
* A tool (based on ASIS) to generate a WSDL document from an Ada spec.
* A tool to generate Web Services stubs/skeletons from a WSDL document.
* A template parser, this module makes it possible to completely separate the Web design from the code. No more scripting into your Web page. This template engine is amazingly fast due to its concurrent cached compiled templates support.
* An Ajax runtime based on templates hiding javascript.
* Support for Secure Sockets (HTTPS/SSL), this is based on OpenSSL library.
* Support for large servers using dispatchers based on URI, request methods, timers.
* Support for virtual hosting (dispatchers based on the host name).
* Support for server push.
* A directory browser ready to be used in any application.
* A status page to get many information about the current AWS server.
* A log module. Log files keep information about all resources requested to the server.
* Hotplug modules which can be loaded/unloaded dynamically to add specific features to a server.
* A light communication API to exchange data between applications using the HTTP protocol.
* A configuration API to tune/change the server parameters without recompilation.
* A client API to retrieve any Web page from a Web site.
* A Web Page service to build a simple static page server.
* Support for SMTP, LDAP and Jabber protocols.
* And more…

使用 AWS 构建的服务器非常易于部署。您只需要复制并启动一个可执行文件。无需执行 Web 服务器安装和配置步骤。

有关aws 文档,请参阅http://www.adacore.com/wp-content/files/auto_update/aws-docs/aws.html

http://en.wikibooks.org/wiki/Ada_Programming/Libraries/Web

于 2010-03-17T21:12:56.883 回答
1

你到底在问什么?

您是要编译的东西还是高性能的东西?
您是在要求强类型的东西,还是要求能够轻松帮助您调试错误的东西?(单元测试有时是编译器的更好替代品)
您的客户是否要求它不是用 ASP.Net 编写的?
是否存在无法运行 .Net 代码的技术要求?

您正在寻求一种技术来解决您尚未正确定义的问题。

于 2008-10-02T08:01:32.517 回答
1

Mono 不是一种不同的编程语言,它只是 .NET 框架的开源实现,适用于 Unix 系统(以及 Mac)。它旨在与 .NET 完全兼容,因此您最终会以同样的方式使用 C# 和 ASP.NET。

于 2008-10-02T08:24:16.973 回答
0

也许您的意思是“编译为机器代码”?

C# 和 Java 被编译成中间语言,然后在运行时进行解释。

大多数体面的解释器在运行时将其编译为实际的机器代码以加快速度(即时编译)。

当然它的效率不高,但许多语言功能否则将很难实现(例如垃圾收集)。

还有一种中间语言可以让你编译的代码在不同的平台上运行。

于 2008-10-02T08:20:14.157 回答