Java¾²Ì¬´úÂë¼ì²é¹¤¾ß±Ê¼Ç
code review ¹¤¾ßÁбí
1.´úÂë¸ñʽ¼ì²écheckstyle;
2.ÐÔÄܰ²È«×î¼Ñʵ¼ù¼ì²éRAD Software AnalyzerºÍFindBug;
3.ÒÀÀµ¼ì²éJDepend;
4.ÖØ¸´ÐÔ¼ì²éeclipse PMD²å¼þ;
5.¸´ÔӶȼì²éeclipse Metrics²å¼þ;
6.Ð×÷¹¤¾ßJupiter
Jupiter
1.Unset±íʾûÓÐÑ¡Ôñ£¬¶ø²»ÊÇÒ»¸ö¾ßÌåÀàÐÍ
2.Èý¸ö½×¶ÎÓÐĬÈϵÄFilterÌõ¼þ£¬Ò»°ã²»ÓÃÐ޸ġ£
3.reviewerÐèÒª°ÑÆÀÉóÕß¡¢±»ÆÀÉóÕß¶¼¼ÓÈ룬ÒÔ±ãÔÚteam reviewµÄʱºò£¬½øÐдúÂëÐÞ¸ÄÖ¸ÅÉ¡£
4.ȨÏÞ¿ØÖÆ´æÔÚÎÊÌ⣬ÒòΪ±»ÆÀÉóÕß¿ÉÒÔɾ³ýcode view issue£¬ÈÝÒ×Îó²Ù×÷£¬²»ºÃ¿ØÖÆ¡£
Ò²¾ÍÊÇ˵£¬ÆÀÉóÕßÖ®¼äûÓм¶±ð¸ßµÍ¹ØÏµ
EclEmma ÊÇ´úÂ븲¸ÇÂʲâÊÔ¡£µ«¼´Ê¹´úÂ븲¸ÇÂÊ´ïµ½100%£¬Ò²²»ÄܱíÃ÷¾ÍÍòÊ´ó¼ªÁË¡£ÒòΪÎÒÃÇËùνµÄ´úÂ븲¸ÇÂÊ£¬Ö÷Òª
ÊÇÖ¸£¬ÒµÎñ´úÂëÊÇ·ñ±»µ¥Ôª²âÊÔÓÃÀý²â¹ý¡£
Èç¹û¶¼²â¹ý£¬¾ÍÊÇ100%µÄ¸²¸ÇÂÊ¡£µ«ÊÇÕâ¸ö¸²¸ÇÂÊ£¬Ò²ÊÇÏà¶ÔµÄ¡£ÒòΪ¶ÔÓÚsayHelloÕâÑùµÄ·½·¨£¬Ð´²»Í¬µÄµ¥Ôª²âÊÔ´úÂë
£¬±¾Éí¾Í»á²úÉú²»Í¬µÄ¸²¸ÇÂÊ¡£
ËùÒÔ100%Ö»ÊÇ˵²âµ½ÁË£¬µ«ÊDzâ¶àÉ¶àÈ«Ãæ£¬ÊDz»ºÃ˵µÄ¡£
°²×°ºÃEclemmaÖ®ºó£¬ÔÚjavaÎļþ»òÕßpackageÉϵã»÷ÓÒ¼ü£¬ÓÐÒ»¸öcoverage as²Ëµ¥£¬¿ÉÒÔÑ¡java application»òÕßÊÇ
JUnit£¬Èç¹ûÑ¡Ôñjava application£¬ÓеãÀàËÆreferenceͳ¼Æ£¬Ò²¾ÍÊÇÆäËûÀàµÄµ÷Óó̶ȡ£
Õâ¿ÉÒÔÓÃÀ´Ìô³öijЩ¸ù±¾²»±»Ê¹ÓõÄÀà»òÕß·½·¨¡£
Èç¹ûÑ¡ÔñJUnit£¬Ôò¿ÉÒÔÓÃÀ´ºâÁ¿ÏµÍ³Öб»µ¥Ôª²âÊÔ¸²¸ÇµÄ¹ã¶È¡£
²Î¿¼×ÊÁÏ£º¡¶²âÊÔ¸²¸ÇÂÊÖ®¶þ——²âÊÔ¸²¸ÇÂÊÓÐʲôÓã¿¡·http://tech.it168.com/a2009/0117/263/000000263342.shtml
³£ÓÃj¾²Ì¬¼ì²â¹¤¾ß£º
http://www.daniel-journey.com/archives/79
http://www.daniel-journey.com/archives/319
JDepend
http://www.diybl.com/course/3_program/java/javajs/20091008/178252.html
Ö÷Òª¸ù¾ÝRobert C. MartinÊÏÌá³öµÄÃæÏò¶ÔÏóÉè¼ÆÔÔò£¬JDependÉú³ÉµÄJava°üµÄÖÊÁ¿ÆÀ¼Û±¨¸æÖ÷Òª°üÀ¨£º
Number of Classes and Interfaces £ºÊµÏÖÀàÓë³éÏó½Ó¿ÚµÄÊýÄ¿¡£The Stable Abstractions Principle (SAP)£ºÎȶ¨
³éÏóµÈ¼ÛÔÔò Ö¸³öÁ˰üµÄÎȶ¨³Ì¶ÈÓëËüµÄ³éÏó³Ì¶È£¨½Ó¿ÚµÄÊýÄ¿£©³ÉÕý±È£¬Ò²¾ÍÊÇ˵£¬Ò»¸ö°üÄÚ°üº¬µÄ½Ó¿ÚËùÕ¼µÄ±ÈÖØÔ½
´ó£¬Õâ¸ö°ü¾ÍÔ½Îȶ¨¡£
Abstractness (A) £º°üµÄ³éÏó¶È¡£Ö¸Ò»¸ö°üÄÚ°üº¬µÄ³éÏóÀà»ò½Ó¿ÚÕ¼Õû¸ö°üÖеÄÀàµÄ±ÈÖØ¡£¸ÃÖµ´¦ÓÚ0£¬1Ö®¼ä£¬Èô
A=0£¬ËµÃ÷°üÄÚ²»°üº¬ÈκγéÏóÀà»ò½Ó¿Ú£»ÈôA=1,˵Ã÷°üÄÚÈ«²¿ÊdzéÏóÀ
Ïà¹ØÎĵµ£º
ͨ³££¬¿Í»§Àà(clients of class)ͨ¹ýÀàµÄ½Ó¿Ú·ÃÎÊËüÌṩµÄ·þÎñ¡£ÓÐʱ£¬ÏÖÓеÄÀà(existing class)¿ÉÒÔÌṩ¿Í»§ÀàµÄ¹¦ÄÜÐèÒª£¬µ«ÊÇËüËùÌṩµÄ½Ó¿Ú²»Ò»¶¨Êǿͻ§ÀàËùÆÚÍûµÄ¡£ÕâÊÇÓÉÓÚÏÖÓеĽӿÚÌ«Ïêϸ»òÕßȱ·¦Ïêϸ»ò½Ó¿ÚµÄÃû³ÆÓë¿Í»§ÀàËù²éÕҵIJ»Í¬µÈÖî¶à²»Í¬ÔÒòµ¼Öµġ£
¡¡¡¡ÔÚÕâÖÖÇé¿öÏ£¬ÏÖÓеĽӿÚÐèҪת»¯(convert)Ϊ¿ ......
Ò»£®POI¼ò½é
Jakarta POI ÊÇapacheµÄ×ÓÏîÄ¿£¬Ä¿±êÊÇ´¦Àíole2¶ÔÏó¡£ËüÌṩÁËÒ»×é²Ù×ÝWindowsÎĵµµÄJava API
Ŀǰ±È½Ï³ÉÊìµÄÊÇHSSF½Ó¿Ú£¬´¦ÀíMS Excel£¨97-2002£©¶ÔÏó¡£Ëü²»ÏóÎÒÃǽö½öÊÇÓÃcsvÉú³ÉµÄûÓиñʽµÄ¿ÉÒÔÓÉExcelת»»µÄ¶«Î÷£¬¶øÊÇÕæÕýµÄExcel¶ÔÏó£¬Äã¿ÉÒÔ¿ØÖÆÒ»Ð©ÊôÐÔÈçsheet,cellµÈµÈ¡£
¶þ£®HSSF¸Å¿ö
......
´Ójdk1.5¿ªÊ¼£¬JavaÖпªÊ¼Ö§³Ö·¶ÐÍÁË¡£·¶ÐÍÊÇÒ»¸öºÜÓÐÓõıà³Ì¹¤¾ß£¬¸øÎÒÃÇ´øÀ´Á˼«´óµÄÁé»îÐÔ¡£ÔÚ¿´ÁË¡¶javaºËÐıà³Ì¡·Ö®ºó£¬ÎÒСÓÐÊÕ»ñ£¬Ð´³öÀ´Óë´ó¼Ò·ÖÏí¡£
Ëùν·¶ÐÍ£¬Îҵĸоõ¾ÍÊÇ£¬²»Óÿ¼ÂǶÔÏóµÄ¾ßÌåÀàÐÍ£¬¾Í¿ÉÒÔ¶Ô¶ÔÏó½øÐÐÒ»¶¨µÄ²Ù×÷£¬¶ÔÈκζÔÏó¶¼ÄܽøÐÐͬÑùµÄ²Ù×÷¡£Õ ......
File£¨ÎļþÀࣩ
¾¡¹Üjava.io¶¨ÒåµÄ´ó¶àÊýÀàÊÇʵÐÐÁ÷ʽ²Ù×÷µÄ£¬FileÀ಻ÊÇ¡£ËüÖ±½Ó´¦ÀíÎļþºÍÎļþϵͳ¡£Ò²¾ÍÊÇ˵£¬FileÀàûÓÐÖ¸¶¨ÐÅÏ¢ÔõÑù´ÓÎļþ¶ÁÈ¡»òÏòÎļþ´æ´¢£»ËüÃèÊöÁËÎļþ±¾ÉíµÄÊôÐÔ¡£File¶ÔÏóÓÃÀ´»ñÈ¡»ò´¦ÀíÓë´ÅÅÌÎļþÏà¹ØµÄÐÅÏ¢£¬ÀýÈçȨÏÞ£¬Ê±¼ä£¬ÈÕÆÚºÍĿ¼·¾¶¡£´ËÍâ ......