代码之家  ›  专栏  ›  技术社区  ›  David Kanarek

从iPhone到Mac编程

  •  10
  • David Kanarek  · 技术社区  · 16 年前

    我已经浏览了这个网站,以确保这不是一个副本。如果我错过了什么就道歉。

    我做iPhone开发已经有一年了,我对Objective-C、Xcode和Cocoa(至少是iPhone上使用的软件)很满意,但OSX的编程似乎更为复杂。

    像我这样的人有什么好的免费资源?我所看到的大部分内容都是关于学习Objective-C和Cocoa的,我真的很想了解我不熟悉的ib部分,以及其他在苹果操作系统X上不重要的东西。

    3 回复  |  直到 16 年前
        1
  •  6
  •   Mason    16 年前

    虽然iphone开发环境并不是mac的一个子集,但由于有一些改进的和iphone特有的位,它几乎是如此(主要是好位)。因此,Mac可能是最容易从iPhone移动到的平台。

    在Mac上,您将特别想了解Cocoa绑定,它在许多现代用户界面下都可以工作,但还没有(现在)在电话上。

    为了解决您的特定问题,一些备受尊敬的免费MAC编码资源包括:

    • 规范的 cocoa-dev mailing list 由苹果运营(不幸的是,苹果只实施了令人遗憾的蹩脚的网络访问,偶尔也会因不可靠的第三方努力而得到增强,这使得它通过从您的一个电子邮件帐户中实际订阅而变得最有用)
    • 这个 CocoaDev wiki
    • 流氓阿米巴的MikeAsh有一个非常有用的周五问答系列 blog
    • Aaron Hillegas的高级Mac编程书, Advanced Mac OS X Programming
    • 虽然苹果的文档现在已经相当不错了,但在过去糟糕的“即将到来的描述”时代,我们中的很多人都从知名软件公司发布的开源代码中了解到了Mac OS X是如何运行的,比如 Omni's frameworks 您可以自由地将其嵌入到应用程序中,或从中选择代码

    (嗯,我通常不在这里发帖,所以我被禁止超链接上述参考资料…我可以把它们作为文本放进去吗?嗯,不!嗯,我想,谷歌总是有的。)

        2
  •  3
  •   Saurabh Sharan    16 年前

    值得庆幸的是,桌面上的可可和触摸可可非常相似。我建议您从苹果的网站下载一些初学者示例代码。既然你已经知道了目标C/COCO,你应该能够很容易地跟随它。如果某些部分令人困惑,您可以浏览苹果的指南。

    相同的事情:

    • 设计模式(目标/动作、委托、数据源、第一响应者等)
    • Objtovi-C
    • 界面生成器

    不同的事情:

    • 控件只能有一个目标和操作。在iPhone上,你可以有一个目标/动作来进行内部润色,外部润色等等。在Mac上,只有一个目标/动作。
    • 用于加载XIB的nsWindowController(不过概念上类似于uiviewController)

    编辑:总体而言,iPhone的主要不同之处在于它有更多的“预建”用户界面类(uinavigationcontroller、uitababarcontroller等),您可以在应用程序中使用这些类,使其看起来美观(最重要的是,与苹果应用程序保持一致)。

        3
  •  3
  •   lucius    16 年前

    我从MacOS开发开始,然后去了iPhone开发。您可能已经了解了有关API如何工作的核心概念。我所看到的从iPhone过渡到Mac的开发人员最大的问题是如何使用Mac用户希望他们的应用程序能够工作的所有微妙方式。像处理向上翻页和向下翻页键来滚动你的视图(很遗憾tweetie不支持这个功能)。或者处理多个窗口。或多个显示尺寸(确保不要将窗口置于屏幕之外)。

    对于技术编程问题,苹果自己的文档是最好的开始。就我所知,没有一本书或一个网站能给出所有答案,这对于苹果操作系统的设计和正确操作有着细微的差别。这主要来自于使用苹果设计奖得主的应用程序以及模仿它们的工作。