一个很久的笑话了:
老婆给当程序员的老公打电话:下班顺路买一斤包子带回来,如果看到卖西瓜的,买一个。当晚,程序员老公手捧一个包子进了家门…老婆怒道:你怎么就买了一个包子?!老公答曰:因为看到了卖西瓜的。脑子里是这样的:老婆给当程序员的老公打电话:
var 晚餐 = 一斤包子;
if(看到卖西瓜的){
晚餐 = 一个包子;
}
买晚餐;
我自己是计算机专业,身边也有很多程序员朋友,都有一些相似的习惯:
空格用tab键,坚决不用空格键
不喜欢用别人电脑
写完一段立马Ctrl+S,Ctrl+S,Ctrl+S
按电梯楼层、支付宝扫码、会不自觉的去脑补它背后的逻辑
还有在知乎上也刷到过
有位朋友说“每次写完程序后强迫自己加些无关紧要的注释,使程序的MD5码正好是32个6。”
看看我们可爱的CC粉丝都是怎么说的吧!
= 两边必须空格
一个方法里面超过100行,受不了
没什么强迫症,随心而动,随刃而行
if
{
....
}
else
{
....
}
控制语句必须写成这样的格式
if语句我必需要写成
if(){
.....
}else if(){
....
}else{
....
}
if () {
.....
} else if () {
....
} else {
....
}
必须加空格,,不然难受
if () {
}else if () {
}else {
}
else前面不加空格,不然难受
新建一个类的时候 必须首先删除
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
}
中的// Do any additional setup after loading the view.
和那个
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}这个方法
也就是说除了顶部的注释之外 其他的系统注释 和内存警告方法 都删除
如果打开一份新代码 会首先重复上述操作 然后删除不必要的空行 其次把目及之处所看到的符号 必须左右两边有空格 然后才会去看代码实现
还有上面撸友说的关于if判断语句的 我也是必须改成以下方式
if 空格(判断语句)空格{
tab 代码
}空格 else if 空格(判断语句) 空格{
tab 代码
}空格 else 空格{
tab 代码
}
ViewController 的 生命周期的方法必须从上到下 依次调用 ! A方法里面调用奔雷的B 方法 一般B 方法在A 方法的下面 ! 系统的绿字 除了最 上面的 都要删掉.....强迫症 很多
打开一款app,总会脑补这个功能是怎么实现的,这样操作会不会有bug,这种情况是怎么处理的
同组的两个类 名字长度要保持一致!
处女座+程序员 多强迫 你懂得。。
以上全中 逗号分隔时后面必须要有空格 打括号时必须要打一对才开始在里面写代码
删除不必要的空行
写完页面代码要Ctrl+A 进行代码整齐化
认为C++是世界上最坑爹的语言,是语文老师发明出来的
在菜鸟的手中,C++发挥出超强的破坏力,硬是把20行代码写成了20个类,竟然还分门别类,条理分明。
A调用B,B调用C,C继承D,D继承E,E再加上A,然后再和F比较大小,三天后,才明白他咩的想干啥
遇到 C++,一律删掉,用C重写一遍
// 程序员没有强迫症
消灭所有的警告
我每天都强迫自己要直起腰,不想以后得颈椎病...
我还贴了个小纸条在电脑顶上提醒自己,“直起腰”
强迫症 1
对于运算符,我有自己的一套编码风格:
计算矩形周长
float girth = (width+height) * 2;
长加高 算一个整体,如果表达式里面有其他项, 此部分加号左右不加空格,这样能使代码逻辑更清晰。
else 如果只是计算宽加高, 则加号左右两边要加空格:
float temp = width + height;
如果,如果条件判断里面有需要判断多项, 则每个单项自身表达式不加空格, && , || 左右需要空格。 (当然不建议一个条件判断里面写组合表达式)
if (contentType==ContentTypeWeb && contentURL!=NULL) {
}else {
}
强迫症2
不喜欢用 ! (感觉这种代码语义不清晰, 总是要去想下, 好揪心)
if (!contentURL) {
}
喜欢用 != (明显了然, 直接读就可以了)
if (contentURL != NULL) {
}
有知音吗?
1、每当自己创建一个方法时,都要#pragma mark -- ,不用总感觉不舒服。
2、每当需要传值时,在方法的第一步总线要NSLog。
3、控件名称都会带有控件的后缀,比如按钮的名称叫***Btn,显示框叫****Lab
4、按钮点击方法名称总会设置成 按钮名称+Click
*******
强迫症的程序猿。。。。。
文件夹必须分工明确,类名必须规范。
能封装的必须封装(能动手尽量少BB)
做出来的效果一定要和原型图 一模一样
每次review code,看到重要逻辑没写备注,或者代码格式没对齐,多加了空格等,心里就发紧。。。。
大家来聊聊吧,你都有哪些强迫症行为呢?