在FreeBSD上使用Objective-C开发Web应用程序

7
我看到Clang 3.0端口将Objective-C作为开发语言,此外,我还发现这个端口"libobjc2-1.6"(支持Obj-C 2功能的替代Objective-C运行时)和"ofc-0.8.1_5"(Objective-C Foundation类库)。

假设我们考虑在FreeBSD上使用Objective-C来开发基于Web的应用程序(而不是使用Java在Tomcat/Glassfish上运行),我们该如何处理?
Objective-C开发是否实际在FreeBSD (9.0) 上工作?
需要下载和安装哪些东西(框架/库)?
哪个IDE?
正如我所提到的,假设我们打算开发一个Web应用程序,那么有哪些库?/库(我们还看到了“GNUstepWeb”——WebObjects的继承者——这是我们应该考虑的网络库吗?这是唯一的选择吗?其他选择呢?另外,GNUstep/GNUstepWeb能否在Clang 3.0下编译或利用上述提到的Objective-C端口("libobjc2-1.6"和"ofc-0.8.1_5")?这些端口相关吗?
有没有人成功地在FreeBSD上使用Objective-C(并在FreeBSD上部署)完成了Web应用程序项目开发?
注:基于Web的应用程序意味着它接收HTTP(RESTful)调用并与数据库交互(用于传统和/或NoSQL数据库)。

1
我刚刚看到可以使用clang构建GNUstep: http://wiki.gnustep.org/index.php/Building_GNUstep_with_Clang - ikevin8me
1
我认为最好的方法是在gnustep-dev ML中提出您的问题。 - mathk
5个回答

1
我正在编写一个库,使用FastCGI与名为CGIKit的服务器接口(https://github.com/xcvista/CGIKit),它可以在GNUstep上运行,而不是Cocoatron。

1

http://cocotron.org,这是苹果Objective-C运行时的一个端口(更像是重写)。

我仍然建议不要在Web堆栈中使用ObjC。我以前尝试过,必须说它涉及大量相当常见的代码,您需要为基本的HTTP服务器功能实现它们。

此外,Cocotron并不是特别快(作为运行时)。对于桌面应用程序来说还可以,但Web世界则更加严格。


0

0
在他的博客文章“在服务器上使用Objective-C”中,Graham Lee描述了如何设置一个最小的GNUStep-WebApp。显然,GNUstep-make的构建指令会有所不同,但除此之外,这似乎是一个不错的起点。
他还写了其他几篇文章(jQuery,AJAX),进一步探索GSW。

0

有人似乎成功地在FreeBSD 9.x上构建了Objective-C程序

如果您不介意使用Apple,就不必担心IDE。可以在Mac上编写,然后在FreeBSD上运行。(我个人认为这是两全其美的最佳选择) 在我看来,如果有一个带有Objective-C的服务器操作系统,FreeBSD将是第一个。

更严重的问题是库和框架。即使在OSX上,我们在Objective-C中也没有太多用于Web服务器开发的选项。但是我们可以包装现有的C/C++库(就像许多伟大的node.js、Python、Ruby库一样),我认为我们可以用很小的努力获得很多选择。

有些人担心安全性。我总是想知道网络上有多少基础程序是用C/C++和其他语言编写的。


我怀疑FreeBSD不会是第一个。除非你指的是Objective-C 2.0准备就绪(当然,运行时的作者是FreeBSD核心团队的一员)。也就是说,由于大多数GNUstep世界的Objective-C Web库是在GCC时期开发的。 - Fred Frith-MacDonald
@FredFrith-MacDonald 哦,没错。我忘记了旧版运行时。而且我认为我们不能直接使用旧版GNUstep库。所以如果有可能的话,我很乐意自己编写。 - eonil
那些旧框架正在生产中,它们可能需要一些补丁或者也许不需要。它们得到了很好的维护,所以我不知道为什么你会将它们描述为“遗留”。你认为不能使用这些库的依据是什么?你甚至都没有尝试过,对吧? - Fred Frith-MacDonald
我没有告诉你他们依赖于旧的运行时。而且LGPL不是GPL,所以这是一个很好的开始,确保你知道它们完全不同。 - Fred Frith-MacDonald
@FredFrith-MacDonald 好的,我明白了。关于遗留代码的问题,那是我的错误。至于许可证,(在我看来)LGPL 是对闭源产品的有条件提供。我担心未来出现无法满足条件的情况,这样我所有对代码的投资突然变得不可用。 - eonil
显示剩余2条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接