Ö÷Ì⣺Java³ÌÐòÔ±µÄ֪ʶ¼Ü¹¹Ç³Îö
×÷ΪJava³ÌÐòÔ±À´Ëµ£¬×îÍ´¿àµÄÊÂÇéĪ¹ýÓÚ¿ÉÒÔÑ¡ÔñµÄ·¶Î§Ì«¹ã£¬¿ÉÒÔ¶ÁµÄÊéÌ«¶à£¬ÍùÍùÈÝÒ×ÎÞËùÊÊ´Ó¡£ÎÒÏë¾ÍÎÒ×Ô¼º¶Á¹ýµÄ¼¼ÊõÊé¼®ÖÐÌôÑ¡³öÀ´Ò»Ð©£¬
°´ÕÕѧϰµÄÏȺó˳Ðò£¬ÍƼö¸ø´ó¼Ò£¬ÌرðÊÇÄÇЩÏë²»¶ÏÌá¸ß×Ô¼º¼¼ÊõˮƽµÄJava³ÌÐòÔ±ÃÇ¡£
Ò»¡¢Java±à³ÌÈëÃÅÀà
¶ÔÓÚûÓÐJava±à³Ì¾ÑéµÄJava³ÌÐòÔ±ÒªÈëÃÅ£¬Ëæ±ã¶ÁʲôÈëÃÅÊé¼®¶¼Ò»Ñù£¬Õâ¸ö½×¶ÎÐèÒªÄã¿ìËÙµÄÕÆÎÕJava»ù´¡Óï·¨ºÍ»ù±¾Ó÷¨£¬×ÚÖ¼¾ÍÊÇ“àñ
àðÍÌÔæ²»ÇóÉõ½â”£¬ÏȶÔJavaÊìϤÆðÀ´ÔÙ˵¡£Óú̵ܶÄʱ¼ä¿ìËÙ¹ýÒ»±éJavaÓï·¨£¬Á¬ã´ø²Â¶àдд´úÂ룬Ҫ“ÖªÆäÈ»”¡£
1¡¢¡¶Java±à³Ì˼Ïë¡·
ÔÚÓÐÁËÒ»¶¨µÄJava±à³Ì¾ÑéÖ®ºó£¬ÄãÐèÒª“ÖªÆäËùÒÔÈ»”ÁË¡£Õâ¸öʱºò¡¶Java±à³Ì˼Ïë¡·ÊÇÒ»±¾ÈÃÄãÖªÆäËùÒÔÈ»µÄºÃÊ飬Ëü¶ÔÓÚ»ù±¾µÄÃæÏò¶ÔÏó֪ʶ
ÓбȽÏÇå³þµÄ½»´ý£¬¶ÔJava»ù±¾Óï·¨£¬»ù±¾Àà¿âÓбȽÏÇå³þµÄ½²½â£¬¿ÉÒÔ°ïÄã´òÒ»¸öÁ¼ºÃµÄJava±à³Ì»ù´¡¡£Õâ±¾ÊéµÄȱµãÊÇʵÔÚÌ«ºñ£¬Ò²±È½ÏÂÞ࣬²»ÊʺÏ
ÏÖ´úÈË¿ì½Ú×àѧϰ£¬Òò´Ë¿´Õâ±¾ÊéÒª¶®µÃÈ¡Éᣬ²»ÊÇÿÕÂÿ½Ú¶¼ÖµµÃÒ»¿´µÄ£¬ÌôÖصãµÄÉîÈë¿´¾Í¿ÉÒÔÁË¡£
2¡¢¡¶Agile Java¡·ÖÐÎÄ°æ
Õâ±¾ÊéÊdzö°æÉçË͸øÎҵģ¬ÎÒÒ»Äõ½¾ÍÊøÖ®¸ß¸ó£¬·ÅÔÚÊé¹ñÒ»Ò³¶¼Ã»Óз¹ý£¬µ«ÊÇÇ°Á½ÌìÕûÀíÊé¹ñµÄʱºò£¬ÄóöÀ´Ò»·£¬¾¹È»·¢ÏÖÕâ¾ø¶ÔÊÇÒ»±¾ºÃÊ飡Õâ±¾Êé
Ò»´óÌصãÊÇÒÔµ¥Ôª²âÊÔºÍTDDÀ´¹á´©È«ÊéµÄ£¬ÔÚ½ÌÄãJava¸÷ÖÖÖØÒªµÄ»ù´¡ÖªÊ¶µÄ¹ý³ÌÖУ¬Ç±ÒÆĬ»¯µÄÓ°ÏìÄãµÄ±à³Ì˼ά×ßÏòÃô½Ý£¬×ßÏòTDD¡£ÁíÍâÕâ±¾Êé³É
ÊéºÜУ¬ÒÔJDK5.0µÄÓ﷨Ϊ»ù´¡½²½â£¬ÒªÑ§Ï°JDK5.0µÄÐÂÓï·¨Ò²²»´í¡£»¹ÓÐÕâ±¾Êé¶ÔÓÚÄÚÈÝÈ¡ÉáÒ²·Ç³£µÃµ±£¬JavaÓïÑԱϾ¹Àà¿âÅӴ󣬿ÉÒÔ½²µÄÄÚ
ÈÝÌ«¶à£¬Õâ±¾ÊéÑ¡ÔñµÄÄÚÈÝÒÔ¼°ÄÚÈݵĶà¹Ñ¶¼ºÜµÃµ±£¬¿ÉÒÔÈÃÄãÒÔ×îÉÙµÄʱ¼äÕÆÎÕJava×îÖØÒªµÄ֪ʶ£¬Ë³±ãÅàÑø³öÀ´ÓÅÐãµÄ±à³Ì˼·£¬ÕæÊÇÒ»±¾²»¿É¶àµÃµÄºÃ
Êé¡£
ËäÈ»×÷Õß×Ô¼º°ÑÕâ±¾Ê鶨λÔÚÈëÃż¶±ð£¬µ«ÎÒ²»È·¶¨Õâ±¾ÊéÓÃÀ´ÈëÃÅÊDz»ÊÇÉÔ΢ÉîÁ˵㣬ÎÒ×Ô¼ºÒ²×¼±¸ÓпյÄʱºò··Õâ±¾Ê飬ѧϰѧϰ¡£
¶þ¡¢Java±à³Ì½ø½×Àà
´òÏÂÒ»¸öÁ¼ºÃµÄJava»ù´¡£¬»¹ÐèÒª¸ü¶àµÄʵ¼ù¾Ñé»ýÀÛ£¬ÎÒÏëûÓÐʲô½Ý¾¶¡£ÓÐÁ½±¾ÊéÖµµÃÄãÔÚ±à³ÌÉúÑĵÄÕâ¸ö½×¶ÎÔĶÁ£¬ÅàÑøÁ¼ºÃµÄ±à³ÌÏ°¹ß£¬Ìá¸ßÄã
µÄ´úÂëÖÊÁ¿¡£
1¡¢¡¶Öع¹ ¸ÄÉƼÈÓдúÂëµÄÉè¼Æ¡·
Õâ±¾ÊéÃûÆøºÜ´ó£¬²»Óöà½éÉÜ£¬¿ÉÒÔÔÚÏÐϾµÄʱºò¶à··£¬¶àºÍ×Ô¼ºµÄʵ¼ùÏ໥ӡ֤¡£Õâ±¾Êé¶ÔÄã²úÉúÓ°ÏìÊÇDZÒÆĬ»¯µÄ¡£
2¡¢¡¶²âÊÔÇý¶¯¿ª·¢ by Example¡·
±¾Êé×î´óÌصãÊǺܱ¡£¬¿´ÆðÀ´Ã»ÓÐʲô¸ºµ£¡£Äã¿ÉÒÔÕÒÒ»¸öÖÜÄ©µÄÏÂÎ磬һ
Ïà¹ØÎĵµ£º
¹ØÓÚ¼Ó½âÃÜJAVAÒ»°ãʹÓõÄJCE£¬¹ØÓÚC++¿ÉÒÔʵÏÖAES¼Ó½âÃܵĿªÔ´ÏîÄ¿¾Í¶àµÄÊý²»Ê¤ÊýµÄ¡£
ÀíÂÛÉÏÉÏËã·¨Ò»Ñù£¬¶Ô³ÆÃÜÔ¿Ò»Ñù¾ÍÄܹ»»¥Ïàʶ±ðÁË¡£
ÏàÐźܶàÈË¿ªÊ¼Ïë·¨¶¼Í¬ÎÒÒ»Ñù£¬Æð³õÎÒJAVAÓÃJCE£¬C++ʹÓÃopenssl¡£
½á¹û·¢ÏÖ¼ÓÃܳöµÄÃÜÎÄÍêÈ«²»Ïàͬ¡£
³öÏÖÎÊÌâ¾ÍÒª½â¾ö
Á˽âÁËÒ»ÏÂJCE£º
JC ......
JDO ¸ÅÊö
¡¡¡¡³¤¾ÃÒÔÀ´£¬Java Ó¦ÓóÌÐòºÍ³Ö¾ÃÊý¾Ý¹ÜÀíÖ®¼äµÄ¹ØϵһֱÊDz»ÈÝÒ×´¦ÀíµÄ¡£Ðí¶à³Ö¾ÃÐÔ»úÖÆÒÔ¹ØϵµÄ·½·¨¶ø²»ÊÇÃæÏò¶ÔÏó·½·¨´æ´¢Êý¾Ý¡£¼´£¬Êý¾Ý´æ´¢ÔÚÓÉ°üº¬×ֶεļǼ×é³ÉµÄ±íÖУ¬¶ø²»ÊǴ洢Ϊ×Ô°üº¬¶ÔÏó(ÕâЩ¶ÔÏóÓµÓÐÄÚ²¿Êý¾ÝºÍ¶ÔÆäËü¶ÔÏóµÄÒýÓ㬶øÆäËü¶ÔÏóÒ²ÓµÓÐÄÚ²¿Êý¾ÝºÍÒýÓÃ)¡£½«ÃæÏò¶ÔÏóµÄ±íʾת»»³ ......
꿅᣼ http://blog.csdn.net/justinavril/archive/2008/08/06/2775767.aspx
import
java.io.*;
public
class
FileToString {
public
static
String readFile(String fileName)  ......
1.Duplicated Code
´úÂëÖظ´¼¸ºõÊÇ×î³£¼ûµÄÒìζÁË¡£ËûÒ²ÊÇRefactoringµÄÖ÷ҪĿ±êÖ®Ò»¡£´úÂëÖظ´ÍùÍùÀ´×ÔÓÚcopy-and-pasteµÄ±à³Ì·ç¸ñ¡£ÓëËûÏà¶ÔÓ¦OAOOÊÇÒ»¸öºÃϵͳµÄÖØÒª±êÖ¾¡£
2.Long method
ËüÊÇ´«Í³½á¹¹»¯µÄ“ÒŶ¾”¡£Ò»¸ö·½·¨Ó¦µ±¾ßÓÐ×ÔÎÒ¶ÀÁ¢µÄÒâͼ£¬²»Òª°Ñ¼¸¸öÒâͼ·ÅÔÚÒ»Æð¡£ ......