2007年10月6日星期六

程序界面设计模式慨述 | 站长资讯

ÏÖÔÚ¿ª·¢Ó¦ÓóÌÐò¾­³£Ê¹ÓÃһЩËù¼û¼´ËùµÃµÄ¿ª·¢»·¾³£¬Ê¹µÃÓû§½çÃæµÄÖÆ×÷·Ç³£·½±ã¡£È»¶ø£¬Óû§½çÃæÊÇ×îÈÝÒ×·¢ÉúÐèÇó±ä¸üµÄ²¿·Ö£¬Óû§½çÃæ·¢Éú±ä»¯£¬¾­³£¶ÔÒµÎñÄ£¿é²úÉúÓ°Ïì¡£²¢ÇÒ£¬Óû§½çÃæÊDz»ÀûÓÚ×Ô¶¯²âÊԵġ£Ò»µ©Ä³Ð©´úÂëÒÀÀµÓû§½çÃæ£¬ÕâÑùµÄ´úÂë¾ÍºÜÄÑÔÚ±ðµÄÄ£¿éÖе÷ÓÃÁË£¬Òò´ËÒµÎñÂß¼­²»ÄÜÔÚ½çÃæ²ã´ÎÖнøÐУ¬·ñÔò»áÔì³É²»Äܸ´Ó㬲»Äܸ´ÓÃ×ÔÈ»»áÔö¼Ó¸´ÖÆÕ³ÌùµÄ´úÂ룬Ôì³É´íÎóµÄÀ©É¢£¬·Å´óÐèÇó±ä¸üµÄÓ°Ïì¡£ÔÚ³ÌÐòÉè¼ÆÖУ¬Ó¦¸Ã¾¡Á¿×öµ½Óû§½çÃæºÍµ×²ãµÄÒµÎñÄ£ÐÍ·ÖÀë¡£

Óû§½çÃæºÍÒµÎñÄ£¿éµÄ»¥¶¯·½Ê½£¬ÔÚ³ÌÐòÉè¼ÆÖо­³£²ÉÓÃMVCģʽ¡£MVCģʽ²¢²»ÊÇÒ»¸öÌØ±ðµÄģʽ£¬¶øÊÇÒ»Ð©ÌØ¶¨Ä£Ê½µÄ×éºÏ¡£»ù±¾ÉϰüÀ¨Èý¸ö¶ÔÏó£ºÒµÎñÄ£¿é£¨Model£©¡¢Óû§½çÃæ£¨View£©ºÍ¿ØÖÆÆ÷£¨Controller£©£¬¹ØÏµÈçÏ£º


ͼÖÐʵÏß±íʾ¸ßñîºÏµÄÒÀÀµ¹ØÏµ£¬ÐéÏß±íʾµÍñîºÏµÄÏûÏ¢¹ØÏµ¡£ÒµÎñÄ£¿éÊDz»ÒÀÀµÓû§½çÃæµÄ£¬ÕâÑù¾Í¸ôÀëÁËÓû§½çÃæµÄ±ä¸ü¶ÔÒµÎñ³ÌÐòµÄÓ°Ïì¡£Óû§½çÃæ¸ºÔðÊÕ¼¯Óû§µÄÊäÈ룬ÏÔʾÓû§ÐèÒªµÄÊý¾Ý£»¿ØÖÆÆ÷¸ºÔð½«Óû§µÄÇëÇóµ÷Óõ½Êµ¼ÊµÄÒµÎñ³ÌÐò£¬Ò²½«ÒµÎñ³ÌÐò´¦ÀíµÄ½á¹û»ØË͸øÓû§½çÃæ£»ÒµÎñ³ÌÐò¾ßÌå´¦ÀíÒµÎñ²Ù×÷¡£Í¬Ê±ÒµÎñÄ£¿é¿ÉÄÜÖ÷¶¯·¢ËÍÏûÏ¢µ½Óû§½çÃæ£¬Í¨Öª½çÃæÏÔʾÊý¾Ý¡£

