招聘靠譜程式設計師系列:1 程式碼風格優化與糾錯
阿新 • • 發佈:2018-12-09
問:風格糾錯
答:
- 使用NS_ENUM而不是C語言型別的列舉enum
typedef NS_ENUM(NSInteget, XBYGender) { //使用gender比sex正式
XBYGenderMan,
XBYGenderWoman
}
-
NSString一般使用copy修飾
-
一般定義一個初始化方法來對屬性進行賦值,而把具體屬性隱藏起來(放.m檔案中),
或者設定為只讀,不可外部修改(這裡傾向於設定為只讀) -
和enum一樣,儘量避免c語言的內容,將int改成NSInteger或者NSUInteger
@property(nonatomic, readonly, copy) NSString *name;
@property(nonatomic, readonly, assign) NSUInteger age;
@property(nonatomic, readonly, assign) XBYGender gender;
-
初始化一般是一個例項化方法一個工廠方法
-
初始化應該把屬性都有對應的賦值
-
返回值一般用instancetype而不是id
+ (instancetype)initWithUserName:(NSString * )name age:(NSUInteger)age gender:(XBYGender)genger;
- (instancetype)initWithUserName:(NSString *)name age:(NSUInteger)age gender:(XBYGender)genger;
- login本來就有動作的意思,不需要do
- (void)login;