问:风格纠错
答:
- 使用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;