论坛首页 招聘求职论坛

让人头疼的新手

浏览 51196 次
精华帖 (0) :: 良好帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2008-05-13  
引用
if(a_binary.substring(index,index+1).equals("0")){


如果a_binary为null怎么办?
如果a_binary.substring(index,index+1)为null怎么办?
代码里面类似的缺陷很多
0 请登录后投票
   发表时间:2008-05-13  
谢谢LS各位的回复!我需要说明一下,我发贴的目的是想提醒一下临近毕业的朋友,不是公司不需要应届毕业生,应届毕业生有优点也有缺点。但是你进入公司以后,自己的发展和进步还是要靠自己的努力。工作了半年还能写出这样令人佩服的代码,那就只能是你自己的问题了,当然也有我自己的责任,毕竟是我带他们。

有则改之,无则加勉,别无他意,仅此而已!
0 请登录后投票
   发表时间:2008-05-13  
colin4k 写道
英文注释是为了确保不会因为encode等原因导致乱码


这种说法就好比是“为了防止脚气就把腿锯掉
0 请登录后投票
   发表时间:2008-05-13  
  假如在我们公司用英语注释,那是一种很不靠谱的行为。。。
  首先,本身的英语水平就不高,起个变量名还得左思右想。用英语注释就更加辞不达意了,还得把大部分精力花在注释上。

  其次,注释的人水平很高,但是读注释的人水平很次,那时候注释反而成为了一种障碍。

  最后,你还嫌英语信息不够多是不?
0 请登录后投票
   发表时间:2008-05-13  
恩,这代码写的有点太....
0 请登录后投票
   发表时间:2008-05-13  
我感觉有点像刻意写黑色笑话的...
逻辑非常混乱..不是一般人能这么琢磨出来的
0 请登录后投票
   发表时间:2008-05-13  
colin4k 写道
引用
if(a_binary.substring(index,index+1).equals("0")){


如果a_binary为null怎么办?
如果a_binary.substring(index,index+1)为null怎么办?
代码里面类似的缺陷很多

谢谢你能仔细看我的代码及你的意见.
但是a_binary为null是不可能的.
int i=a|256;
String is=Integer.toString(i, 2);
a是一个byte,a|256,所以is的长度肯定是9
又因为只需在for(int i=0;i<8;i++)的条件下调用该方法,所以index只能取0-7,因此a_binary.substring(index,index+1)也不可能为null.
如果逻辑有错,希望各位纠正下..
如果还是觉得可能为null,那就举出反例吧.
0 请登录后投票
   发表时间:2008-05-13  
mylifestyle1225 写道
colin4k 写道
引用
if(a_binary.substring(index,index+1).equals("0")){


如果a_binary为null怎么办?
如果a_binary.substring(index,index+1)为null怎么办?
代码里面类似的缺陷很多

谢谢你能仔细看我的代码及你的意见.
但是a_binary为null是不可能的.
int i=a|256;
String is=Integer.toString(i, 2);
a是一个byte,a|256,所以is的长度肯定是9
又因为只需在for(int i=0;i<8;i++)的条件下调用该方法,所以index只能取0-7,因此a_binary.substring(index,index+1)也不可能为null.
如果逻辑有错,希望各位纠正下..
如果还是觉得可能为null,那就举出反例吧.

一个团队合作的项目,你如何保证别人在调用这个函数时,只传0-7的index进来?就算用注释来说明都是不足够的,
如果你希望它的取值范围只能是0-7也只会是0-7,那你应该用代码来保证,例如在函数一开始就验证其取值的正确性
这种陷阱是项目里面非常常见的,也是区分新手和有经验的开发者的重要方法。
0 请登录后投票
   发表时间:2008-05-13  
我最近在读类似的代码,读完了要理解流程,然后参与到开发中。可怜的我。。
0 请登录后投票
   发表时间:2008-05-13  
colin4k 写道
mylifestyle1225 写道
colin4k 写道
引用
if(a_binary.substring(index,index+1).equals("0")){


如果a_binary为null怎么办?
如果a_binary.substring(index,index+1)为null怎么办?
代码里面类似的缺陷很多

谢谢你能仔细看我的代码及你的意见.
但是a_binary为null是不可能的.
int i=a|256;
String is=Integer.toString(i, 2);
a是一个byte,a|256,所以is的长度肯定是9
又因为只需在for(int i=0;i<8;i++)的条件下调用该方法,所以index只能取0-7,因此a_binary.substring(index,index+1)也不可能为null.
如果逻辑有错,希望各位纠正下..
如果还是觉得可能为null,那就举出反例吧.

一个团队合作的项目,你如何保证别人在调用这个函数时,只传0-7的index进来?就算用注释来说明都是不足够的,
如果你希望它的取值范围只能是0-7也只会是0-7,那你应该用代码来保证,例如在函数一开始就验证其取值的正确性
这种陷阱是项目里面非常常见的,也是区分新手和有经验的开发者的重要方法。

团队合作的项目,是否意味着你写的每个方法别人都可能去调用?或者说你每写一个方法,都需要考虑到别人调用??
你在接口里有N个方法,接口的实现类里也只能是N个方法吗?难道不会抽象出来几个方法供该实现类自己使用?
注意,我这个方法只服务于其所在的这个实现类,并没有想要让别人调用.我希望别人调用的方法,都在了这个类所实现的接口里.
我希望取值范围只能是0-7,所以for(int i=0;i<8;i++)中的i不是保证了吗?这个方法只用于两个for(int i=0;i<8;i++)下,我没必要连着写两遍,于是我抽象出来了这个方法,这就是这个方法的由来.
参数int index代表byte a中第index个bit,自然取(x,x+7)了,一个byte还能有几个bit啊.
我考虑问题不会考虑得那么片.虽然只是个新人,但肯定会把所有的可能都考虑进去.这个是习惯.
0 请登录后投票
论坛首页 招聘求职版

跳转论坛:
Global site tag (gtag.js) - Google Analytics