zoukankan      html  css  js  c++  java
  • java陷进一

    项目忙,遇到问题,都是解决了继续需求开发。但是总觉得需要积累,反之重复造轮子,重复踩地雷。

    把今天遇到的问题总结下:

    一、方法参入的引用

    引入方法参数非常常见,而且很方便,减少了参数的个数。

    但是如果你要操作该对象,还是要小心,看下面的例子

    A a=new A();
    method(a);//method对a进行了操作
    method1(a);//时候a可能已经发生变化了,因为传入的是变量的引用

    代码很简单,就method和method1都要传入a对象。原先设想的两次传入的a都是一样的,只是方法中做了不同的逻辑操作。

    但是由于在method中做a做了数据操作,导致了第二次引用的时候,a已经不是想要的那个a对象。 

    因此要慎重。虽然可以减少 A a1=method(a);

    第二个,list的注意细节

    list ls=new ArrayList();
    method(ls);
    list ls2=new ArrayList();
    ls2.addAll(ls2);
    method2(ls2);

    上面操作中method2(ls2);不会因为ls的改变而有所改变。另外retainAll 取交集.Arrays.asList(arr[])字符串转数组。

    第三 数字转换VS类型转换

    double d=1/2.0 
    
    long l=Long.valueOf("1.2");
    
    Object objs[]=new Object[]{"pob"};
    
    String strs[]=(String)objs;//错误做法
    //正确的做法应该是便利objs的时候对每个 objs[i]对象进行转换。

    四、细节影响大局

    有时候,我们为了能将一个模块的一点细节做到更好,可能还谈不上极致,就会掉入自己挖的陷阱.因为这里会牵扯到很多不确定的因素。

    所以,除非你有足够的把握,否则不要轻易为了一点细节,耽误了项目的整体进度,比如说最近的我。orz

    五、开源框架的抉择

    当我们原有的框架不满足新业务需求的时候,寻找一个合适的框架尤为重要,否则到了后期,可能会发现选择的框架不够强大,或则不够稳定(性能,异常)

    等等,导致不能满足用户的最终需求.对项目的伤害也是非常大的。比如这次自己选择了 EasyUI的slider来完成一个比例的拖动效果。

    但是发现了很多问题,比如没有max属性,值只能是100,超过100就还是100.其次感知效果也不如jqueryui的slider。

    看来选择框架,还是尽量选择成熟的,权威的,用户量多的(API多)。否则开发难度为非常大。

    不多了,继续苦逼的coding.

  • 相关阅读:
    关于LoginFilter的问题
    MyEclipse:各种提示图标的含义
    Js获取当前日期时间及其它操作
    微信jsApI及微信分享对应在手机浏览器的调用总结。
    js 刷新页面window.location.reload();
    applicationContext.xml
    网页打开微信的链接
    myeclipse竖行删除
    实现算法2.15、2.16的程序(一个数组只生成一个静态链表)
    循环链表
  • 原文地址:https://www.cnblogs.com/draem0507/p/3089367.html
Copyright © 2011-2022 走看看