学习Objective-C、Ruby还是Python? 我从最近的4-5年开始从事C++的工作。最近我买了iphone和macbook,想为iphone做一些编程

学习Objective-C、Ruby还是Python? 我从最近的4-5年开始从事C++的工作。最近我买了iphone和macbook,想为iphone做一些编程,python,objective-c,ruby,programming-languages,Python,Objective C,Ruby,Programming Languages,所以我开始读一本关于Objective-C的书。我还了解到我们可以在MAC上用Ruby和Python编程 所以我的问题是研究哪一个?你们看到了未来的哪种语言 我们可以在其他平台上用这些语言编程吗?还是这些仅限于MAC 我只是objective-C的初学者,需要一些专家的想法 AC作为珍珠岩,我只想指出OSX有Perl,也有Python或Ruby 就Perl/Python/Ruby而言,程序几乎完全是跨平台的。在任何平台上运行Perl/Python/Ruby程序都相当容易,其工作原理大致相同。可能

所以我开始读一本关于Objective-C的书。我还了解到我们可以在MAC上用Ruby和Python编程

所以我的问题是研究哪一个?你们看到了未来的哪种语言

我们可以在其他平台上用这些语言编程吗?还是这些仅限于MAC

我只是objective-C的初学者,需要一些专家的想法


AC

作为珍珠岩,我只想指出OSX有Perl,也有Python或Ruby

就Perl/Python/Ruby而言,程序几乎完全是跨平台的。在任何平台上运行Perl/Python/Ruby程序都相当容易,其工作原理大致相同。可能会有一些细微的差别,但它们并不重要

Objective-C虽然并不严格局限于OSX,但实际上只在基于OpenStep的环境中使用,这通常意味着OSX和iPhone。我所知道的唯一的Objective-C编译器是gcc,我想您可以在Linux上编写Objective-C,但我不知道Windows支持是否很好(如果存在)

至于哪种语言是“未来”的语言,所有3种(或4种)语言在未来都将被广泛使用。没有人能真正预测这类事情,也没有一种语言真的会消亡(除非苹果转换到一种新的语言作为制作Mac程序的“标准”),所以使用它们中的任何一种都是非常安全的


我的建议是:试一下,看看你认为哪一个最适合你的风格,然后学习它。

如果你想为iphone编程,那么你应该使用objective-C。整个iphone API都基于objective-C,并且你可以从Xcode使用界面生成器和IDE支持中获益。

如果你用objective-C编程,您的主要目标应该是在Mac上编写Cocoa应用程序。除此之外,它几乎没有什么用处。Ruby和Python是有用的脚本语言,也有编写Cocoa应用程序的桥梁

如果你想在Mac上编写应用程序,我会从Objective-C开始。这里有更多的支持


就未来而言,现在似乎很多人都在加入Ruby的行列。祝你好运。

Objective-C是编写iPhone的唯一方法,如果你想制作可以在应用商店出售的本机程序

Objective-C中的一些更高级的概念现在被添加到像C#这样的语言中(例如:C#v3.0中的扩展方法)。在Objto-C中学习思考是有用的,你学习的面向对象模型将适用于大多数其他语言和环境,作为C++体验的补充。 Ruby的对象模型比Python更接近Objective-C的对象模型,因此我建议您也学习Ruby,但在您牢固掌握Objective-C技能之前

注意,你可以使用Objto-C++,使用C++来实现你的GUI代码,你的文件上有.mm后缀——这在iPhone和MAC上都有作用。鉴于C++经验,这有助于提高生产率。


如果你想为iPhone编程,不必费心学习新的Objective-C2.0内存管理,但你仍然可以使用属性模型(iPhone实际上有Objective-C2.0运行时的一个子集)。

要在Mac OS X上编程,在Objtovi.C中,你确实需要一个很好的基础。绝大多数的文档都会假设Objto-C。即使你选择用其他语言编程一些应用程序,你也可以更好地理解它。 Objective-C具有很强的Mac特异性;当然,Gnu Objective-C编译器也适用于其他平台,当然也有,但我认为Objective-C现在主要适用于Mac和iPhone的编程

另一方面,Python和Ruby在许多平台上都可用(包括Windows和许多Unix方言)。就我个人而言,我更喜欢Python,但我想说这两种语言都非常有用,而且非常容易使用


还要注意的是,和都有Objective-C桥可用,这使您可以用这些语言中的任何一种编写非常奇特的Cococa应用程序。

您认为未来会使用哪种语言?

什么的未来?iPhone开发?目的-C

网络服务?Python/Ruby并行运行了一段时间。至少在人们开始尝试对大型Ruby应用程序进行维护并对其不透明性感到沮丧之前是这样

实时游戏引擎开发?嵌入式应用程序?什么的未来

“我们可以在其他平台上使用这些语言编程吗?还是这些语言仅限于MAC上?”

Ruby和Python:是的。它们设计用于在任何支持C的平台上运行

目标C:是的。它是开源的,在GCC中,几乎在任何地方都可以使用


学习一门新语言不是零和游戏。你可以学习多种语言;现在学习Objective-C并不妨碍您将来学习Python或Ruby。

Objective-C只是Mac/iPhone,如果您想为Mac/iPhone开发应用程序,我建议您学习。 Python是一切,也是它的未来,但Python更适合于web开发。Python是Google:)Python是web、游戏、科学、图形、桌面等。如果您是C/C++开发人员,它也是非常好的选择


<不确定我是否能推荐你学习Ruby…< /P> < P>我使用所有的语言C++,露比,Python和Objto-C.我喜欢不同的方式。如果你想像其他人一样进入Mac和iPhone开发领域,我推荐Objective-C

没有提到的好处之一是Objective-C是C的一个适当超集(C++几乎是一个超集),这意味着您可以实现所有的y
[rectangle setX: 10 y: 10 width: 20 height: 20];
  objc_msgSend(rectangle, "setX:y:width:height:", 10, 10, 20, 20);