Code
ReviewÊÇÒ»ÖÖͨ¹ý¸´²é´úÂëÌá¸ß´úÂëÖÊÁ¿µÄ¹ý³Ì£¬ÔÚXP·½·¨ÖÐÕ¼Óм«ÎªÖØÒªµÄµØÎ»£¬Ò²ÒѾ³ÉΪÈí¼þ¹¤³ÌÖÐÒ»¸ö²»¿ÉȱÉٵĻ·½Ú¡£±¾ÎÄͨ¹ý¶ÔCode
ReviewµÄһЩ¸ÅÄîºÍ¾ÑéµÄ̽ÌÖ£¬¾ÍÈçºÎ½øÐÐCode ReviewºÍCode ReviewÖÐÓ¦¸Ã×¢ÒâʲôÌá³öһЩ½¨Òé¡£
±¾ÎÄÖÐÉæ¼°µÄÎÊÌâ´ó²¿·ÖÕë¶ÔJAVAÀà´úÂ롣ͬʱ±¾ÎIJ»Éæ¼°Code Review¹ý³ÌºÍ×éÖ¯¡£
Ò»¡¢Code Review¼ò½é
1 Code ReviewµÄÄ¿µÄ
·²ÊÂÖªÆäÈ»»¹ÒªÖªÆäËùÒÔÈ»£¬ÎÒÃÇÊ×ÏÈÐèÒªÖªµÀʲôÊÇCode ReviewºÍÎÒÃÇʹÓÃËüµÄÄ¿µÄÊÇʲô¡£Code
ReviewÊÇÒ»ÖÖÓÃÀ´È·ÈÏ·½°¸Éè¼ÆºÍ´úÂëʵÏÖµÄÖÊÁ¿±£Ö¤»úÖÆ£¬Í¨¹ýÕâ¸ö»úÖÆÎÒÃÇ¿ÉÒÔ¶Ô´úÂ룬²âÊÔ¹ý³ÌºÍ×¢ÊͽøÐмì²é¡£Code
ReviewÖ÷ÒªÓÃÀ´ÔÚÈí¼þ¹¤³Ì¹ý³ÌÖиĽø´úÂëÖÊÁ¿£¬Í¨¹ýCode Review¿ÉÒÔ´ïµ½ÈçÏÂÄ¿µÄ£º
1.ÔÚÏîÄ¿ÔçÆÚ¾ÍÄܹ»·¢ÏÖ´úÂëÖеÄBUG
2.°ïÖú³õ¼¶¿ª·¢ÈËԱѧϰ¸ß¼¶¿ª·¢ÈËÔ±µÄ¾Ñ飬´ïµ½ÖªÊ¶¹²Ïí
3.±ÜÃ⿪·¢ÈËÔ±·¸Ò»Ð©ºÜ³£¼û£¬ºÜÆÕͨµÄ´íÎó
4.±£Ö¤ÏîÄ¿×éÈËÔ±µÄÁ¼ºÃ¹µÍ¨
5.ÏîÄ¿»ò²úÆ·µÄ´úÂë¸üÈÝÒ×ά»¤
2 Code ReviewµÄǰÌá
ÖªµÀÁËCode ReviewµÄÄ¿µÄ£¬ÎÒÃǾͿÉÒÔ¿´¿´ÈçºÎ×öCode ReviewÁË£¬µ«ÔÚ×öCode
ReviewǰÎÒÃÇ»¹ÓÐÊÂÒª×ö£¬ËùνԤÔòÁ¢£¬²»Ô¤Ôò·Ï£¬¾ÍÊÇ˵Èç¹ûÔÚ½øÈëCode Review֮ǰÎÒÃDz»×öЩ׼±¸¹¤×÷£¬Code
ReviewºÜÈÝÒ׾ͱäµÃûÓÐÒâÒå»òÊÇÁ÷ÓÚÐÎʽ£¬ÕâÔÚÎÒÃÇÖÜΧÊÇÓкܶàÀý×ӵİ¡¡£½øÈëCode ReviewÐèÒª¼ì²éµÄÌõ¼þÈçÏ£º
a) Code ReviewÈËÔ±ÊÇ·ñÀí½âÁËCode ReviewµÄ¸ÅÄîºÍCode Review½«×öʲô
Èç¹û×öCode ReviewµÄÈËÔ±²»ÄÜÀí½âCode Review¶ÔÏîÄ¿³É°ÜºÍ´úÂëÖÊÁ¿µÄÖØÒª³Ì¶È£¬ËûÃǵÄ×ö·¨¿ÉÄܾͻáÊÇÓ¦¸¶ÁËÊ¡£
b) ´úÂëÊÇ·ñÒѾÕýÈ·µÄbuild£¬buildµÄÄ¿µÄʹµÃ´úÂëÒѾ²»´æÔÚ»ù±¾Óï·¨´íÎó
ÎÒÃÇ×ܲ»Ï£Íû¸ß¼¶¿ª·¢ÈËÔ±»òÊÇÖ÷¹Ü½«Ê±¼äÀË·ÑÔÚ¼ì²éÁ¬±àÒ붼ͨ²»¹ýµÄ´úÂëÉϰɡ£
c) ´úÂëÖ´ÐÐʱ¹¦ÄÜÊÇ·ñÕýÈ·
Code ReviewÈËÔ±Ò²²»¸ºÔð¼ì²é´úÂëµÄ¹¦ÄÜÊÇ·ñÕýÈ·£¬Ò²¾ÍÊÇ˵£¬ÐèÒª¸´²éµÄ´úÂë±ØÐëÓÉ¿ª·¢ÈËÔ±»òÖÊÁ¿ÈËÔ±¸ºÔð¸Ã´úÂëµÄ¹¦ÄܵÄÕýÈ·ÐÔ¡£
d) ReviewÈËÔ±ÊÇ·ñÀí½âÁË´úÂë
×ö¸´²éµÄÈËÔ±ÐèÒª¶Ô¸Ã´úÂëÓÐÒ»¸ö»ù±¾µÄÁ˽⣬Æä¹¦ÄÜÊÇʲô£¬ÊÇÄÃÒ»·½ÃæµÄ´úÂë£¬Éæ¼°µ½Êý¾Ý¿â»òÊÇͨѶ£¬ÕâÑù²ÅÄܲÉÈ¡Õë¶ÔÐԵļì²é
e) ¿ª·¢ÈËÔ±ÊÇ·ñ¶Ô´úÂë×öÁ˵¥Ôª²âÊÔ
ÕâÒ»µãÒ²ÊÇΪÁ˱£Ö¤Code ReviewǰһЩÓï·¨ºÍ¹¦ÄÜÎÊÌâÒѾµÃµ½½â¾ö£¬Code ReviewÈËÔ±¿ÉÒÔ½«¾«Á¦¼¯ÖÐÔÚ´úÂëµÄÖÊÁ¿ÉÏ¡£
3 Code ReviewÐèÒª×öʲô
ºÃÁË£¬½øÈëÌõ¼þ×¼±¸ºÃÁË£¬ÓÐÈËÔÚÕâЩÌõ¼þÖп´µ½Code ReviewÕâÒ²²»¸ºÔð£¬ÄÇÒ²²»¼ì²é£¬²»½û»áÎÊ£¬Code
Reviewµ½µ××öʲô£¿ÆäʵCode ReviewÖ÷Òª¼ì²é´úÂëÖÐÊÇ·ñ´æÔÚÒÔÏ·½ÃæÎÊÌ⣺´úÂëµÄÒ»ÖÂÐÔ¡¢±àÂë·ç¸ñ¡¢´úÂëµÄ°²È«ÎÊÌâ¡¢´úÂëÈßÓà¡¢ÊÇ·ñÕýÈ·Éè¼ÆÒÔÂú×ãÐèÇó£¨ÐÔÄÜ¡¢¹¦Äܵȵȣ©£¬Ï±ßÎÒÃÇÒ»Ò»µÀÀ´¡£ÒÔÏÂÄÚÈݲο¼ÁË¡¶Software
Quality Assurance: Documentation and Reviews¡·Ò»ÎÄÖеĴúÂë¼ì²é²¿·Ö¡£
3£®1ÍêÕûÐÔ¼ì²é£¨Completeness£©
´úÂëÊÇ·ñÍêȫʵÏÖÁËÉè¼ÆÎĵµÖÐÌá³öµÄ¹¦ÄÜÐèÇó
´úÂëÊÇ·ñÒѰ´ÕÕÉè¼ÆÎĵµ½øÐÐÁ˼¯³ÉºÍDebug
´úÂëÊÇ·ñÒÑ´´½¨ÁËÐèÒªµÄÊý¾Ý¿â,°üÀ¨ÕýÈ·µÄ³õʼ»¯Êý¾Ý
´úÂëÖÐÊÇ·ñ´æÔÚÈκÎûÓж¨Òå»òûÓÐÒýÓõ½µÄ±äÁ¿¡¢³£Êý»òÊý¾ÝÀàÐÍ
3£®2Ò»ÖÂÐÔ¼ì²é£¨Consistency£©
´úÂëµÄÂß¼ÊÇ·ñ·ûºÏÉè¼ÆÎĵµ
´úÂëÖÐʹÓõĸñʽ¡¢·ûºÅ¡¢½á¹¹µÈ·ç¸ñÊÇ·ñ±£³ÖÒ»ÖÂ
3£®3ÕýÈ·ÐÔ¼ì²é£¨Correctness£©
´úÂëÊÇ·ñ·ûºÏÖÆ¶¨µÄ±ê×¼
ËùÓеıäÁ¿¶¼±»ÕýÈ·¶¨ÒåºÍʹÓÃ
ËùÓеÄ×¢ÊͶ¼ÊÇ׼ȷµÄ
ËùÓеijÌÐòµ÷Óö¼Ê¹ÓÃÁËÕýÈ·µÄ²ÎÊý¸öÊý
3£®4¿ÉÐÞ¸ÄÐÔ¼ì²é£¨Modifiability£©
´úÂëÉæ¼°µ½µÄ³£Á¿ÊÇ·ñÒ×ÓÚÐÞ¸Ä(ÈçʹÓÃÅäÖᢶ¨ÒåΪÀà³£Á¿¡¢Ê¹ÓÃרÃŵij£Á¿ÀàµÈ)
´úÂëÖÐÊÇ·ñ°üº¬Á˽»²æËµÃ÷»òÊý¾Ý×ֵ䣬ÒÔÃèÊö³ÌÐòÊÇÈçºÎ¶Ô±äÁ¿ºÍ³£Á¿½øÐзÃÎʵÄ
´úÂëÊÇ·ñÖ»ÓÐÒ»¸ö³ö¿ÚºÍÒ»¸öÈë¿Ú£¨ÑÏÖØµÄÒì³£´¦Àí³ýÍ⣩
3£®5¿ÉÔ¤²âÐÔ¼ì²é£¨Predictability£©
´úÂëËùÓõĿª·¢ÓïÑÔÊÇ·ñ¾ßÓж¨ÒåÁ¼ºÃµÄÓï·¨ºÍÓïÒå
ÊÇ·ñ´úÂë±ÜÃâÁËÒÀÀµÓÚ¿ª·¢ÓïÑÔȱʡÌṩµÄ¹¦ÄÜ
´úÂëÊÇ·ñÎÞÒâÖÐÏÝÈëÁËËÀÑ»·
´úÂëÊÇ·ñÊÇ·ñ±ÜÃâÁËÎÞÇîµÝ¹é
3£®6½¡×³ÐÔ¼ì²é£¨Robustness£©
´úÂëÊÇ·ñ²ÉÈ¡´ëÊ©±ÜÃâÔËÐÐʱ´íÎó£¨ÈçÊý×é±ß½çÒç³ö¡¢±»Áã³ý¡¢ÖµÔ½½ç¡¢¶ÑÕ»Òç³öµÈ£©
3£®7½á¹¹ÐÔ¼ì²é£¨Structuredness£©
³ÌÐòµÄÿ¸ö¹¦ÄÜÊÇ·ñ¶¼×÷Ϊһ¸ö¿É±çʶµÄ´úÂë¿é´æÔÚ
Ñ»·ÊÇ·ñÖ»ÓÐÒ»¸öÈë¿Ú
3£®8¿É×·ËÝÐÔ¼ì²é£¨Traceability£©
´úÂëÊÇ·ñ¶Ôÿ¸ö³ÌÐò½øÐÐÁËΨһ±êʶ
ÊÇ·ñÓÐÒ»¸ö½»²æÒýÓõĿò¼Ü¿ÉÒÔÓÃÀ´ÔÚ´úÂëºÍ¿ª·¢ÎĵµÖ®¼äÏ໥¶ÔÓ¦
´úÂëÊÇ·ñ°üÀ¨Ò»¸öÐÞ¶©ÀúÊ·¼Ç¼£¬¼Ç¼ÖжԴúÂëµÄÐ޸ĺÍÔÒò¶¼ÓмǼ
ÊÇ·ñËùÓеݲȫ¹¦Äܶ¼Óбêʶ
3£®9¿ÉÀí½âÐÔ¼ì²é£¨Understandability£©
×¢ÊÍÊÇ·ñ×ã¹»ÇåÎúµÄÃèÊöÿ¸ö×Ó³ÌÐò
ÊÇ·ñʹÓõ½²»Ã÷È·»ò²»±ØÒªµÄ¸´ÔÓ´úÂ룬ËüÃÇÊÇ·ñ±»Çå³þµÄ×¢ÊÍ
ʹÓÃһЩͳһµÄ¸ñʽ»¯¼¼ÇÉ£¨ÈçËõ½ø¡¢¿Õ°×µÈ£©ÓÃÀ´ÔöÇ¿´úÂëµÄÇåÎú¶È
ÊÇ·ñÔÚ¶¨ÒåÃüÃû¹æÔòʱ²ÉÓÃÁ˱ãÓÚ¼ÇÒ䣬·´Ó³ÀàÐ͵ȷ½·¨
ÿ¸ö±äÁ¿¶¼¶¨ÒåÁ˺Ϸ¨µÄȡֵ·¶Î§
´úÂëÖеÄËã·¨ÊÇ·ñ·ûºÏ¿ª·¢ÎĵµÖÐÃèÊöµÄÊýѧģÐÍ
3£®10¿ÉÑéÖ¤ÐÔ¼ì²é(Verifiability)
´úÂëÖеÄʵÏÖ¼¼ÊõÊÇ·ñ±ãÓÚ²âÊÔ
¶þ¡¢Code Review¾Ñé¼ì²éÏî
ÒÔÏÂÊÇÔÚʵ¼ùÖн¨Á¢µÄ¼ì²éÁÐ±í£¨checklist£©£¬Í¨¹ý·ÖÀàºÍÓÐÕë¶ÔÐԵļì²éÏ±£Ö¤ÁËCode
Review¿ÉÒÔÓеķÅʸ¡£
1 JAVA±àÂë¹æ·¶·½Ãæ¼ì²éÏî
¼ì²éÏî²ÎÕÕJAVA±àÂë¹æ·¶Ö´ÐУ¬¼û¡¶JAVA±àÂë¹æ·¶(Java Code
Conventions)¡·
2 ÃæÏò¶ÔÏóÉè¼Æ·½Ãæ¼ì²éÏî
Õ⼸µãµÄ·¶Î§¶¼ºÜ´ó£¬²»¿ÉÄÜÔÚ±¾ÎÄÕ¹¿ªÌÖÂÛ£¬ÓÐרÃŵÄÊé¼®½éÉÜÕâ·½ÃæÎÊÌ⣬µ±È»ÔÚCode
ReviewÖÐÖ÷Òª¿¿¾ÑéÀ´Åжϡ£
A) ÀàÉè¼ÆºÍ³éÏóÊÇ·ñºÏÊÊ
B) ÊÇ·ñ·ûºÏÃæÏò½Ó¿Ú±à³ÌµÄ˼Ïë
C) ÊÇ·ñ²ÉÓúÏÊʵÄÉè¼Æ·¶Ê½
3 ÐÔÄÜ·½Ãæ¼ì²éÏî
ÐÔÄܼì²éÔÚ´ó¶àÊý´úÂëÖж¼ÊÇÐèÒªÑÏÖØ¹Ø×¢µÄ·½Ã棬ҲÊÇ×îÈÝÒ׳öÏÖÎÊÌâµÄ·½Ã棬³£³£ÓгÌÐòԱд³öÁ˹¦ÄܺÍÓ﷨ûÓÐË¿ºÁÎÊÌâµÄ´úÂëºó£¬ÕýʽÔËÐÐʱȴÔÚÐÔÄÜÉϱíÏÖ²»¼Ñ£¬´Ó¶ø²»µÃ²»×ö´óÁ¿µÄ·µ¹¤£¬ÉõÖÁÊÇÍÆµ¹ÖØÀ´¡£
A) ÔÚº£Á¿Êý¾Ý³öÏÖʱ,¶ÓÁÐ,±í,Îļþ,ÔÚ´«Êä,uploadµÈ·½ÃæÊÇ·ñ»á³öÏÖÎÊÌâ,ÓÐÎÞ¿ØÖÆ,Èç·ÖÅäµÄÄÚ´æ¿é´óС,¶ÓÁг¤¶ÈµÈ¿ØÖƲÎÊý
B) ¶Ôhashtable,vectorµÈ¼¯ºÏÀàÊý¾Ý½á¹¹µÄÑ¡ÔñºÍÉèÖÃÊÇ·ñºÏÊÊ£¬ÈçÕýÈ·ÉèÖÃcapacity,load
factorµÈ²ÎÊý£¬Êý¾Ý½á¹¹µÄÊÇ·ñÊÇͬ²½µÄ
C) ÓÐÎÞÀÄÓÃString¶ÔÏóµÄÏÖÏó
D) ÊÇ·ñ²ÉÓÃͨÓõÄÏ̳߳ء¢¶ÔÏó³ØÄ£¿éµÈcache¼¼ÊõÒÔÌá¸ßÐÔÄÜ
E) ÀàµÄ½Ó¿ÚÊÇ·ñ¶¨ÒåÁ¼ºÃ£¬Èç²ÎÊýÀàÐ͵ȣ¬±ÜÃâÄÚ²¿×ª»»
F) ÊÇ·ñ²ÉÓÃÄÚ´æ»òÓ²ÅÌ»º³å»úÖÆÒÔÌá¸ßЧÂÊ
G) ²¢·¢·ÃÎÊʱµÄÓ¦¶Ô²ßÂÔ
H) I/O·½ÃæÊÇ·ñʹÓÃÁ˺ÏÊʵÄÀà»ò²ÉÓÃÁ¼ºÃµÄ·½·¨ÒÔÌá¸ßÐÔÄÜ£¨Èç¼õÉÙÐòÁл¯£¬Ê¹ÓÃbufferÀà·â×°Á÷µÈ£©
I) ͬ²½·½·¨µÄʹÓÃÊÇ·ñµÃµ±,ÊÇ·ñ¹ý¶ÈʹÓÃ
J) µÝ¹é·½·¨Öеĵþ´ú´ÎÊýÊÇ·ñºÏÊÊ£¬Ó¦¸Ã±£Ö¤ÔÚºÏÀíµÄÕ»¿Õ¼ä·¶Î§ÄÚ
K) Èç¹ûµ÷ÓÃÁË×èÈû·½·¨£¬ÊÇ·ñ¿¼ÂÇÁ˱£Ö¤ÐÔÄܵĴëÊ©
L) ±ÜÃâ¹ý¶ÈÓÅ»¯£¬¶ÔÐÔÄÜÒªÇó¸ßµÄ´úÂëÊÇ·ñʹÓÃprofile¹¤¾ß£¬ÈçJprobeµÈ
4 ×ÊԴй©´¦Àí·½Ãæ¼ì²éÏî
¶ÔÓÚJAVAÀ´ËµÓÉÓÚ´æÔÚÀ¬»øÊÕ¼¯»úÖÆ£¬ËùÒÔÄÚ´æÐ¹Â©²»ÊÇÌ«Ã÷ÏÔ£¬µ«Ê¹Óò»µ±£¬ÈÔÈ»´æÔÚÄÚ´æÐ¹Â©µÄÎÊÌâ¡£¶ø¶ÔÓÚÆäËüµÄÓïÑÔ£¬ÈçC++µÈÔÚÕâ·½Ãæ¾ÍÒªÑÏÖØ¹Ø×¢ÁË¡£µ±È»Êý¾Ý¿âÁ¬½Ó×ÊÔ´²»ÊͷŵÄÎÊÌâÒ²Êǹã´ó³ÌÐòÔ±×î³£¼ûµÄ£¬ÏàÐÅÓкܶàµÄPM±»Õâ¸öÎÊÌâÕÛÄ¥µÄËÀÈ¥»îÀ´¡£
A) ·ÖÅäµÄÄÚ´æÊÇ·ñÊÍ·Å£¬ÓÈÆäÔÚ´íÎó´¦Àí·¾¶ÉÏ£¨¶Ô·ÇJAVAÀࣩ
B) ´íÎó·¢ÉúʱÊÇ·ñËùÓеĶÔÏó±»ÊÍ·Å£¬ÈçÊý¾Ý¿âÁ¬½Ó¡¢Socket¡¢ÎļþµÈ
C) ÊÇ·ñͬһ¸ö¶ÔÏó±»ÊͷŶà´Î£¨¶Ô·ÇJAVAÀࣩ
D) ´úÂëÊÇ·ñ±£´æ×¼È·µÄ¶ÔÏóreference¼ÆÊý£¨¶Ô·ÇJAVAÀࣩ
5 Ḭ̈߳²È«·½Ãæ¼ì²éÏî
Ḭ̈߳²È«ÎÊÌâʵ¼ÊÉæ¼°Á½¸ö·½Ã棬һ¸öÊÇÐÔÄÜ£¬ÁíÒ»¸öÊÇ×ÊÔ´µÄÒ»ÖÂÐÔ£¬ÎÒÃÇÐèÒªÔÚÕâÁ½·½Ãæ×ö¸öȨºâ£¬ÏÖÔÚ¾ÍÊǵ½ÁËȨºâÀû±×µÄʱºòÁË¡£
A) ´úÂëÖÐËùÓеÄÈ«¾Ö±äÁ¿ÊÇ·ñÊÇḬ̈߳²È«µÄ
B) ÐèÒª±»¶à¸öÏ̷߳ÃÎʵĶÔÏóÊÇ·ñḬ̈߳²È«£¬¼ì²éÓÐÎÞͨ¹ýͬ²½·½·¨±£»¤
C) ͬ²½¶ÔÏóÉϵÄËøÊÇ·ñ°´ÏàͬµÄ˳Ðò»ñµÃºÍÊÍ·ÅÒÔ±ÜÃâËÀËø£¬×¢Òâ´íÎó´¦Àí´úÂë
D) ÊÇ·ñ´æÔÚ¿ÉÄܵÄËÀËø»òÊǾºÕù£¬µ±Óõ½¶à¸öËøÊ±£¬±ÜÃâ³öÏÖÀàËÆÇé¿ö£ºÏß³ÌA»ñµÃËø1£¬È»ºóËø2£¬Ïß³ÌB»ñµÃËø2£¬È»ºóËø1
E) ÔÚ±£Ö¤Ḭ̈߳²È«µÄͬʱ£¬Òª×¢Òâ±ÜÃâ¹ý¶ÈʹÓÃͬ²½£¬µ¼ÖÂÐÔÄܽµµÍ
6 ³ÌÐòÁ÷³Ì·½Ãæ¼ì²éÏî
A) Ñ»·½áÊøÌõ¼þÊÇ·ñ׼ȷ
B) ÊÇ·ñ±ÜÃâÁËËÀÑ»·µÄ²úÉú
C) ¶ÔÑ»·µÄ´¦ÀíÊÇ·ñºÏÊÊ£¬ÈçÑ»·±äÁ¿£¬¾Ö²¿¶ÔÏó£¬Ñ»·´ÎÊýµÈÄܹ»¿¼Âǵ½ÐÔÄÜ·½ÃæµÄÓ°Ïì
7 Êý¾Ý¿â´¦Àí·½Ãæ
ºÜ¶àCode ReviewÈËÔ±ÔÚÃæ¶Ô´úÂëÖÐÉæ¼°µ½µÄÊý¾Ý¿â¿ÉÒÆÖ²ÐÔºÍÌá¸ßÊý¾Ý¿âÐÔÄÜ·½ÃæµÄ³åͻʱ±íÏÖµÄÎÞËùÊÊ´Ó£¬·²ÊºÜÄÑÁ½È«ÆäÃÀµÄ°¡¡£
A) Êý¾Ý¿âÉè¼Æ»òSQLÓï¾äÊÇ·ñ±ãÓÚÒÆÖ²£¨×¢ÒâºÍÐÔÄÜ·½Ãæ»á´æÔÚ³åÍ»£©
B) Êý¾Ý¿â×ÊÔ´ÊÇ·ñÕý³£¹Ø±ÕºÍÊÍ·Å
C) Êý¾Ý¿â·ÃÎÊÄ£¿éÊÇ·ñÕýÈ··â×°£¬±ãÓÚ¹ÜÀíºÍÌá¸ßÐÔÄÜ
D) ÊÇ·ñ²ÉÓúÏÊʵÄÊÂÎñ¸ôÀë¼¶±ð
E) ÊÇ·ñ²ÉÓô洢¹ý³ÌÒÔÌá¸ßÐÔÄÜ
F) ÊÇ·ñ²ÉÓÃPreparedStatementÒÔÌá¸ßÐÔÄÜ
8 ͨѶ·½Ãæ¼ì²éÏî
A) socketͨѶÊÇ·ñ´æÔÚ³¤ÆÚ×èÈûÎÊÌâ
B) ·¢ËͽÓÊÕµÄÊý¾ÝÁ÷ÊÇ·ñ²ÉÓûº³å»úÖÆ
C) socket³¬Ê±´¦Àí£¬Òì³£´¦Àí
D) Êý¾Ý´«ÊäµÄÁ÷Á¿¿ØÖÆÎÊÌâ
9 JAVA¶ÔÏó´¦Àí·½Ãæ¼ì²éÏî
Õâ¸ö¼ì²éÏîµÄ»ù´¡ÊǶÔJAVA¶ÔÏóÓнÏÉîµÄÀí½â£¬µ«ÏÖʵÊǺܶ࿴¹ý¡¶Thinking
in Java¡·µÄ³ÌÐòÔ±£¬ÈÔÈ»ÔÚ³ÌÐòÖÐÎÞ·¨Çø·Ö´«ÖµºÍ´«ÒýÓã¬ÒÔ¼°¶ÔÏóºÍreferenceµÄÇø±ð¡£Õâ»òÐí¾ÍÊÇÀíÂÛºÍʵ¼ùÄÑÒÔ½áºÏµÄÎÊÌâ°¡¡£ÕýËùν֪¶ø²»ÐУ¬·ÇÕæÖªÒ²¡£
A) ¶ÔÏóÉúÃüÖÜÆÚµÄ´¦Àí,ÊÇ·ñ¶ÔÏóµÄreferenceÒѾʧЧ,Äܹ»ÉèÖÃΪnull,²¢±»»ØÊÕ
B) ÔÚ¶ÔÏóµÄ´«ÖµºÍ´«²Î·½ÃæÓÐÎÞÎÊÌâ,¶ÔÏóµÄclone·½·¨Ê¹ÓÃÊÇ·ñ¹ý¶È
C) ÊÇ·ñ´óÁ¿¾³£µÄ´´½¨ÁÙʱ¶ÔÏó
D) ÊÇ·ñ¾¡Á¿Ê¹Óþֲ¿¶ÔÏó(¶ÑÕ»¶ÔÏó)
E) ÔÚÖ»ÐèÒª¶ÔÏóreferenceµÄµØ·½ÊÇ·ñ´´½¨ÁËеĶÔÏóʵÀý
10 Òì³£´¦Àí·½Ãæ¼ì²éÏî
JAVAÖÐÌṩÁË·½±ãµÄÒì³£´¦Àí»úÖÆ£¬µ«ÆÕ±é´æÔÚµÄÊÇÒì³£±»²¶»ñ£¬µ«²¢Ã»Óеõ½´¦Àí¡£ÎÒÃÇ¿ÉÒÔ´ò¿ªÒ»¶Î´úÂ룬×î³£¼ûµÄÏÖÏóÊǽøÈëij¸ö·½·¨ºó£¬Ò»¸ö´óµÄtry/catch½«ËùÓдúÂëÐÐÀ¨×¡£¬È»ºóÔÚcatchÖн«Òì³£´òÓ¡µ½¿ØÖÆÌ¨£¬¶øÇÒ¸ÃÒì³£ÊÇException¶ÔÏó¡£
A) ÿ´Îµ±·½·¨·µ»ØÊ±ÊÇ·ñÕýÈ·´¦ÀíÁËÒì³££¬Èç×î¼òµ¥µÄ´¦Àí£¬¼Ç¼ÈÕÖ¾µ½ÈÕÖ¾ÎļþÖÐ
B) ÊÇ·ñ¶ÔÊý¾ÝµÄÖµºÍ·¶Î§ÊÇ·ñºÏ·¨½øÐÐУÑ飬°üÀ¨²ÉÓöÏÑÔ£¨assertion£©
C) ÔÚ³ö´í·¾¶ÉÏÊÇ·ñËùÓеÄ×ÊÔ´ºÍÄÚ´æ¶¼ÒѾÊÍ·Å
D) ËùÓÐÅ׳öµÄÒì³£¶¼µÃµ½ÕýÈ·µÄ´¦Àí£¬ÌØ±ðÊǶÔ×Ó·½·¨Å׳öµÄÒì³££¬ÔÚÕû¸öµ÷ÓÃÕ»ÖбØÐëÄܹ»±»²¶×½²¢´¦Àí
E) µ±µ÷Óõ¼Ö´íÎó·¢Éúʱ£¬·½·¨µÄµ÷ÓÃÕßÓ¦¸ÃµÃµ½Ò»¸ö֪ͨ
F) ²»ÒªÍüÁ˶ԴíÎó´¦Àí²¿·ÖµÄ´úÂë½øÐвâÊÔ£¬ºÜ¶à´úÂëÔÚÕý³£Çé¿öÏÂÖ´ÐÐÁ¼ºÃ£¬¶øÒ»µ©³ö´í£¬Õû¸öϵͳ¾Í±ÀÀ£ÁË
11 ·½·¨£¨º¯Êý£©·½Ãæ¼ì²éÏî
A) ·½·¨µÄ²ÎÊýÊÇ·ñ¶¼×öÁËУÑé
B) Êý×éÀà½á¹¹ÊÇ·ñ×öÁ˱߽çУÑé
C) ±äÁ¿ÔÚʹÓÃǰÊÇ·ñ×öÁ˳õʼ»¯
D) ·µ»Ø¶Ñ¶ÔÏóµÄreference£¬²»Òª·µ»ØÕ»¶ÔÏóµÄreference
E) ·½·¨APIÊÇ·ñ±»Á¼ºÃ¶¨Ò壬¼´ÊÇ·ñ¾¡Á¿ÃæÏò½Ó¿Ú±à³Ì£¬±ãÓÚά»¤ºÍÖØ¹¹
12 °²È«·½Ãæ¼ì²éÏî
A) ¶ÔÃüÁîÐÐÖ´ÐеĴúÂ룬ÐèÒªÏêϸ¼ì²éÃüÁîÐвÎÊý
B) WEBÀà³ÌÐò¼ì²éÊÇ·ñ¶Ô·ÃÎʲÎÊý½øÐкϷ¨ÐÔÑéÖ¤
C) ÖØÒªÐÅÏ¢µÄ±£´æÊÇ·ñÑ¡ÓúÏÊʵļÓÃÜËã·¨
D) ͨѶʱ¿¼ÂÇÊÇ·ñÑ¡Óð²È«µÄͨѶ·½Ê½
13 ÆäËû
A) ÈÕÖ¾ÊÇ·ñÕý³£Êä³öºÍ¿ØÖÆ
B) ÅäÖÃÐÅÏ¢ÈçºÎ»ñµÃ,ÊÇ·ñÓÐÓ²±àÂë
Èý¡¢×ܽá
ͨ¹ýÔÚÏîÄ¿ÖÐʵʩCode Review½«ÎªÎÒÃÇ´øÀ´¶à·½ÃæµÄºÃ´¦£¬±íÏÖÔÚÌá¸ß´úÂëÖÊÁ¿£¬±£Ö¤ÏîÄ¿»ò²úÆ·µÄÎȶ¨ÐÔ£¬¿ª·¢¾ÑéµÄ»ýÀ۵ȣ¬¾ßÌåµÄʵʩµ±È»Ò²Òª¿´ÏîÄ¿µÄʵ¼ÊÇé¿ö£¬ÒòΪCode
ReviewÒ²ÊÇÐèÒª³É±¾µÄ£¬Õâ·½ÃæÊôÓÚCode Review¹ý³ÌµÄÎÊÌ⣬½«ÔÚÆäËûÎÄÕÂÖнøÐÐ̽ÌÖ¡£
|