论坛首页 Java企业应用论坛

关于编码的若干最佳实践

浏览 7886 次
精华帖 (0) :: 良好帖 (7) :: 新手帖 (3) :: 隐藏帖 (0)
作者 正文
   发表时间:2011-08-27  
一句话,高内聚,低耦合.研发的时候想着点儿,那些能共享,那些不能共享.内存组织好,就OK
0 请登录后投票
   发表时间:2011-08-27   最后修改:2011-08-27
面试时通常都会遇到让我们措手不及的问题,其中的一些问题,需要在平时的工作学习中不断总结的。还是子曰的好,学而时习之不亦说乎!
开发的过程中,下意识的想到扩展性,性能的影响,可借鉴的案例,这是我的最佳实践。
0 请登录后投票
   发表时间:2011-08-28  
22cgreen 写道
我觉的上面有人说Hashtable不能用,相当的奇怪,为何不能用?不能用的东西,为什么要搞出来。StringBuffer/Vector/HashTable 有效率问题,请问是什么效率问题?Vector是同步的,但我搞不懂StringBuffer,HashTable是什么效率问题,是指插入数据时很慢?可问题是我们不同情况有不同需求啊。可以说这种不能用的说话,我认为是根本不真正理解这些类的使用和原理的。

同感, 每一个StringBuffer这种东西不可说就一定不能用,就比如说茄子,起初人们发现是有毒的,但到了后来,我们照样把它挪到了餐桌上, 根据不同的业务需求,技术需求,实际上我们会发现有时候一些平时我们遗弃的东西,还是挺不错的。!
0 请登录后投票
   发表时间:2011-08-28  
哥要跑题了——

编码之最佳实践:

多动手
多思考
多总结

over
0 请登录后投票
   发表时间:2011-08-29  
要想管控项目的代码质量,必须要有代码审查机制。
0 请登录后投票
   发表时间:2011-08-29  
22cgreen 写道
我觉的上面有人说Hashtable不能用,相当的奇怪,为何不能用?不能用的东西,为什么要搞出来。StringBuffer/Vector/HashTable 有效率问题,请问是什么效率问题?Vector是同步的,但我搞不懂StringBuffer,HashTable是什么效率问题,是指插入数据时很慢?可问题是我们不同情况有不同需求啊。可以说这种不能用的说话,我认为是根本不真正理解这些类的使用和原理的。


所以永远不会有人告诉你为什么
0 请登录后投票
   发表时间:2011-08-29  
lx4603238 写道
22cgreen 写道
我觉的上面有人说Hashtable不能用,相当的奇怪,为何不能用?不能用的东西,为什么要搞出来。StringBuffer/Vector/HashTable 有效率问题,请问是什么效率问题?Vector是同步的,但我搞不懂StringBuffer,HashTable是什么效率问题,是指插入数据时很慢?可问题是我们不同情况有不同需求啊。可以说这种不能用的说话,我认为是根本不真正理解这些类的使用和原理的。

同感, 每一个StringBuffer这种东西不可说就一定不能用,就比如说茄子,起初人们发现是有毒的,但到了后来,我们照样把它挪到了餐桌上, 根据不同的业务需求,技术需求,实际上我们会发现有时候一些平时我们遗弃的东西,还是挺不错的。!

看看HashTable、StringBuffer、Vector的源代码就知道为什么了。
0 请登录后投票
   发表时间:2011-08-29  
iaimstar 写道
22cgreen 写道
我觉的上面有人说Hashtable不能用,相当的奇怪,为何不能用?不能用的东西,为什么要搞出来。StringBuffer/Vector/HashTable 有效率问题,请问是什么效率问题?Vector是同步的,但我搞不懂StringBuffer,HashTable是什么效率问题,是指插入数据时很慢?可问题是我们不同情况有不同需求啊。可以说这种不能用的说话,我认为是根本不真正理解这些类的使用和原理的。


所以永远不会有人告诉你为什么


查了一下,大概有这么一些原因:
Hashtable提供了hashTable[aKey]的方式引用其包含的对象,却并没有提供数字指向的索引器,就是说用惯了Array,数组的我们,不能用hashTable[0]之类的办法来检索它的内容

Hashtable是基于陈旧的Dictionary类的

HashMap可以让你将空值作为一个表的条目的key或value

虽然Hashtable是线程同步,hashmap需要手动加同步,但是更加建议使用hashmap而不是table

不知道还有别的原因没。请教我

0 请登录后投票
   发表时间:2011-08-29  
因为 1 有concurrentHashMap

     2 hashtable继承了dictionary而dictionary的源码里面明确写了obsolete

    并且说的很明白了" New implementations should
* implement the Map interface, rather than extending this class"

    hashtable是为了桥接dictionary到Map上而不得不出现的

    人家api都不推荐,为什么要用
0 请登录后投票
   发表时间:2011-09-04  
melin 写道
要想管控项目的代码质量,必须要有代码审查机制。

是啊,所谓的code review,但是消耗时间。
0 请登录后投票
论坛首页 Java企业应用版

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