对于什么程序是Objective C和Ruby在Mac上的理想选择?

时间:2010-03-24 07:25:55

标签: objective-c ruby cocoa macos domain-driven-design

作为一个Mac局外人,似乎Mac上的两种流行的编程语言似乎是Objective C和Ruby。

据我所知,主要的API Cocoa似乎是为Objective C编写和优化的,但也可以使用Ruby。

是否存在每种语言理想的不同区域,例如,我可以想象Objective C可能是GUI层或独立桌面应用程序的理想选择,而Ruby可能适用于Web服务等。经典业务逻辑如何,或数据访问层?

例如,哪种语言对于服务库来说是个不错的选择?我们可以用一种语言编写一个库,并用另一种语言编写的主程序链接到它吗?

如果我想使用域驱动设计和依赖注入编写分层企业应用程序,哪些语言可以支持每个问题?像Mac开发者这样的DDD和DI之类的东西是不是很常见?

只是一个好奇的局外人。

1 个答案:

答案 0 :(得分:1)

如果我要编写一个大型应用程序,我会坚持使用Objective-C。它并不难,它是最受支持的选项,并且可以预见它会保持这种状态。至于Ruby,过去在Cocoa中不再存在Java支持。我不喜欢使用Java和Objective-C混合编写的大型遗留应用程序,并且有可能重写Java部件或坚持使用旧操作系统。

(上一段适用于编写纯桌面应用程序。如果你想要并且可以写一个应用程序的一部分说作为本地web服务,那将是完全不同的,因为Ruby支持将更加可靠。取决于你的人,经验,目标和其他变量。)

依赖注入和DDD都是抽象的想法,所以是的,你当然可以在Cocoa中做到这一点。我不知道有多少Mac开发者这样做。至于DI,对Cocoa和整个技术堆栈中的松耦合有很强的支持(参见Interface Builder,KVO / KVC或绑定)。

希望有所帮助。