繁体   English   中英

雪豹上的PyObjc和可可

[英]PyObjc and Cocoa on Snow Leopard

我即将开始我的A-Level计算项目(高中水平),它有望成为Mac OS的销售点应用程序。 不幸的是,Objective-C目前还不在我的联盟中,如果我在项目中遇到困难,我没有人帮忙,所以我会在课程部分失败而不能进入大学。 所以这对我来说非常重要。

我想用Python开发一个Cocoa应用程序。 我知道我需要PyObjc,但是网上的所有细节似乎都假设它已预先安装。 显然Leopard和Snow Leopard就是这种情况,但我似乎没有在Snow Leopard上使用它,也从未在Leopard上注意到它。 此外,我已按照Sourceforge页面上的说明尝试安装最新的PyObjc测试版,但没有运气。

如果有人能够了解需要安装的内容,如何以及可以帮助我的任何资源或教程的链接,我将非常感激。

在此先感谢您的帮助!

更新:我看到这是一个很受欢迎的问题,我刚刚得到了“值得注意的问题”徽章,所以我想我会在得到答案之后更新来到此页面的人。

不幸的是,我无法使用Python来创建Mac应用程序。 这在当时相当令人失望,但可能是一件好事。 我为我的项目在C#中创建了一个Windows应用程序,它是一个在模拟环境中创建和运行Assembly应用程序的工具。 我的课程老师现在开始使用我的工具来教授课程而不是他自己的课程! 我在计算项目上获得了很高的分数(超过90%),这有助于我在计算机A-Level(最高级别)中获得A *,因此我进入南安普顿大学学习计算机科学。

今年夏天,我决定制作一个iPad应用程序(即将发布),我很高兴地说我知道我可以在Objective-C中制作Mac OS应用程序,因为我觉得我已经学到了足够的东西。 我很高兴我花时间学习它,它是一种很棒的语言,对于iOS变得如此受欢迎非常有用。

抱歉所有的吹嘘,但我真的很高兴。 我真正想说的是,如果你来这个页面希望使用PyObjc轻松创建Mac应用程序,请不要打扰。 这需要一些时间和一些努力,但是一旦你学会了Objective-C,用它创建应用程序真的很令人满意。 祝好运!

请允许我回应已经说过的话。 我也是刚刚开始Cocoa开发项目的学生,一开始我想:“好吧,我已经知道Python了,我只会使用PyObjC并且不必学习Objective-C,这看起来超出了我的想象。 “ 我很快就知道它无法完成。 您可以在不学习Objective-C的情况下为OS X开发,但不能不学习Cocoa库,这些库构成了在Objective-C中编写Cocoa应用程序所需要的99%。 Objective-C本身并不那么难; 这是您需要投资学习的Cocoa库。

PyObjC基本上使用Cocoa库和Python语法。 我很快放弃了它,并决定如果我要学习Cocoa,我也可以使用Objective-C。

如果你想学习,Aaron Hillegass的书是一个很好的起点。 祝好运!

你的意思是像Checkout :-)我只提到它,因为Checkout很华丽,用PyObjC编写......

您的担忧是有效的,尽管可能不如您想象的那么大。 使用PyObjC仍然需要你学习一些Objective-C,并且肯定要求你至少理解一些Cocoa框架,因为你需要在需要执行某种Cocoa特定任务时调用Cocoa框架。

我建议你阅读并考虑SO问题“为什么PyObjC文档如此糟糕?” “PyObjc vs RubyCocoa for Mac开发:哪个更成熟?” 在你完全说服自己“只是PyObjC”会让事情变得更容易之前。 我拒绝贬低PyObjC,因为它非常强大且非常有用,但我意识到没有什么是灵丹妙药,没有任何语言或技术可以解决所有问题。

Objective-C语言简单而且非常简单。 Cocoa框架通常主导新Cocoa程序员的学习曲线。 此外,您还拥有StackOverflow和许多其他资源来帮助回答您的问题。 (根据“pyobjc”标签的活动来判断,你也有更好的机会在SO上获得良好的Objective-C帮助 。)

作为Checkout开发人员之一,我也会权衡一下(嗨Quinn!)。 从我们看到的PyObjC在Snow Leopard上运行得相当好。 我们已经在Leopard上构建了一个最新的SVN版本2.2b,其中包含一些自定义项,只是移动了site-packages文件夹。

从理论上讲,你应该能够使用内置的Python / PyObjC(只需要导入objc,Foundation,AppKit)但是当我们发布/使用Python和PyObjC的自定义版本时,我不确定状态究竟是什么。 邮件列表没有提到很多人有问题(只有少数),所以这可能是一个好兆头。

祝这个项目好运,如果你有特定的POS问题请给我发电子邮件;-)

我自己几乎不使用PyObjC,但我相信你需要在Snow Leopard DVD上运行Xcode安装程序才能使用PyObjC。

此外,正如Quinn所说,你需要至少了解一些Objective-C才能使用像PyObjC这样的Cocoa桥而不会撕掉你的头发。 它只是没有完全隔离你。

我在这里同意奎因的意见。 即使你已经精通Python,学习如何与Python和Cocoa接口也不会比使用Objective-C学习Cocoa更容易。

Objective-C是一种简单,干净的语言,很容易理解。 构建GUI并将其连接到后端将比学习Objective-C编写后端更难,并且构建GUI并将其挂起并不难。

按照Cocoa应用程序教程 (您应该能够在一天内完成它,或者如果你走得很慢,可能是一个周末)并且你将会很顺利。

我是一个很长时间的python开发人员,他现在已经做了一段时间的iPhone应用程序(并且只使用我的python知识来为运行脚本中的应用程序打包构建文件),然后谁开始制作一些PyObjC应用程序。

我不得不说,PyObjC几乎还不得不学习目标C(我已经通过iPhone开发人员知道了),但如果你使用它,你可以获得几个很酷的好处

  • 轻松使用您知道的python库(更快)
  • 选择删除它,如果由Cocoa设置,则转到wxPython
  • 更快的开发时间(你编写的代码更少,两种语言之间的翻译很容易习惯)。

另外,界面构建器相对来说比较习惯有点棘手,但是如果你是一个python开发者,那么你就不会完全习惯于功能性的gui构建器:oP

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM