如果你要让代码既支持编译成32位程序(32位下面没有arc这个东东),同时又支持被编译成64位程序,同时对类的instance variable直接赋值时可以使用到内存管理,一般的做法是既声明instance variable ,同时又写上property、synthesize,因为编译成32位程序,编译器不会自动帮你生成synthesize,同时即便在32位程序里面声明了property、synthesize,而没有声明instancevariable ,程序也会报错;另外,如果你为了要方便debug类的内容,并且可以直接用 NSLog(@”%@”,object)输出你自定义的信息,你一般还需要自己写一个description函数,里面把类所有的变量值打印出来。而如果你的项目类特别多并且instance variable非常多,特别是MVC中Model这一层的类,那么你就要花费很多时间去写这些代码。凑巧,我当前的项目是要编译成32位的,于是为了解放自己的双手,写了这个程序。这个程序确实让我节省了不少时间,避免了许多重复无趣的工作。
这个程序的功能就是:根据类的成员变量,自动生成property、synthesize 跟description的代码
如下图所示,我们把类的成员变量复制到instance variable输入框里面,点击右边的>>按钮,就会自动生成所有property、synthesize 跟description的代码。然后就可以直接把代码copy到项目里面使用。
这个程序只是随手花了非常少的时候捣鼓着做出来的,并不是特别完善。此程序支持类的成员变量有下划线或者没有下划线的形式,但不支持类的成员变量有注释的情况。
代码:
https://github.com/helloitworks/InterpretPropertySynthesize
另外之前写了一篇文章<<做个偷懒的程序员>>,也是讲了一个事例说明如何节省时间,避免重复无趣的工作。有兴趣可以访问:http://helloitworks.com/515.html