ÔÚ¾ßÌåµÄ»·¾³Ï£¬ÕâЩÒòËØ¿ÉÄÜ·¢ÉúһЩ±ä»¯¡£±ÈÈ磬ÔÚweb¿ª·¢ÖУ¬ÓÉÓÚwebÓ¦ÓóÌÐòµÄÐÔÖÊ£¬Óû§½çÃæÊÇÔÚä¯ÀÀÆ÷ÉÏÔËÐе쬶ø½çÃæµÄ¿ØÖƺÍÒµÎñÄ£¿éÔÚä¯ÀÀÆ÷ÉÏÔËÐУ¬ËùÒÔÔÚwebÓ¦ÓÃÖÐͨ³£²ÉÓÃÕâÖÖµäÐ͵ÄMVCģʽ¡£²¢ÇÒÔÚWebÓ¦ÓÃÖУ¬²»´æÔÚ·þÎñÆ÷Ö÷¶¯Ïò¿Í»§¶Ë¡°ÍÆ¡±Êý¾Ý£¬Òò´Ë´ÓModelµ½ViewÖ®¼äµÄÐéÏßÒ²ÊDz»´æÔڵġ£ÔÚwindows´°Ìå³ÌÐòÖУ¬¿ØÖÆÆ÷ºÍ½çÃæ¾­³£ÊǺϲ¢ÔÚÒ»ÆðµÄ£¬±ÈÈçMFC¿ò¼ÜÖÐʹÓõÄDocument£­Viewģʽ£¬ÆäÖеÄDocument¶ÔÓ¦MVCÖеÄModel£¬¸ºÔð±£´æÒµÎñÊý¾Ý£¬´¦ÀíÒµÎñÂß¼­£¬ViewÏ൱ÓÚMVCÖеÄView£«Controller£¬¸ºÔðÓû§½çÃæµÄÏÔʾ¡¢Óû§ÊäÈëµÄÊÕ¼¯ºÍ»­ÃæµÄÌø×ª¿ØÖÆ¡£

ºÃµÄÉè¼ÆºÍ»µµÄÉè¼ÆÓÐʱºòÐèҪдµÄ´úÂëÊÇÒ»Ñù¶àµÄ£¬µ«ÊÇÕâЩ´úÂë·ÅµÄλÖò»Ò»Ñù¡£MVCÖÐ×îÖØÒªµÄÒ»µã¾ÍÊÇÇå³þControllerÓ¦¸Ã´¦ÓÚʲôÑùµÄµØÎ»£¬Ó¦¸ÃÍê³ÉʲôÑùµÄ¹¦ÄÜ¡£ÏÂÃæÓÃÒ»¸öwebÓ¦ÓóÌÐòµÄÀý×ÓÀ´ËµÃ÷һϡ£

Jsp±à³ÌÓÐһЩMVCµÄ¿ò¼Ü£¬±ÈÈçStruts£¬Struts¿ØÖÆÆ÷µÄ¹¤×÷ÈçÏ£ºÊ×ÏÈÊÇÒ»¸öÇëÇó·ÖÅÉ»úÖÆ£¬¸ºÔð¼àÌýÇëÇóºÍ·ÖÅäÇëÇó£¬È»ºóÊÇÒ»¸öCommandģʽµÄʵÏÖ£¬¸ºÔð´¦ÀíÇëÇó¡£Ê×ÏÈÊÕµ½·þÎñÆ÷ÊÕµ½¿Í»§¶ËµÄhttpÇëÇ󣬽»¸ø¿ØÖÆÆ÷·ÖÎöÆäÖеĵØÖ·£¬ÔÚÒ»¸öÅäÖÃÎļþÖÐѰÕÒ¶ÔÓ¦µÄ´¦ÀíÕߣ¨Ò»¸öActionµÄ×ÓÀࣩ£¬½¨Á¢Õâ¸öÀàµÄʵÀý£¬ËæºóÖ´ÐÐÆäexecute·½·¨£¬ActionÀàÖе÷ÓÃÒµÎñÄ£¿é½øÐÐʵ¼ÊÒµÎñµÄ´¦Àí£¨ÔÚ´¦Àí֮ǰ½øÐбØÒªµÄ×¼±¸£¬±ÈÈç·ÖÎöÇëÇóµÄ²ÎÊý£¬½«Æäת»¯ÎªÒµÎñÄ£ÐÍÁ˽âµÄ¶ÔÏ󣩣¬µÃµ½´¦Àí½á¹û£¬¸ù¾Ý´¦ÀíµÄ½á¹û¾ö¶¨ÐèÒªÏÔʾµÄView¡£Õâ¸öÐèÒªÏÔʾµÄViewÔÚStruts¿ò¼ÜÖÐÒ²ÊÇÔÚÎļþÖÐÅäÖõġ£

