// enum的写法
typedef enum{
WBUserSex_Man,
WBUserSex_Woman
}WBUserSex;
//typedef NS_ENUM(NSUInteger, <#MyEnum#>) {
// <#MyEnumValueA#>,
// <#MyEnumValueB#>,
// <#MyEnumValueC#>,
//};
//
//typedef NS_OPTIONS(NSUInteger, <#MyEnum#>) {
// <#MyEnumValueA#> = 1 << 0,
// <#MyEnumValueB#> = 1 << 1,
// <#MyEnumValueC#> = 1 << 2,
//};
/* 我的看法 1. 添加前缀 */
/** 标准答案的修改:
* 1. enum使用NS_Enum 和 NSOPTIONS
* 2. 性格中仅仅包括男女不够严谨
*/
// 1. 冒号前后都有空格
@interface WBUserModel : NSObject
// 2. 属性的写法
/**
我的看法:
1> property 后要空一格
2> 括号内要包含属性的基本特征,比如原子性,内存管理,沙盒管理,并按此排序有序
3> 属性的基本特征之间用逗号分开,并且后一个属性与逗号之间要空一格
4> 属性名要表达清楚属性的特本含义,让其他程序员一读名字,基本就知道其含义
*/
/** 标准答案:
* 1> age属性避免基本数据类型,要用Foundation里的数据类型
int -> NSInteger
unsigned -> NSUInteger
float -> CGFloat
动画时间 -> NSTimeInterval
* 2> 这是一个model,login属于业务逻辑,不应该方法这里,无论是mvc还是mvvm模式,都不
应该,mvc放在c,mvvm放在vm里
*/
/** name */
@property (nonatomic, copy, readonly) NSString *name;
/** age */
@property (nonatomic, assign, readwrite) NSUInteger age;
/** WBUserSex */
@property (nonatomic, assign, readonly) WBUserSex sex;
// 3. 实例方法的写法
/** 我的看法:
* 1. "-" 符号后面 要空一格,尽量不要使用id,使用instancetype
* 2. initWith后面就不要跟类名了,直接接参数名就好(比如UserName,直接用name)
* 3. 参数名尽量简洁,直接表达参数类型和用意, 参数之间的连接不要用and,用空格就好
* 4. 方法就是动词,不要加do
* 5. login本身就是一个词,不需要把in的首字母大写
*/
/** 标准答案:
* 1. and不应该连接两个参数,应该是两个操作,但即使是有两个操作,也应该是分开来写
* 2. 方法只给了name、sex的初始化,那么年龄呢?参数不全
* 3. 初始化方法要么提供所有参数(designated初始化),要么提供部分参数,然后调用
designated初始化方法完成实例化,由于这里漏掉了age,因此age是可修改的,应该使用
readwrite,而sex是在初始化方法里,则应该是不允许修改,所以readonly
* 4. 根据接口设计原则,在设计好初始化方法后,理应搭配一个快捷构造方法(+)
* 5. 在设计好所有参数的初始化方法后,理应把所有参数设计为readonly,外面不允许修改,只
允许在初始化时,修改属性
* 6. 比如userModelWithUserName可以简化为userWithName,能表达寓意,又简洁即可
* 7. 属性的排列顺序应该是:原子性、可读可写性、内存管理。
*/
- (instancetype)initWithName:(NSString *)name age:(NSUInteger)age sex:(WBUserSex)sex;
- (instancetype)initWithName:(NSString *)name sex:(WBUserSex)sex;
+ (instancetype)userWithName:(NSString *)name age:(NSUInteger)age sex:(WBUserSex)sex; // 这个model要还是不要?这个model不需要,足够简洁,能表达含义即可
- (void)login;
回顾enum,属性,方法的一些简单写法
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 【蝴蝶效应】 蝴蝶效应:上个世纪70年代,美国一个名叫洛伦兹的气象学家在解释空气系统理论时说,亚马逊雨林一只蝴蝶...
- 怎样反思自己的教学——学习杜威《我们怎样思维》有感 2015-01-13 14:56:52 来源:普宁市第三中学网...