EDA365电子工程师网
标题:
21ic编辑推荐:完美主义者的程序员特征(二)
[打印本页]
作者:
admin
时间:
2019-9-27 15:09
标题:
21ic编辑推荐:完美主义者的程序员特征(二)
1.空格、换行、常量替换、{}保护、还有效率。
$ d0 f5 S6 B$ E l: z8 }
( v. b: I1 I( O1 \! W- ]2 M
看到这种代码,
他就感觉浑身难受、头晕恶心….
.
+ \# W9 F+ ^: F
狂吼一声,这段代码立马会给改成这样。
7 @8 w4 _& S" a0 ~# X% ~& M
8 X0 ?" t, o! S( ?& B. z4 s
长字符行要换行,模块要添加{}保护,这是做人的底线。
$ U* l* T, y8 O
再瞄一眼,会发现没有空格也很让人难过。
9 Y! |2 M- i% q8 n
赶紧快速编辑了而下,舒了口气。
1 B* E0 e% W$ Q& n
$ v, s( m4 W$ ]% h1 w# o
加上空格的美化,更有层次感。
# t9 ^+ L& x5 D0 q
# _5 m' F' L, s. X, \
/ L/ Y' I4 }7 x& K# z# D
当他开始维护这段代码,搞清楚逻辑后,无意义的常量就会被处理成这样的,长变量名也会被适当缩短。而0x2F、0x3A这种坑爹的的常量,则会被他心里狠狠地鄙视:
- l$ W5 V6 Q: Z0 k: \
* L5 ]% [6 s+ h) @
$ q+ b, }# A4 k
“丫丫的,原创者这是在炫智商、秀优越吗?”。
) g2 m# b4 W) g1 V
9 T' y. @ i( W% D' J
常量用宏替代,这样的代码意图会比较清晰。
" U1 {3 q& x/ U H. B* w
4 g/ Z9 ]5 z# [7 i" k
& \& A/ n4 W+ v- c* S
后来他感觉,还是有些不妥。干脆又改了下,最后变成这样。
& ?5 B0 ]$ P9 m0 a' _+ ^
/ r0 F9 N& I( L' C' V
is_digit的加入,使得代码与注释浑然天成。
- M5 g9 h1 G2 m/ a# [+ G6 w$ b
! e$ |2 b) N1 F; k- u/ ?5 K! k2 T
$ b" O4 p( B* ~
后来他在优化过程中发现,ch的值在99%的情况下都满足'0'~'9',
7 a0 h7 C. q! i) z/ W% O- O
% [( t* s4 \& s- l5 D2 d! v
- \" S" X2 r( n9 k8 \. l+ Q! H
这个时候,这段代码又会被优化成这样的。
$ k, f3 ~. X) p: N0 G& c
5 N' J+ [1 ?9 ]) s
为了效率,可以牺牲一点代码可阅读性。
欢迎光临 EDA365电子工程师网 (http://bbs.elecnest.cn/)
Powered by Discuz! X3.2