ÕâÊÇÒ»ÖÖ¼¯ÖÐʽµÄ¿ØÖÆÆ÷£¬Ó¦ÓóÌÐòʹÓÃÒ»¸öͳһµÄController¡£²»½öʹҵÎñºÍ½çÃæ·ÖÀ뿪£¬²¢ÇÒ½çÃæµÄÁ÷³ÌÍêÈ«ÓÉͬһ¸ö¶ÔÏóÀ´¿ØÖÆ¡£×îÖØÒªµÄÊÇ£¬Ê¹µÃ¹¦ÄܵÄÐ޸ĺÍ×·¼Ó±äµÃ±È½Ï·½±ã£¬¿ØÖÆÆ÷³ÉΪҵÎñÄ£¿éµÄ»º³å£¬¼õÇáÁËÐèÇó±ä»¯¶ÔÒµÎñÄ£¿éµÄÓ°Ïì¡£

ºÜ¶àwindows´°Ìå³ÌÐòÒ²²ÉÓÃÕâÑùµÄ¿ØÖÆÆ÷¡£ÓÐÒ»¸ö¿ª·ÅÔ´ÂëµÄ.Net¿ª·¢¹¤¾ß£¬½Ð×öSharpDev£¬±¾ÉíÒ²ÊÇÓÃc#¿ª·¢µÄ£¬²ÉÓõľÍÊÇÕâÑùµÄ¼¯ÖпØÖÆ·½Ê½¡£SharpDevÊÇÓÃadd-inµÄ·½Ê½½øÐÐÔöÁ¿¿ª·¢µÄ£¬³ÌÐòÖеŦÄÜ£¬Èç´ò¿ªÎļþ¡¢±£´æÎļþ¡¢ÔËÐÐij¸öÏòµ¼µÈ¹¦Äܶ¼ÊÇÒ»¸ö¸ö¶ÀÁ¢µÄadd-in£¬Ê¹ÓÃÁËCommandģʽ¡£³ÌÐòÔËÐйý³Ì´óÖÂÈçÏ£ºÓ¦ÓóÌÐò³õʼ»¯µÄʱºò£¬¶ÁÈ¡ÅäÖÃÎļþÖÐËùÓÐÃû³ÆÎª*.add-inµÄÎļþ£¬µÃµ½³ÌÐòÖÐËùÓеÄadd-in£¬¿ÉÒÔ°ÑÕâЩadd-in¿´×÷Ò»¸öICommand½Ó¿ÚµÄʵÏÖ¡£¸ù¾ÝÅäÖÃÎļþ½¨Á¢ÕâЩICommandµÄʵÀý£¬°ó¶¨ÔÚ¶ÔÓ¦µÄ²Ëµ¥ÏîºÍ¹¤¾ßÀ¸°´Å¥ÉÏ¡£µ±Óû§µã»÷ÕâЩ²Ëµ¥ÏîºÍ¹¤¾ßÀ¸°´Å¥µÄʱºò£¬ÓÉÒ»¸öÈÎÎñ·ÖÅɵĶÔÏó½«ÇëÇó¶¨Î»µ½Ò»¸öCommandÉÏ£¬Ö´ÐÐÆäRun·½·¨¡£CommandÖ´ÐеÄʱºò¿ÉÄÜÒªµ÷ÓÃÒµÎñ³ÌÐò£¬ÒµÎñ³ÌÐòÊÇͨ¹ýһϵÁеÄService¶ÔÍâÌṩ¹¦Äܵ쬲»Ö±½ÓÏòÍâ½ç±©Â¶¡£Controller¾ÍÊǸºÔð¶¨ÏòÓû§²Ù×÷µ½¾ßÌåCommandµÄ·ÖÅÉÆ÷¡£

