ASP源码.NET源码PHP源码JSP源码JAVA源码DELPHI源码PB源码VC源码VB源码Android源码
当前位置:首页 >> 网络编程 >> IOS开发 >> iOS 进阶之路 1

iOS 进阶之路 1

来源:网络整理     时间:2016-03-20     关键词:

本篇文章主要介绍了"iOS 进阶之路 1",主要涉及到方面的内容,对于IOS开发感兴趣的同学可以参考一下: 1.指针分配在栈区,对象分配在堆区2.除非确实必要,否则不要引入头文件;如果一定要引入,尽量使用“向前声明” @class3.尽量使用字面量语法例如 : N...

1.指针分配在栈区,对象分配在堆区

2.除非确实必要,否则不要引入头文件;如果一定要引入,尽量使用“向前声明” @class

3.尽量使用字面量语法

例如 :   NSNumber *someNumber = @1;

               NSNumber *doubleNumber = @3.1415926;

               NSNumber *boolNumber = @YES;

               NSNumber *charNumber = @‘a';

创建数组/字典时也一样,因为字面量语法可以报错

例如: NSArray *array = @[ object_0 , object_1 , object_2 ]; 如果 object_1 为nil ,系统会报错,但是如果使用系统方法就不会。

可变字典:  NSMutableArray *mutable = @[@[@1,@2,@3,@4]mutableCopy ];

4.多用类型常量,少用#define预处理指令

声明局部变量 : 在.m 文件中  static const NSTimeInterval kAnimationDuration = 0.3;

声明全局变量 : 在.h  文件中  extern NSString *const MKMYManagerDidLoginNotification;

                           在.m 文件中  NSString *const  MKMYManagerDidLoginNotification = @“MKMYManagerDidLoginNotification”;

5.枚举

尽量使用枚举表示状态机的状态

typedef NS_ENUM(NSUInteger , MKMYConnectionState ){

          MKMYConnectionStateDisconnected,

          MKMYConnectionStateConnecting,

          MKMYConnectionStateConnected,

}

typedef NS_OPTIONS( NSUInteger , MKMYPermittedDirection ){

          MKMYPermittedDirectionUp = 1 << 0 ,

          MKMYPermittedDirectionDown = 1<<1,

          MKMYPermittedDirectionLeft = 1<<2,

          MKMYPermittedDirectionRight = 1 <<3,

}

第二种一般用于 传递给某个方法的选项为枚举 例如:MKMYPermittedDirection permittedDirections = MKMYPermittedDirectionUp | MKMYPermittedDirectionDown;  要使用第二种

在处理枚举类型的switch语句中不要实现default分支。这样的话,加入新枚举之后,编译器会提示开发者:switch 语句并未处理所有的枚举 


以上就介绍了iOS 进阶之路 1,包括了方面的内容,希望对IOS开发有兴趣的朋友有所帮助。

本文网址链接:http://www.codes51.com/article/detail_483139.html

相关图片

相关文章