有人在Ada语言上进行严肃的Web开发吗?是否有可用于此类任务的库或框架?我特别感兴趣的是那些免费且开放源代码的。
如果有相关的指引,将不胜感激。
我非常满意AWS/Templates_Parser、XML/Ada和GNATColl。这三个实用的软件包能够帮助您在Ada语言下完成令人兴奋的事情。
我正在逐步转向Ada(我的业务中有很多使用PHP构建的内部工具),到目前为止,Ada已经成为了一个非常可靠的伙伴。现在,我真的很不喜欢回到PHP。我真正期待的是那一天,所有我的工具都由Ada驱动。
只要做好比“普通”Web语言更多的工作准备,就会获得比PHP更少漏洞、性能更好的最终产品(至少这是我的经验)。
已经有人发布了AWS的链接。以下是GNATColl和XML/Ada的链接: http://libre.adacore.com/libre/tools/gnat-component-collection/ http://libre.adacore.com/libre/tools/xmlada/
尝试使用AWS,这是我能找到的唯一合适的解决方案...
http://libre.adacore.com/libre/tools/aws/
但是 -
我仍然建议您学习一种更专门用于Web开发的语言,例如:PHP、asp.net、JSP ...
AWS是您如果想要在Ada程序中使用Web服务器或客户端的最佳选择之一,它也可能是目前维护最活跃的开源Ada项目之一,所以我相信有很多人正在使用它。
我自己曾经使用它为基于Windows的服务提供基于Web的配置和监视界面。它非常好用,并且使用起来很容易。
如果您只是想编写cgi脚本,其他人说的没错,有其他专门为此设计的语言。但是,我之前也用Ada编写过,效果非常好。许多脚本语言鼓励编写随着程序扩展而不会很好扩展的程序。 Ada程序通常没有这个问题。
不过,像C和C++这样的语言不会对数组边界进行自动检测,并且非常依赖指针。当暴露在互联网上时,使用它们编写的cgi会成为主要威胁。有些脚本语言也有这个问题。通常,您无法轻松地看到或修复它,因为它隐藏在语言运行时中。特别是当它们本身就是用C或C++编写的时候。因此,除非是非常简单的情况,我实际上鼓励在Web服务器脚本中使用Ada。
如果您正在使用Ada进行脚本编写,但想念脚本语言通常提供的更强大的字符串处理功能,请考虑查看Gnat's Spitbol包。它在Ada中实现了大多数SNOBOL字符串处理功能。如果您想做更复杂的字符串解析,则另一个选择是OpenToken,它允许您在Ada中构建自己的完整词法分析器和解析器。
然而,如果你想要开发一个流畅的复杂网站,最好使用某种内容管理系统(例如:Drupal)。我不知道是否有基于Ada构建的CMS,但大多数CMS用户也不会深入实现语言。理想情况下,你只需将组件连接在一起。
一般来说,Ada语言最严肃的应用出现在国防承包商圈子里,而不是Web 2.0群体中。
有更好的语言可以用于Web开发,但我在谷歌上没有找到任何预构建的Ada Web开发库或框架,我的同事们也对此一无所知。
话虽如此,如果你想使用Ada工具解决问题,你可能可以构建一些东西来编译HTML代码并将其移动到服务器的正确文件夹中。或者,通过Apache进行一些高级的即时编译HTML返回...虽然痛苦,但我认为这是可行的。