由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 关于code的可读性
相关主题
问个问题:十进制数字反转大家谈谈看???
电话面试经验交流有面过knight的吗
女友,心中的痛C++ Q68: initialization (skillport)
Bloomberg家面intern也要onsite了啊?问一个c++问题关于reference vs. pointer
面试被拒,百思不得其解,求指点面试就是面试问题,跟实际问题差太远
面试更尴尬了,面试官总直勾勾看我singleton pattern problem
static initialization dependency c++ (转载)Secure communication puzzle
新鲜 interveiw questionsbloomberg 问题: C++ construct 时用 new 没"()"
相关话题的讨论汇总
话题: code话题: 可读性话题: int话题: index
进入JobHunting版参与讨论
1 (共1页)
y*****3
发帖数: 451
1
最近看leetcode和很多牛人的blog,发现都很追求code写的短,写的紧凑,比如下边这
条:
int p = (i < m) ? a.charAt(m - 1 - i) - '0' : 0;
可是,有实际经验的码工们都知道,code的readibility非常重要,没有必要用太多的
syntax sugar来压缩代码。比如上边这条如果改写成下边这样,可读性大大提高,但是
performance其实是一样的。
int p = 0; //always initiate a member field
if (i < m)
{
p = a.charAt(m - 1 - i) - '0';
}
else
{
p = 0;
}
我比较迷惑,在面试的时候,那些面试官们难道不懂在实际工作中code的readibility
很重要吗?为什么大家都那么追求code写的短和紧凑?面试的时候到底该怎么写?请大
牛们指点迷津,谢谢!
z*********8
发帖数: 2070
2
估计是因为白板面积有限吧。。。
s***e
发帖数: 403
3
yukichan
可读性明显是前一个高啊,只要看一行信息量就足够了,不用跳着看。
l********n
发帖数: 1038
4
c语言容易写紧凑的代码
d**********u
发帖数: 3371
5
炫技而已
工作里面大部分时间都在写文档 你说呢

