使用ObjC(不需要Apple风格)开发服务器端Web应用程序是否可行/可行? GNU ObjC工具链是否可用?请分享您的想法和经验。
UPD。我希望通过具体的实践经验听到更多的答案,比如“我试过/使用....而且很棒/很糟糕,因为......”。 300赏金!
UPD2。我的问题背后的基本原理是我即将开发一个带有大型基于Web的后端的iOS应用程序,并认为对两个部分使用相同的工具链/ IDE会更好。但是,唉,到目前为止的答案表明这是不可行的。谢谢大家花时间。
答案 0 :(得分:17)
市场肯定已经确定的答案是肯定的,这是可能的,而且不是,尝试将这样的东西推向市场是不可行的。 Apple的WebObjects(Apple在线商店使用的)曾经是Objective-C,甚至将它们转移到了Java。
对于GNU Objective-C工具链,我对其未来也不会非常乐观。由于他们转移到GPLv3,Apple已经抛弃它们并围绕LLVM构建了自己的Objective-C编译器,因此这些代码路径可能在GNU方面有点生疏。 GNU“支持”在阳光下的一切,但是越多的东西被使用,它的实现就越被审查。
对于“我使用过”位,是的,我在当天使用了WebObjects的Objective-C变体。它的时间非常好,但Objective-C的内存分配需求相对较低,而非C语法使它有点尴尬。它的强大打字非常适合核心开发,但对于Web开发的“脚本”方面来说却很麻烦。
最后,如果一种语言是图灵完备的,理论上你可以用另一种语言做任何事情,但是解析器,脚本,数据库交互,索引等缺乏图书馆生态系统意味着你与Java或JVM兼容的语言相比,它将从相当深的山谷开始。
答案 1 :(得分:8)
有一个名为Cappuccino的javascript框架,它使用与Objective-C非常相似的语法,它们称为Objective-J。但作为一个长期的Cocoa开发人员,我更喜欢不复制Objective-C语法的Sproutcore,但它确实借用了Cocoa,因为它是由前Apple工程师创建的。
如果您正在考虑服务器端开发,我想您可以这样做但是学习一些流行的服务器端语言可能需要花费更少的精力而不是使用Objective-C来完成并运行
答案 2 :(得分:7)
有Frothkit。但是,它自2010年以来一直没有更新,主要是因为Rails和Django等其他语言的成熟框架。
答案 3 :(得分:6)
Apple的WebObjects在移植到Java之前最初是一个Objective-C平台。 GNUStep的一个子项目,名为GNUStepWeb,旨在与WebObjects 4.5兼容 - 最后一个版本支持Objective-C(2000年发布)。我不确定实施的完整程度,但一年多来没有太大的发展。
答案 4 :(得分:4)
Apple过去(现在仍然部分地)使用WebObjects构建他们的Web东西,它将MVC结构和Cocoa应用程序的许多设计模式移植到基于Java的Web服务器框架。我最近看到有人试图用Obj-J创建一个名为Womble的服务器端框架。不过看起来还是很生气。无论哪种方式,我都不知道纯粹的Obj-C Web框架实现......