贴几张代码截图,代码写的很稀烂,我不是来show的,自己写的代码往往自己看觉得还可以,别人看就会觉得很烂,正是抱着一种学习的心态,想请大家提出很多意见,比如方法的命名,代码的格式,风格,以及写法可以怎么改进,让代码看上去更加高大上!
这只是随手找个代码截图,就以这作为“批判”对象,至于具体实现什么功能就不讨论了,毕竟只是贴出部分代码,大家也不了解需求。献丑了~!
http://ww2.sinaimg.cn/mw1024/62669ad9jw1esthlabgjfj20uk0kbn7l.jpg
http://ww3.sinaimg.cn/mw1024/62669ad9jw1esthl9hzacj20sf0ksnes.jpg
http://ww1.sinaimg.cn/mw1024/62669ad9jw1esthlaspaqj20ts0kjn9w.jpg
1
tanteng OP 有个地方重复使用了,应该独立出来写个方法。
|
2
Septembers 2015-06-05 20:43:00 +08:00 via Android 1
《重构》《修改代码的艺术》
虽然这两本书都是面向Java开发者的 但是可以学习思路 |
3
wy315700 2015-06-05 20:52:07 +08:00
等号没对齐,,对于强迫症患者来说 看着难受
|
4
arbipher 2015-06-05 20:53:35 +08:00
贴份gist以示诚意吧
|
5
cvmax 2015-06-05 20:57:06 +08:00 via Android 1
看php最佳实践。题主你好喜欢水。。。
|
6
shanxuefeng 2015-06-05 20:59:33 +08:00
说真的我看你写的代码已经感觉很高大上了。咱写的那才叫挫呢
|
8
sunmonster 2015-06-05 21:10:37 +08:00
if 后面居然没有空格,你这个异教徒!
http://cs.sensiolabs.org/ |
9
tanteng OP @sunmonster 笑cry
|
10
tanteng OP 那个where($where)->field()链式方法太长了,应该换行。。
|
11
raincious 2015-06-05 21:22:08 +08:00
1、长句断行,超过80个字符的句子考虑断行写,超过120的绝对要断行。
2、想要代码写的漂亮,你得先有强迫症,比如&&和=>周围的空格,什么的。 3、复用变量?都到这地步了,继续封装吧。代码逻辑复杂通常背后都有封装不良的因素。 这是俺的代码,写的不敢说好看,也拿出来献丑: |
12
magicdawn 2015-06-05 21:31:04 +08:00
写golang吧,真的,装个go sublime插件,从此不再纠结
- 分号,保存自动移除多余分号 - brace 大括号换行,golang 强制不换行 - 命名,golang 一个go文件,小写的是私有的,首字母大写的表示可以export的 嗯,其实我是来黑golang的。。。。 |
13
raincious 2015-06-05 21:33:14 +08:00
另外,isset($start_time) && empty($start_time) 和$end_time那段有点傻,是为了得到第一个元素的值么?
为什么不用!empty检查下$data['data']然后array_pop($data['data']);?我没看懂? |
14
lincanbin 2015-06-05 21:35:22 +08:00 1
|
15
Gonster 2015-06-05 21:50:39 +08:00
![ ](doge)
删掉美元符>_< |
16
mahone3297 2015-06-05 21:51:06 +08:00
代码单行太长,注意换行
等号对齐 $good_type_id == 1 这种,不是应该用常量吗?拒绝magic number 多余的变量(比如函数todayOnlineShop里的$data变量。data单词也拼错,应该是date) 删除无用代码( //echo $uid;exit;) array 建议用 [](如果使用php5.4+的话) 看不懂的地方(//不要问我为什么要这样写。。。。) lz做的是电商系统?有单元测试吗? |
19
raincious 2015-06-05 22:07:03 +08:00
|
20
weyou 2015-06-05 22:45:02 +08:00
1. 几乎没有逻辑空行
2. 长句太多没有换行 |
21
yushenga 2015-06-05 22:47:52 +08:00 via Android
c有个混乱代码大赛,那风格才叫个性
|
22
yushenga 2015-06-05 22:49:33 +08:00 via Android
http://m.guokr.com/post/364973/
这里好几个神风格 |
24
guoer 2015-06-05 23:14:52 +08:00
|
25
WhatIf 2015-06-06 06:53:22 +08:00 via iPad
listrows是什么鬼
|
26
fengxuejianshi 2015-09-20 09:52:57 +08:00
if (xxx ){
... } 用: if (xxx ): ... endif |