iOS高级开发iOS Kit

《Effective Objective-C 2.0 编写高质量

2019-07-06  本文已影响1人  小生不怕

第一章 熟悉Objective-C

第1条:了解Objective-C语言的起源

 // Messaging (Objective-C)
Object *obj = [Object new];
[obj performWith: parameter1 and: parameter2];

// Function calling (C++)
Object *obj = new Object;
obj->perform(parameter1, parameter2);
NSString *someString = @"The string";

变量someString指向分配在堆里的某块内存,其中含有一个NSString的对象"The string"。另外Objective-C的对象分配总是分配在"堆空间"(heap space)中,有些不含有*的变量,它们可能会使用栈空间(stack space),例如CGRect类型的分配。而这些分配在"堆空间"的对象,需要内存管理(现在不用手动管理了)。

第2条:在类的头文件中尽量少引入其他的头文件

// EOCPerson.m
# import "EOCPerson.h"
// # import "EOCEmployer.h"

@class EOCEmployer;

@interface EOCPerson : NSObject
@property (nonatomic, strong) EOCEmployer *employer;

@end

将引入的头文件时机尽量延后,只在确有需要时才引入,这样就可以减少类的使用者所需引入的头文件数量, 减少编译时间。

# import "ViewController.h"
# import "EOCPerson.h"
# import "EOCEmployer.h"

@interface ViewController()

@end

@implementation

- (void)viewDidload {
     [super viewDidload];
     EOCPerson *person = [EOCPerson new];
     EOCEmployer *employer = [EOCEmployer new];
     employer.name = "Coder"; // 如果没有 # import "EOCEmployer.h"会编译报错
     person.employer = employer;
}

@end

持续更新。。。

上一篇 下一篇

猜你喜欢

热点阅读