【在 y*****3 的大作中提到】
: 最近看leetcode和很多牛人的blog,发现都很追求code写的短,写的紧凑,比如下边这
: 条:
: int p = (i < m) ? a.charAt(m - 1 - i) - '0' : 0;
: 可是,有实际经验的码工们都知道,code的readibility非常重要,没有必要用太多的
: syntax sugar来压缩代码。比如上边这条如果改写成下边这样,可读性大大提高,但是
: performance其实是一样的。
: int p = 0; //always initiate a member field
: if (i < m)
: {
: p = a.charAt(m - 1 - i) - '0';

y*****3
发帖数: 451
6
单拿出一行的话,这两种写法区别不大。但如果1000多行code里有100多条都象第一种
那样写,可读性会很差。

【在 s***e 的大作中提到】
: yukichan
: 可读性明显是前一个高啊,只要看一行信息量就足够了,不用跳着看。

y*****3
发帖数: 451
7
我的问题就是,面试的时候该不该用太多syntax sugar呢?实际工作中,有一些syntax
sugar在很多公司的coding convention里都要求禁止使用的,过于炫技反倒暴露了自
己没啥写code的经验,面试的时候,好的code的标准到底是什么??

【在 d**********u 的大作中提到】
: 炫技而已
: 工作里面大部分时间都在写文档 你说呢

f********4
发帖数: 988
8
肯定写第一种。你能写第一种肯定能写第二种,反过来不一定了就。如果公司有要求第
一种很容易就改成第二种了啊
[发表自未名空间手机版 - m.mitbbs.com]
d******k
发帖数: 4295
9
抄一句别人说的
If the condition is short and the true/false parts are short then a ternary
operator is fine, but anything longer tends to be better in an if/else
statement

【在 y*****3 的大作中提到】
: 最近看leetcode和很多牛人的blog,发现都很追求code写的短,写的紧凑,比如下边这
: 条:
: int p = (i < m) ? a.charAt(m - 1 - i) - '0' : 0;
: 可是,有实际经验的码工们都知道,code的readibility非常重要,没有必要用太多的
: syntax sugar来压缩代码。比如上边这条如果改写成下边这样,可读性大大提高,但是
: performance其实是一样的。
: int p = 0; //always initiate a member field
: if (i < m)
: {
: p = a.charAt(m - 1 - i) - '0';

r*******n
发帖数: 3020
10
同意可读性是首要的,不要追求代码短。
尤其面试官可能不用c,c++,需要跟面试官没必要的过多解释。

【在 y*****3 的大作中提到】
: 最近看leetcode和很多牛人的blog,发现都很追求code写的短,写的紧凑,比如下边这
: 条:
: int p = (i < m) ? a.charAt(m - 1 - i) - '0' : 0;
: 可是,有实际经验的码工们都知道,code的readibility非常重要,没有必要用太多的
: syntax sugar来压缩代码。比如上边这条如果改写成下边这样,可读性大大提高,但是
: performance其实是一样的。
: int p = 0; //always initiate a member field
: if (i < m)
: {
: p = a.charAt(m - 1 - i) - '0';

相关主题
面试更尴尬了,面试官总直勾勾看我大家谈谈看???
static initialization dependency c++ (转载)有面过knight的吗
新鲜 interveiw questionsC++ Q68: initialization (skillport)
进入JobHunting版参与讨论
y*****3
发帖数: 451
11
这不是会不会写的问题,这是看一个人良好的coding习惯的问题,码工们都读过<
complete code>那本书吧?

【在 f********4 的大作中提到】
: 肯定写第一种。你能写第一种肯定能写第二种,反过来不一定了就。如果公司有要求第
: 一种很容易就改成第二种了啊
: [发表自未名空间手机版 - m.mitbbs.com]

L*******r
发帖数: 119
12
how about the following?
int index = m-1-i;
int p = index>=0 ? a.charAt(index)-'0' : 0;

【在 y*****3 的大作中提到】
: 最近看leetcode和很多牛人的blog,发现都很追求code写的短,写的紧凑,比如下边这
: 条:
: int p = (i < m) ? a.charAt(m - 1 - i) - '0' : 0;
: 可是,有实际经验的码工们都知道,code的readibility非常重要,没有必要用太多的
: syntax sugar来压缩代码。比如上边这条如果改写成下边这样,可读性大大提高,但是
: performance其实是一样的。
: int p = 0; //always initiate a member field
: if (i < m)
: {
: p = a.charAt(m - 1 - i) - '0';

d*******h
发帖数: 642
13
如果是php的话,ternary性能不如if else
s***e
发帖数: 403
14
这样的code看多了你就觉得很习惯了。

【在 y*****3 的大作中提到】
: 单拿出一行的话,这两种写法区别不大。但如果1000多行code里有100多条都象第一种
: 那样写,可读性会很差。

d**********u
发帖数: 3371
15
感觉不管什么code 没有文档 都读不懂 有文档都很好读

【在 s***e 的大作中提到】
: 这样的code看多了你就觉得很习惯了。
s***e
发帖数: 403
16
目标是the code is the documentation.

【在 d**********u 的大作中提到】
: 感觉不管什么code 没有文档 都读不懂 有文档都很好读
g*********e
发帖数: 14401
17
第一种好 第二种太多行了 函数一长的跪了
1 (共1页)
进入JobHunting版参与讨论
相关主题
bloomberg 问题: C++ construct 时用 new 没"()"面试被拒,百思不得其解,求指点
面试编程题都不超过30行??面试更尴尬了,面试官总直勾勾看我
自己不想看自己的代码怎么办?static initialization dependency c++ (转载)
[板上牛人多]问个算法题新鲜 interveiw questions
问个问题:十进制数字反转大家谈谈看???
电话面试经验交流有面过knight的吗
女友,心中的痛C++ Q68: initialization (skillport)
Bloomberg家面intern也要onsite了啊?问一个c++问题关于reference vs. pointer
相关话题的讨论汇总
话题: code话题: 可读性话题: int话题: index