作为Objective-C,cocoa和iPhone开发者的新手,我强烈渴望从语言和框架中获得最大的收益。 我正在使用的资源之一是斯坦福大学的CS193P课堂笔记,他们已经离开了networking。 它包括讲义,作业和示例代码,由于课程是由苹果开发者提供的,我绝对认为它是“从马口”。 class级网站: http://www.stanford.edu/class/cs193p/cgi-bin/index.php 08讲座涉及到一个分配,build立一个基于UINavigationController的应用程序,有多个UIViewControllers推到UINavigationController堆栈上。 这就是UINavigationController的工作原理。 这是合乎逻辑的。 但是,幻灯片中有一些关于你的UIViewControllers之间的沟通的严重警告。 我要引用这个严肃的幻灯片: http://cs193p.stanford.edu/downloads/08-NavigationTabBarControllers.pdf 页面16/51: 如何不共享数据 全局variables或单身人士 这包括您的应用程序委托 直接的依赖性使得你的代码更加可重用 而且更难debugging 好。 我对此感到失望。 不要盲目折腾所有用于viewcontroller与应用程序委托之间的通信的方法,并在应用程序委托方法中引用viewcontroller实例。 公平'nuff。 再进一步,我们得到这张幻灯片告诉我们该怎么做。 页面18/51: 数据stream的最佳实践 找出需要传达的信息 为您的视图控制器定义input参数 为了进行通信备份,请使用松耦合 为观察者定义一个通用接口(如委派) 这张幻灯片之后是一个看起来像一个占位符的幻灯片,然后讲师用UIImagePickerController的例子显然演示了最佳实践。 我希望video可用! 🙁 好的,所以…恐怕我的东西不太强。 上述报价中的最后一行我也有点困惑。 我在这方面一直在做相关的search,我发现看起来像是一篇体面的文章,谈论观察/通知技术的各种方法: http://cocoawithlove.com/2008/06/five-approaches-to-listening-observing.html 方法#5甚至指示代表作为一种方法! 除了….对象一次只能设置一个委托。 所以当我有多个viewcontroller通信,我该怎么办? 好的,那就是组build团伙。 我知道我可以在appdelegate中通过引用多个viewcontroller实例轻松地在应用程序委托中完成我的通信方法,但是我想以正确的方式执行这种事情。 请回答以下问题,帮助我“做正确的事情”: 当我尝试在UINavigationController堆栈上推送一个新的viewcontroller时, 谁应该这样做。 我的代码中哪个类/文件是正确的地方? 当我在一个不同的 UIViewController中想要在我的一个UIViewController中影响一些数据(一个iVar的值)时,什么是“正确”的方法呢? 假设我们只能在一个对象中一次设置一个委托,当讲师说“为观察者定义一个通用接口(如委派)”时,实现将会是什么样子? 如果可能的话,一个伪代码示例将非常有用。
我想禁用textarea的可resize的属性。 目前,我可以通过点击textarea的右下angular并拖动鼠标来调整textarea的大小。 我怎样才能禁用这个?
我最近听到了关于virtualenv的嗡嗡声,而且我很感兴趣。 但是我所听到的只是一丝赞美,对于它是什么以及如何使用它没有清晰的认识。 我正在寻找(理想情况下)一个后续的教程,可以带我从Windows或Linux没有Python,并解释每一步(没有特定的顺序): 我应该怎么做才能开始使用virtualenv 为什么使用virtualenv是一个好主意的具体原因 我可以/不能使用virtualenv 我应该/不应该使用virtualenv 并且(全面地)介绍应该可以变化的情况。 那么有什么好的教程可以涵盖这个东西呢? 或者如果你有时间和兴趣,也许你可以在这里回答一些这些问题。 无论是在你的答案,或者作为答案的教程链接,这些是我想知道的事情。
什么是(默认)字符集: MySQL数据库 MySQL表 MySQL列
我刚开始进入Node.js 我来自PHP的背景,所以我很习惯使用MySQL来满足我所有的数据库需求。 我如何使用MySQL与Node.js?
好的,说我有这个: <select id='list'> <option value='1'>Option A</option> <option value='2'>Option B</option> <option value='3'>Option C</option> </select> 如果我想得到“选项B”,当我有值“2”时,select器会是什么样子? 请注意,这不是要求如何获得选定的文本值,而只是其中的任何一个,无论是否select,取决于value属性。 我试过了: $("#list[value='2']").text(); 但它不工作。
什么是从项目中删除CocoaPods的正确方法? 我想删除整个CocoaPod。 由于我的客户强加一些限制,我不能使用它。 我需要只有一个xcodeproj而不是一个xcworkspace。
我对Enumerators如何工作和LINQ有一些疑问。 考虑这两个简单的select: List<Animal> sel = (from animal in Animals join race in Species on animal.SpeciesKey equals race.SpeciesKey select animal).Distinct().ToList(); 要么 IEnumerable<Animal> sel = (from animal in Animals join race in Species on animal.SpeciesKey equals race.SpeciesKey select animal).Distinct(); 我改变了我的原始对象的名称,使其看起来像一个更通用的例子。 查询本身并不重要。 我想问的是这样的: foreach (Animal animal in sel) { /*do stuff*/ } 我注意到,如果我使用IEnumerable ,当我debugging和检查“sel”,在这种情况下是IEnumerable,它有一些有趣的成员:“inner”,“outer”,“innerKeySelector”和“outerKeySelector”似乎是代表。 “内部”成员中没有“Animal”实例,而是“Species”实例,这对我来说很奇怪。 “外”成员确实包含“动物”实例。 我认为这两个代表决定哪一个进来,什么出来呢? 我注意到如果使用“Distinct”,“inner”包含6个项目(这是不正确的,因为只有2个是Distinct),但是“outer”包含正确的值。 […]
有没有PHP文件的静态代码分析器? 二进制本身可以检查语法错误,但是我正在寻找更多的东西,比如未使用的variables赋值,分配到的数组,而不是首先被初始化,以及可能的代码样式警告。 开源计划是首选,但如果强烈build议,我们可能会说服公司支付一些东西。
我原来是一个Java程序员,现在与Objective-C一起工作。 我想创build一个抽象类,但在Objective-C中看起来是不可能的。 这可能吗? 如果不是,我可以在Objective-C中得到多近的抽象类?