´°ÌåÓ¦ÓóÌÐò»¹ÓÐÒ»¸öÌØµã£ºÓÐʱºòÒµÎñ¸Ä±äµÄʱºò£¬ÐèÒªÓû§½çÃæ×÷³öÏàÓ¦µÄ±ä»¯¡£±ÈÈ磺µ±´úÂë±à¼­Æ÷ÖеÄÎÄ×Ö·¢Éú±ä¸üµÄʱºò£¬¹¤¾ßÀ¸Éϵı£´æ°´Å¥ÒªÖÃΪ¿ÉÓÃ״̬£¬µ±±£´æºó£¬±£´æ°´Å¥ÓÖÒªÖÃΪ»ÒÉ«¡£ÕâÑùµÄ¹¦ÄÜÊÇͨ¹ýÒ»¸öObserveorģʽÀ´ÊµÏֵģ¬Õâ¾Í±ÜÃâÁËÒµÎñÄ£¿é¶ÔÓû§½çÃæµÄÒÀÀµ£¬²¢ÇÒÕâÑùµÄģʽҲ±ãÓÚͬʱ½«ÏûÏ¢·¢Ë͸ø¶à¸ö¶ÔÏ󣬱ÈÈç±£´æ°´Å¥²»½öÒªÔÚ¹¤¾ßÀ¸ÉϳöÏÖ£¬Ò²ÒªÔڲ˵¥ÉϳöÏÖ£¬ÕâÑùµÄ±ä»¯ÊDz»»áÓ°ÏìÒµÎñÄ£¿éµÄ¡£ÔÚSharpDevÖУ¬Õâ¸ö½»»¥µÄ¹ý³ÌÒ²ÊÇÔÚÒµÎñÄ£¿é¶ÔÍâÌṩµÄServiceÖÐͨ¹ýdelegateÀ´ÊµÏֵġ£

ºÜ¶àÓ¦ÓóÌÐò²ÉÓõÄÊÇÁíÒ»ÖÖ¿ØÖÆÄ£Ê½£ºÃ¿¸ö»­ÃæºÍ´°¿ÚʹÓÃ×Ô¼ºµÄ¿ØÖÆÆ÷¡£ÔÚ´°Ìå³ÌÐòÖУ¬ÕâÑùµÄ·½Ê½Êµ¼ÊÉϾͽ«Óû§½çÃæºÍ¿ØÖÆÆ÷ÈÚºÏÔÚÒ»ÆðÁË£¬±ÈÈçMFCÖеÄDocument£­View£¬View²»½öʵÏÖÓû§Êý¾ÝµÄչʾºÍÊäÈëÊý¾ÝµÄÊÕ¼¯£¬»¹Òª½«Óû§µÄÊäÈë½øÐлù±¾µÄ´¦Àí£¬×ª±äΪҵÎñÄ£¿éÁ˽âµÄÀàÐÍ£¬µ÷ÓÃÒµÎñÄ£¿é½øÐд¦Àí£¬×îºóÌø×ªµ½±ðµÄ´°¿Ú¡£

ÔÚASP.NETÖÐʹÓÃcode behideµÄ±à³Ì¿ò¼Ü£¬Êµ¼ÊÉÏÒ²ÊÇΪÿһ¸öÓû§½çÃæ²ÉÓÃÁËÒ»¸ö¶ÀÁ¢µÄController£¬aspxÎļþ¾ÍÊÇÓû§½çÃæ£¬¶ÔÓ¦µÄcode behide´úÂë¾ÍÊÇËûµÄ¿ØÖÆÆ÷¡£ÕâÑùµÄ¿ò¼Ü¼õÉÙÁ˳ÌÐòµÄÁé»îÐÔ£¬µ«ÊÇÔÚÒ»°ãÇé¿öÏ¿ÉÒÔʹӦÓóÌÐòµÄ¿ò¼Ü±äµÃ¼òµ¥ºÍÖ±½Ó¡£

没有评论: