Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Modeler   Code  
»áÔ±   
 
   
 
 
     
   
 ¶©ÔÄ
  ¾èÖú
¸ßÖÊÁ¿´úÂëÓÐÈýÒªËØ£º¿É¶ÁÐÔ¡¢¿Éά»¤ÐÔ¡¢¿É±ä¸üÐÔ
 

×÷Õß ¹â»Ô·ÉÏ裬»ðÁú¹ûÈí¼þ ·¢²¼ÓÚ£º2014-09-09

  8810  次浏览      28
 

½ñÌìÕâÌÃÅàѵ¿Î½²Ê²Ã´ÄØ£¿ÎҼȲ»½²Spring£¬Ò²²»½²Hibernate£¬¸ü²»½²Ext£¬ÎÒ²»½²ÈκÎÒ»¸ö¾ßÌåµÄ¼¼Êõ¡£ÎÒÃÇÅ׿ªÈκξßÌåµÄ¼¼Êõ£¬À´Ì¸Ì¸ÈçºÎÌá¸ß´úÂëÖÊÁ¿¡£ÈçºÎÌá¸ß´úÂëÖÊÁ¿£¬ÏàÐŲ»½öÊÇÔÚ×ùËùÓÐÈË¿àÄÕµÄÊÂÇ飬ҲÊÇËùÓÐÈí¼þÏîÄ¿¿àÄÕµÄÊÂÇé¡£ÈçºÎÌá¸ß´úÂëÖÊÁ¿ÄØ£¬ÎÒÈÏΪÎÒÃÇÊ×ÏÈÒªÀí½âʲôÊǸßÖÊÁ¿µÄ´úÂë¡£

¸ßÖÊÁ¿´úÂëµÄÈýÒªËØ

ÎÒÃÇÆÀ¼Û¸ßÖÊÁ¿´úÂëÓÐÈýÒªËØ£º¿É¶ÁÐÔ¡¢¿Éά»¤ÐÔ¡¢¿É±ä¸üÐÔ¡£ÎÒÃǵĴúÂëÒªÒ»¸ö¶¼²»ÄÜÉٵشﵽÁËÕâÈýÒªËØµÄÒªÇó²ÅÄÜËã¸ßÖÊÁ¿µÄ´úÂë¡£

1. ¿É¶ÁÐÔÇ¿

Ò»Ìáµ½¿É¶ÁÐÔËÆºõÓÐһЩÀÏÉú³£Ì¸µÄζµÀ£¬µ«ÁîÈ˾ÚÉ¥µÄÊÇ£¬ËäÈ»´ó¼ÒÒ»¶øÔÙ£¬ÔÙ¶øÈýµØÇ¿µ÷¿É¶ÁÐÔ£¬µ«ÎÒÃǵĴúÂëÔڿɶÁÐÔ·½ÃæÒÀÈ»×öµÃ·Ç³£Ôã¸â¡£ÓÉÓÚ¹¤×÷µÄÐèÒª£¬ÎÒ³£³£ÐèҪȥÔĶÁËûÈ˵ĴúÂ룬ά»¤ËûÈËÉè¼ÆµÄÄ£¿é¡£Ã¿µ±ÎÒ¿´µ½´ó¶Î´ó¶Î¡¢ÃÜÃÜÂéÂéµÄ´úÂ룬¶øÇÒ»¹Ã»ÓÐÈκεÄ×¢ÊÍʱ³£³£¸Ð¿®²»ÒÑ£¬ÉîÉîÌå»áµ½ÁËÕâÏ×÷µÄÖØÒª¡£ÓÉÓÚ·Ö¹¤µÄÐèÒª£¬ÎÒÃÇдµÄ´úÂëÄÑÃâÐèÒª±ðÈËÈ¥ÔĶÁºÍά»¤µÄ¡£¶ø¶ÔÓÚÐí¶à³ÌÐòÔ±À´Ëµ£¬ËûÃǺÜÉÙÈ¥ÔĶÁºÍά»¤±ðÈ˵ĴúÂë¡£ÕýÒòΪÈç´Ë£¬ËûÃǺÜÉÙ¹Ø×¢´úÂëµÄ¿É¶ÁÐÔ£¬Ò²¶ÔÈçºÎÌá¸ß´úÂëµÄ¿É¶ÁÐÔȱ·¦ÇÐÉíÌå»á¡£ÓÐʱ¼´Ê¹Îª´úÂë±àдÁË×¢ÊÍ£¬Ò²³£³£ÊÇ×¢ÊÍÓïÑÔ»ÞɬÄѶ®ÐÎͬÌìÊ飬ÁîÔĶÁÕß·´¸´Õå×ÃÒÀÈ»²»Ã÷ÆäÒâ¡£Õë¶ÔÒÔÉÏÎÊÌ⣬ÎÒ¸ø´ó¼ÒÒÔϽ¨Ò飺

1£©²»Òª±àд´ó¶ÎµÄ´úÂë

Èç¹ûÄãÓÐÔĶÁËûÈË´úÂëµÄ¾­Ñ飬µ±Äã¿´µ½±ðÈËдµÄ´ó¶Î´ó¶ÎµÄ´úÂ룬¶øÇÒ»¹²»Ôõô´ø×¢ÊÍ£¬ÄãÊÇÔõÑùµÄ¸Ð¾õ£¬ÊDz»ÊÇ¡°ÎË¡±µØÒ»ÉùÍ·´ó¡£¸÷ÖÖ¸÷ÑùµÄ¹¦ÄܾÀ²øÔÚÒ»¸ö·½·¨ÖУ¬¸÷ÖÖ±äÁ¿À´»Øµ÷Óã¬ÏàÐÅÈκÎÈ˶಻»áÈÏΪËüÊǸßÖÊÁ¿µÄ´úÂ룬µ«È´Æµ·±µØ³öÏÖÔÚÎÒÃDZàдµÄ³ÌÐòÁË¡£Èç¹ûÏÖÔÚÄãÔٻعË×Ô¼ºÐ´¹ýµÄ´úÂ룬Äã»á·¢ÏÖ£¬ÉÔ΢±àдһ¸ö¸´ÔӵŦÄÜ£¬¼¸°ÙÐеĴúÂë¾Í³öÈ¥ÁË¡£Ò»Ð©±È½ÏºÃµÄ°ì·¨¾ÍÊǷֶΡ£½«´ó¶ÎµÄ´úÂë¾­¹ýÕûÀí£¬·ÖΪ¹¦ÄÜÏà¶Ô¶ÀÁ¢µÄÒ»¶ÎÓÖÒ»¶Î£¬²¢ÇÒÔÚÿ¶ÎµÄǰ¶Ë±àдһ¶Î×¢ÊÍ¡£ÕâÑùµÄ±àд£¬±ÈÇ°ÃæÄÇЩÔÓÂÒÎÞÕµĴó¶Î´úÂëȷʵ½ø²½Á˲»ÉÙ£¬µ«ËüÃÇÔÚ¹¦ÄܶÀÁ¢ÐÔ¡¢¿É¸´ÓÃÐÔ¡¢¿Éά»¤ÐÔ·½ÃæÒÀÈ»²»¾¡ÈËÒâ¡£´ÓÁíÒ»¸ö±È½ÏרҵµÄÆÀ¼Û±ê×¼À´Ëµ£¬ËüûÓÐʵÏÖµÍñîºÏ¡¢¸ßÄÚ¾Û¡£ÎÒ¸ø´ó¼ÒµÄ½¨ÒéÊÇ£¬½«ÕâЩÏà¶Ô¶ÀÁ¢µÄ¶ÎÂäÁíÍâ·â×°³ÉÒ»¸öÓÖÒ»¸öµÄº¯Êý¡£

Ðí¶à´óʦÔÚ×Ô¼ºµÄ¾­µäÊé¼®ÖУ¬¶¼¹ÄÀøÎÒÃÇÔÚ±àд´úÂëµÄ¹ý³ÌÖÐÓ¦µ±Ñø³É²»¶ÏÖØ¹¹µÄϰ¹ß¡£ÎÒÃÇÔÚ±àд´úÂëµÄ¹ý³ÌÖг£³£Òª±àдһЩ¸´ÔӵŦÄÜ£¬Æð³õÊÇдÔÚÒ»¸öÀàµÄÒ»¸öº¯ÊýÖС£Ëæ×Ź¦ÄܵÄÖð½¥Õ¹¿ª£¬ÎÒÃÇ¿ªÊ¼¶Ô¸´ÔÓ¹¦ÄܽøÐйéÄÉÕûÀí£¬ÕûÀí³öÁËÒ»¸öÓÖÒ»¸öµÄ¶ÀÁ¢¹¦ÄÜ¡£ÕâЩ¶ÀÁ¢¹¦ÄÜÓÐËüÓëÆäËü¹¦ÄÜÏ໥½»Á÷µÄÊäÈëÊä³öÊý¾Ý¡£µ±ÎÒÃÇ·ÖÎöµ½´Ë´¦Ê±£¬ÎÒÃÇ»á·Ç³£×ÔÈ»µØÒª½«ÕâЩ¹¦ÄÜ´ÓÔ­º¯ÊýÖзÖÀë³öÀ´£¬ÐγÉÒ»¸öÓÖÒ»¸ö¶ÀÁ¢µÄº¯Êý£¬¹©Ô­º¯Êýµ÷Óá£ÔÚ±àдÕâЩº¯Êýʱ£¬ÎÒÃÇÓ¦µ±×Ðϸ˼¿¼Ò»Ï£¬ÎªËüÃÇȡһ¸öÊÍÒåÃû³Æ£¬²¢ÎªËüÃDZàдעÊÍ£¨ºóÃæ»¹½«ÏêϸÌÖÂÛÕâ¸öÎÊÌ⣩¡£ÁíÒ»¸öÐèҪ˼¿¼µÄÎÊÌâÊÇ£¬ÕâЩº¯ÊýÓ¦µ±·Åµ½Ê²Ã´µØ·½¡£ÕâЩº¯Êý¿ÉÄÜ·ÅÔÚÔ­ÀàÖУ¬Ò²¿ÉÄܷŵ½ÆäËüÏàÓ¦Ö°ÔðµÄÀàÖУ¬Æä×ñÑ­µÄÔ­ÔòÓ¦µ±ÊÇ¡°Ö°ÔðÇý¶¯Éè¼Æ¡±£¨ºóÃæÒ²½«ÏêϸÃèÊö£©¡£

ÏÂÃæÊÇÎÒ±àдµÄÒ»¸ö´ÓXMLÎļþÖжÁÈ¡Êý¾Ý£¬½«ÆäÉú³É¹¤³§µÄÒ»¸öÀà¡£Õâ¸öÀà×îÖ÷ÒªµÄÒ»¶Î³ÌÐò¾ÍÊdzõʼ»¯¹¤³§£¬¸Ã¹¦ÄܹéÄÉÆðÀ´¾ÍÊÇÈý²¿·Ö¹¦ÄÜ£ºÓø÷ÖÖ·½Ê½³¢ÊÔ¶ÁÈ¡Îļþ¡¢ÒÔDOMµÄ·½Ê½½âÎöXMLÊý¾ÝÁ÷¡¢Éú³É¹¤³§¡£¶øÕâЩ¹¦Äܱ»ÎÒ¹éÄÉÕûÀíºó·â×°ÔÚÒ»¸ö²»Í¬µÄº¯ÊýÖУ¬²¢ÇÒΪÆäÈ¡ÁËÊÍÒåÃû³ÆºÍ±àдÁË×¢ÊÍ£º

Java´úÂë

/**
* ³õʼ»¯¹¤³§¡£¸ù¾Ý·¾¶¶ÁÈ¡XMLÎļþ£¬½«XMLÎļþÖеÄÊý¾Ý×°ÔØµ½¹¤³§ÖÐ
* @param path XMLµÄ·¾¶
*/
public void initFactory(String path){
if(findOnlyOneFileByClassPath(path)){return;}
if(findResourcesByUrl(path)){return;}
if(findResourcesByFile(path)){return;}
this.paths = new String[]{path};
}
/**
* ³õʼ»¯¹¤³§¡£¸ù¾Ý·¾¶ÁбíÒÀ´Î¶ÁÈ¡XMLÎļþ£¬½«XMLÎļþÖеÄÊý¾Ý×°ÔØµ½¹¤³§ÖÐ
* @param paths ·¾¶Áбí
*/
public void initFactory(String[] paths){
for(int i=0; i<paths.length; i++){
initFactory(paths[i]);
}
this.paths = paths;
}
/**
* ÖØÐ³õʼ»¯¹¤³§£¬³õʼ»¯ËùÐèµÄ²ÎÊý£¬ÎªÉÏÒ»´Î³õʼ»¯¹¤³§ËùÓõIJÎÊý¡£
*/
public void reloadFactory(){
initFactory(this.paths);
}
/**
* ²ÉÓÃClassLoaderµÄ·½Ê½ÊÔͼ²éÕÒÒ»¸öÎļþ£¬²¢µ÷ÓÃ<code>readXmlStream()</code>½øÐнâÎö
* @param path XMLÎļþµÄ·¾¶
* @return ÊÇ·ñ³É¹¦
*/
protected boolean findOnlyOneFileByClassPath(String path){
boolean success = false;
try {
Resource resource = new ClassPathResource(path, this.getClass());
resource.setFilter(this.getFilter());
InputStream is = resource.getInputStream();
if(is==null){return false;}
readXmlStream(is);
success = true;
} catch (SAXException e) {
log.debug("Error when findOnlyOneFileByClassPath:"+path,e);
} catch (IOException e) {
log.debug("Error when findOnlyOneFileByClassPath:"+path,e);
} catch (ParserConfigurationException e) {
log.debug("Error when findOnlyOneFileByClassPath:"+path,e);
}
return success;
}
/**
* ²ÉÓÃURLµÄ·½Ê½ÊÔͼ²éÕÒÒ»¸öĿ¼ÖеÄËùÓÐXMLÎļþ£¬²¢µ÷ÓÃ<code>readXmlStream()</code>½øÐнâÎö
* @param path XMLÎļþµÄ·¾¶
* @return ÊÇ·ñ³É¹¦
*/
protected boolean findResourcesByUrl(String path){
boolean success = false;
try {
ResourcePath resourcePath = new PathMatchResource(path, this.getClass());
resourcePath.setFilter(this.getFilter());
Resource[] loaders = resourcePath.getResources();
for(int i=0; i<loaders.length; i++){
InputStream is = loaders[i].getInputStream();
if(is!=null){
readXmlStream(is);
success = true;
}
}
} catch (SAXException e) {
log.debug("Error when findResourcesByUrl:"+path,e);
} catch (IOException e) {
log.debug("Error when findResourcesByUrl:"+path,e);
} catch (ParserConfigurationException e) {
log.debug("Error when findResourcesByUrl:"+path,e);
}
return success;
}
/**
* ÓÃFileµÄ·½Ê½ÊÔͼ²éÕÒÎļþ£¬²¢µ÷ÓÃ<code>readXmlStream()</code>½âÎö
* @param path XMLÎļþµÄ·¾¶
* @return ÊÇ·ñ³É¹¦
*/
protected boolean findResourcesByFile(String path){
boolean success = false;
FileResource loader = new FileResource(new File(path));
loader.setFilter(this.getFilter());
try {
Resource[] loaders = loader.getResources();
if(loaders==null){return false;}
for(int i=0; i<loaders.length; i++){
InputStream is = loaders[i].getInputStream();
if(is!=null){
readXmlStream(is);
success = true;
}
}
} catch (IOException e) {
log.debug("Error when findResourcesByFile:"+path,e);
} catch (SAXException e) {
log.debug("Error when findResourcesByFile:"+path,e);
} catch (ParserConfigurationException e) {
log.debug("Error when findResourcesByFile:"+path,e);
}
return success;
}
/**
* ¶ÁÈ¡²¢½âÎöÒ»¸öXMLµÄÎļþÊäÈëÁ÷£¬ÒÔElementµÄÐÎʽ»ñÈ¡XMLµÄ¸ù£¬
* È»ºóµ÷ÓÃ<code>buildFactory(Element)</code>¹¹½¨¹¤³§
* @param inputStream ÎļþÊäÈëÁ÷
* @throws SAXException
* @throws IOException
* @throws ParserConfigurationException
*/
protected void readXmlStream(InputStream inputStream) throws SAXException, IOException, ParserConfigurationException{
if(inputStream==null){
throw new ParserConfigurationException("Cann't parse source because of InputStream is null!");
}
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
factory.setValidating(this.isValidating());
factory.setNamespaceAware(this.isNamespaceAware());
DocumentBuilder build = factory.newDocumentBuilder();
Document doc = build.parse(new InputSource(inputStream));
Element root = doc.getDocumentElement();
buildFactory(root);
}
/**
* ÓôÓÒ»¸öXMLµÄÎļþÖжÁÈ¡µÄÊý¾Ý¹¹½¨¹¤³§
* @param root ´ÓÒ»¸öXMLµÄÎļþÖжÁÈ¡µÄÊý¾ÝµÄ¸ù
*/
protected abstract void buildFactory(Element root);

ÔÚ±àд´úÂëµÄ¹ý³ÌÖУ¬Í¨³£ÓÐÁ½ÖÖ²»Í¬µÄ·½Ê½¡£Ò»ÖÖÊÇ´ÓÏÂÍùÉϱàд£¬Ò²¾ÍÊǰ´ÕÕ˳Ðò£¬Ã¿·Ö³öÈ¥Ò»¸öº¯Êý£¬¶¼Òª½«Õâ¸öº¯Êý±àдÍ꣬²Å»Øµ½Ö÷³ÌÐò£¬¼ÌÐøÍùϱàд¡£¶øÒ»Ð©¸üÓо­ÑéµÄ³ÌÐòÔ±»á²ÉÓÃÁíÍâÒ»ÖÖ´ÓÉÏÍùϵıàд·½Ê½¡£µ±ËûÃÇÔÚ±àд³ÌÐòµÄʱºò£¬Ã¿¸ö±»·Ö³öÈ¥µÄ³ÌÐò£¬¿ÉÒÔÔÝʱֻдһ¸ö¿Õ³ÌÐò¶ø²»È¥¾ßÌåʵÏÖ¹¦ÄÜ¡£µ±Ö÷³ÌÐòÍê³ÉÒÔºó£¬ÔÙÒ»¸ö¸öʵÏÖËüµÄËùÓÐ×Ó³ÌÐò¡£²ÉÓÃÕâÑùµÄ±àд·½Ê½£¬¿ÉÒÔʹ¸´ÔÓ³ÌÐòÓиüºÃµÄ¹æ»®£¬±ÜÃâÖ»¼ûÊ÷ľ²»¼ûÉ­Áֵıײ¡¡£

ÓжàÉÙ´úÂë¾ÍËã´ó¶Î´úÂ룬ÿ¸öÈËÓÐ×Ô¼ºµÄÀí½â¡£ÎÒ±àд´úÂ룬ÿµ±´ïµ½15~20ÐеÄʱºò£¬ÎҾͿªÊ¼¿¼ÂÇÊÇ·ñÐèÒªÖØ¹¹´úÂ롣ͬÀí£¬Ò»¸öÀàÒ²²»Ó¦µ±ÓÐÌ«¶àµÄº¯Êý£¬µ±º¯Êý´ïµ½Ò»¶¨³Ì¶ÈµÄʱºò¾ÍÓ¦¸Ã¿¼ÂÇ·ÖΪ¶à¸öÀàÁË£»Ò»¸ö°üÒ²²»Ó¦µ±ÓÐÌ«¶àµÄÀࡤ¡¤¡¤¡¤¡¤¡¤

2£©ÊÍÒåÃû³ÆÓë×¢ÊÍ

ÎÒÃÇÔÚÃüÃû±äÁ¿¡¢º¯Êý¡¢ÊôÐÔ¡¢ÀàÒÔ¼°°üµÄʱºò£¬Ó¦µ±×ÐϸÏëÏ룬ʹÃû³Æ¸ü¼Ó·ûºÏÏàÓ¦µÄ¹¦ÄÜ¡£ÎÒÃdz£³£ÔÚ˵£¬Éè¼ÆÒ»¸öϵͳʱӦµ±ÓÐÒ»¸ö»ò¶à¸öϵͳ·ÖÎöʦ¶ÔÕû¸öϵͳµÄ°ü¡¢ÀàÒÔ¼°Ïà¹ØµÄº¯ÊýºÍÊôÐÔ½øÐй滮£¬µ«ÔÚͨ³£µÄÏîÄ¿ÖÐÕâ¶¼·Ç³£ÄÑÓÚ×öµ½¡£¶ÔËüÃǵÄÃüÃû¸ü¶àµÄ»¹ÊdzÌÐòÔ±À´Íê³É¡£µ«ÊÇ£¬ÔÚÒ»¸öÏîÄ¿¿ªÊ¼µÄʱºò£¬Ó¦µ±¶ÔÏîÄ¿µÄÃüÃû³ǫ̈һ¸ö¹æ·¶¡£Æ©È磬ÔÚÎÒµÄÏîÄ¿Öй涨£¬ÐÂÔö¼Ç¼ÓÃnew»òadd¿ªÍ·£¬¸üмǼÓÃedit»òmod¿ªÍ·£¬É¾³ýÓÃdel¿ªÍ·£¬²éѯÓÃfind»òquery¿ªÍ·¡£Ê¹ÓÃ×îÂҵľÍÊÇget£¬Òò´ËÎҹ涨£¬get¿ªÍ·µÄº¯Êý½ö½öÓÃÓÚ»ñÈ¡ÀàÊôÐÔ¡£

×¢ÊÍÊÇÿ¸öÏîÄ¿×é¶¼ÔÚ²»¶ÏÇ¿µ÷µÄ£¬¿ÉÊÇÒÀÈ»ÓÐÐí¶àµÄ´úÂëûÓÐÈκεÄ×¢ÊÍ¡£ÎªÊ²Ã´ÄØ£¿ÒòΪÿ¸öÏîÄ¿ÔÚ¿ª·¢¹ý³ÌÖÐÍùÍùʱ¼ä¶¼ÊǷdz£½ôµÄ¡£ÔÚ½ôÕŵĴúÂ뿪·¢¹ý³ÌÖУ¬×¢ÊÍÍùÍù¾Í½¥½¥µØ±»ºöÂÔÁË¡£ÀûÓÿª·¢¹¤¾ßµÄ´úÂë±àдģ°åÒ²Ðí¿ÉÒÔ½â¾öÕâ¸öÎÊÌâ¡£

ÓÃÎÒÃdz£ÓõÄMyEclipseΪÀý£¬Ôڲ˵¥¡°window>>Preferences>>Java>>Code Style>>Code Templates>>Comments¡±ÖУ¬¿ÉÒÔ¼òµ¥µÄÐÞ¸Äһϡ£

¡°Files¡±´ú±íµÄÊÇÎÒÃÇÿн¨Ò»¸öÎļþ£¨¿ÉÄÜÊÇÀàÒ²¿ÉÄÜÊǽӿڣ©Ê±±àдµÄ×¢ÊÍ£¬ÎÒͨ³£É趨Ϊ£º

Java´úÂë

created on ${date}

¡°Types¡±´ú±íµÄÊÇÎÒÃÇн¨µÄ½Ó¿Ú»òÀàǰµÄ×¢ÊÍ£¬ÎÒͨ³£É趨Ϊ£º

Java´úÂë

@author ${user}

µÚÒ»ÐÐΪһ¸ö¿ÕÐУ¬ÊÇÓÃÓÚÄãд¸ÃÀàµÄ×¢ÊÍ¡£Èç¹ûÄã²ÉÓá°Ö°ÔðÇý¶¯Éè¼Æ¡±£¬ÕâÀïÊ×ÏÈÓ¦µ±ÃèÊöµÄÊǸÃÀàµÄÖ°Ôð¡£Èç¹ûÐèÒª£¬Äã¿ÉÒÔд¸ÃÀàÒ»Ð©ÖØÒªµÄ·½·¨¼°ÆäÓ÷¨¡¢¸ÃÀàµÄÊôÐÔ¼°ÆäÖÐÎĺ¬ÒåµÈ¡£

${user}´ú±íµÄÊÇÄãÔÚwindowsÖеǽµÄÓû§Ãû¡£Èç¹ûÕâ¸öÓû§Ãû²»ÊÇÄãµÄÃû³Æ£¬Äã¿ÉÒÔÖ±½ÓдËÀΪÄã×Ô¼ºµÄÃû³Æ¡£

ÆäËüÎÒͨ³£¶¼±£³ÖΪĬÈÏÖµ¡£Í¨¹ýÒÔÉÏÉ趨£¬ÄãÔÚ´´½¨Àà»ò½Ó¿ÚµÄʱºò£¬ÏµÍ³½«×Ô¶¯ÎªÄã±àдºÃ×¢ÊÍ£¬È»ºóÄã¿ÉÒÔÔÚÕâ¸ö»ù´¡ÉϽøÐÐÐ޸쬴ó´óÌá¸ß×¢ÊͱàдµÄЧÂÊ¡£

ͬʱ£¬Èç¹ûÄãÔÚ´úÂëÖÐÐÂÔöÁËÒ»¸öº¯Êýʱ£¬Í¨¹ýAlt+Shift+J¿ì½Ý¼ü£¬¿ÉÒÔ°´ÕÕÄ£°å¿ìËÙÌí¼Ó×¢ÊÍ¡£

ÔÚ±àд´úÂëʱÈç¹ûÄã±àдµÄÊÇÒ»¸ö½Ó¿Ú»ò³éÏóÀ࣬ÎÒ»¹½¨ÒéÄãÔÚ@authorºóÃæÔö¼Ó@see×¢ÊÍ£¬½«¸Ã½Ó¿Ú»ò³éÏóÀàµÄËùÓÐʵÏÖÀàÁгöÀ´£¬ÒòΪÔĶÁÕßÔÚÔĶÁµÄʱºò£¬Ñ°ÕÒ½Ó¿Ú»ò³éÏóÀàµÄʵÏÖÀà±È½ÏÀ§ÄÑ¡£

Java´úÂë

³éÏóµÄµ¥±íÊý×é²éѯʵÏÖÀ࣬½öÓÃÓÚµ¥±í²éѯ
* @author ·¶¸Ö
* @see com.htxx.support.query.DefaultArrayQuery
* @see com.htxx.support.query.DwrQuery
*/
public abstract class ArrayQuery implements ISingleQuery {
...

2. ¿Éά»¤ÐÔ

Èí¼þµÄ¿Éά»¤ÐÔÓм¸²ãÒâ˼£¬Ê×ÏȵÄÒâ˼¾ÍÊÇÄܹ»ÊÊÓ¦Èí¼þÔÚ²¿ÊðºÍʹÓÃÖеĸ÷ÖÖÇé¿ö¡£´ÓÕâ¸ö½Ç¶ÈÉÏÀ´Ëµ£¬Ëü¶ÔÎÒÃǵÄÈí¼þÌá³öµÄÒªÇó¾ÍÊDz»Äܽ«´úÂëдËÀ¡£

1£©´úÂë²»ÄÜдËÀ

ÎÒÔø¾­¼ûÎÒµÄͬʽ«ÏµÍ³Òª¶ÁÈ¡µÄÒ»¸öÈÕÖ¾ÎļþÖ¸¶¨ÔÚCÅ̵ÄÒ»¸ö¹Ì¶¨Ä¿Â¼Ï£¬Èç¹ûϵͳ²¿ÊðʱûÓÐÕâ¸öĿ¼ÒÔ¼°Õâ¸öÎļþ¾Í»á³ö´í¡£Èç¹ûËû½«Õâ¸ö¾ö¶¨Â·¾¶ÏµÄĿ¼¸ÄΪÏà¶Ô·¾¶£¬»òÕßͨ¹ýÒ»¸öÊôÐÔÎļþ¿ÉÒÔÐ޸쬴úÂëÆñ²»¾Íд»îÁË¡£Ò»°ãÀ´Ëµ£¬ÎÒÔÚÉè¼ÆÖÐÐèҪʹÓÃÈÕÖ¾Îļþ¡¢ÊôÐÔÎļþ¡¢ÅäÖÃÎļþ£¬Í¨³£¶¼ÊÇÒÔϼ¸¸ö·½Ê½£º½«Îļþ·Åµ½ÓëÀàÏàͬµÄĿ¼£¬Ê¹ÓÃClassLoader.getResource()À´¶ÁÈ¡£»½«Îļþ·Åµ½classpathĿ¼Ï£¬ÓÃFileµÄÏà¶Ô·¾¶À´¶ÁÈ¡£»Ê¹ÓÃweb.xml»òÁíÒ»¸öÊôÐÔÎļþÀ´Öƶ¨¶Áȡ·¾¶¡£

ÎÒÒ²Ôø¼ûÁíÒ»¼Ò¹«Ë¾µÄÈí¼þÒªÇó£¬ÔÚ²¿ÊðµÄʱºò±ØÐëÔÚC:/beaĿ¼Ï£¬Èç¹û»»³ÉÆäËüĿ¼Ôò²»ÄÜÕý³£ÔËÐС£ÕâÑùµÄÉ趨³£³£ÎªÈí¼þ²¿Êðʱ´øÀ´Ðí¶àµÄÂé·³¡£Èç¹û·þÎñÆ÷ÔÚ¸ÃĿ¼ÏÂÒѾ­Ã»ÓжàÓà¿Õ¼ä£¬»òÕßÒѾ­ÓÐÆäËüÈí¼þ£¬½«ÊǺÜÄÓÍ·µÄÊÂÇé¡£

2£©Ô¤²â¿ÉÄÜ·¢ÉúµÄ±ä»¯

³ý´ËÖ®Í⣬ÔÚÉè¼ÆµÄʱºò£¬Èç¹û½«Ò»Ð©¹Ø¼ü²ÎÊý·Åµ½ÅäÖÃÎļþÖУ¬¿ÉÒÔΪÈí¼þ²¿ÊðºÍʹÓôøÀ´¸ü¶àµÄÁé»îÐÔ¡£Òª×öµ½ÕâÒ»µã£¬ÒªÇóÎÒÃÇÔÚÈí¼þÉè¼ÆÊ±£¬Ó¦µ±Óиü¶àµÄÒâʶ£¬¿¼Âǵ½Èí¼þÓ¦ÓÃÖпÉÄÜ·¢ÉúµÄ±ä»¯¡£±ÈÈ磬ÓÐÒ»´ÎÎÒÔÚÉè¼Æ²ÆÎñÈí¼þµÄʱºò£¬¿¼Âǵ½Ò»Ð©µ¥¾ÝÔÚÖÆ×÷ʱµÄǰÖÃÌõ¼þ£¬ÔÚ²»Í¬ÆóҵʹÓõÄʱºò£¬¿ÉÄÜÒªÇó²»Ò»Ñù£¬ÓÐЩÆóÒµ¿ÉÄÜÒªÇóÑϸñЩ¶øÓÐЩҪÇóËÉɢЩ¡£¿¼Âǵ½ÕâÖÖ¿ÉÄܵı仯£¬ÎÒ½«Ç°ÖÃÌõ¼þÉè¼ÆÎª¿ÉÅäÖõģ¬¾Í¿ÉÄÜ·½±ã²¿ÊðÈËÔ±ÔÚʵ¼Ê²¿ÊðÖнøÐÐÁé»î±ä»¯¡£È»¶øÕâÑùµÄÅäÖ㬱ØÒªµÄ×¢ÊÍ˵Ã÷ÊǷdz£±ØÒªµÄ¡£

Èí¼þ¿Éά»¤ÐÔµÄÁíÒ»²ãÒâ˼¾ÍÊÇÈí¼þµÄÉè¼Æ±ãÓÚÈÕºóµÄ±ä¸ü¡£ÕâÒ»²ãÒâ˼ÓëÈí¼þµÄ¿É±ä¸üÐÔÊÇÖØºÏµÄ¡£ËùÓеÄÈí¼þÉè¼ÆÀíÂ۵ķ¢Õ¹£¬¶¼ÊÇ´ÓÈí¼þµÄ¿É±ä¸üÐÔÕâÒ»ÒªÇóÖð½¥Õ¹¿ªµÄ£¬Ëü³ÉΪÁËÈí¼þÉè¼ÆÀíÂ۵ĺËÐÄ¡£

3. ¿É±ä¸üÐÔ

Ç°ÃæÎÒÌáµ½ÁË£¬Èí¼þµÄ±ä¸üÐÔÊÇËùÓÐÈí¼þÀíÂ۵ĺËÐÄ£¬ÄÇôʲôÊÇÈí¼þµÄ¿É±ä¸üÐÔÄØ£¿°´ÕÕÏÖÔÚµÄÈí¼þÀíÂÛ£¬¿Í»§¶ÔÈí¼þµÄÐèÇóʱʱ¿Ì¿ÌÔÚ·¢Éú×ű仯¡£µ±Èí¼þÉè¼ÆºÃÒÔºó£¬ÎªÓ¦¶Ô¿Í»§ÐèÇóµÄ±ä¸ü¶ø½øÐеĴúÂëÐ޸쬯äËùÐèÒª¸¶³öµÄ´ú¼Û£¬¾ÍÊÇÈí¼þÉè¼ÆµÄ¿É±ä¸üÐÔ¡£ÓÉÓÚÈí¼þºÏÀíµÄÉè¼Æ£¬ÐÞ¸ÄËù¸¶³öµÄ´ú¼ÛԽС£¬ÔòÈí¼þµÄ¿É±ä¸üÐÔÔ½ºÃ£¬¼´´úÂëÉè¼ÆµÄÖÊÁ¿Ô½¸ß¡£Ò»Öַdz£ÀíÏëµÄ״̬ÊÇ£¬ÎÞÂÛ¿Í»§ÐèÇóÔõÑù±ä»¯£¬Èí¼þÖ»Ðè½øÐÐÊʵ±µÄÐ޸ľÍÄܹ»ÊÊÓ¦¡£µ«ÕâÖ®ËùÒÔ³ÆÖ®ÎªÀíÏë״̬£¬ÒòΪ¿Í»§ÐèÇó±ä»¯ÊÇÓдóÓÐСµÄ¡£Èç¹û¿Í»§ÐèÇó±ä»¯·Ç³£´ó£¬¼´Ê¹ÔٺõÄÉè¼ÆÒ²ÎÞ·¨Ó¦¸¶£¬ÉõÖÁÖØÐ¿ª·¢¡£È»¶ø£¬¿Í»§ÐèÇóµÄÊʵ±±ä»¯£¬Ò»¸öºÏÀíµÄÉè¼Æ¿ÉÒÔʹµÃ±ä¸ü´ú¼Û×îС»¯£¬ÑÓÐøÎÒÃÇÉè¼ÆµÄÈí¼þµÄÉúÃüÁ¦¡£

1£©Í¨¹ýÌá¸ß´úÂ븴ÓÃÌá¸ß¿Éά»¤ÐÔ

ÎÒÔø¾­Óöµ½¹ýÕâÑùÒ»¼þÊ£¬ÎÒҪά»¤µÄÒ»¸öϵͳÒòΪӦÓ÷¶Î§µÄÀ©´ó£¬Ëü¶Ô»ú¹Ø¼¶´ÎµÄ¼ÆË㷽ʽÐèÒª¸Ä±äÒ»ÖÖ²ßÂÔ¡£Èç¹ûÕâ¸öÏîĿͳһ²ÉÓÃÒ»¶Î¹«Ó÷½·¨À´¼ÆËã»ú¹Ø¼¶´Î£¬ÕâÑùÒ»¸öÐÞ¸ÄʵÔÚÌ«¼òµ¥ÁË£¬¾ÍÊÇÐÞ¸ÄÕâ¸ö¹«Ó÷½·¨¼´¿É¡£µ«ÊÇ£¬ÊÂʵȴ²»Ò»Ñù£¬¶Ô»ú¹Ø¼¶´Î¼ÆËãµÄ´úÂë±é²¼Õû¸öÏîÄ¿£¬ÉõÖÁÓÐЩ»¹Ð´Èëµ½ÁËÄÇЩ¸´ÔÓµÄSQLÓï¾äÖС£ÔÚÕâÑùÒ»ÖÖÇé¿öÏ£¬ÕâÑùÒ»¸öÐèÇóµÄÐÞ¸ÄÎÞÒìÓÚÐèÒª±éÀúÕâ¸öÏîÄ¿´úÂë¡£ÕâÑùÒ»¸öʵÀýÏÔʾÁËÒ»¸öÏîÄ¿´úÂ븴ÓõÄÖØÒª£¬È»¶ø²»ÐÒµÄÊÇ£¬´úÂëÎÞ·¨ºÜºÃ¸´ÓõÄÇé¿ö±é²¼ÎÒÃÇËùÓеÄÏîÄ¿¡£´úÂ븴ÓõĵÀÀíÊ®·Ö¼òµ¥£¬µ«Òª¾ßÌåÔË×÷ÆðÀ´·Ç³£¸´ÔÓ£¬Ëü³ýÁËÐèÒªºÜºÃµÄ´úÂë¹æ»®£¬»¹ÐèÒª³ÖÐøµØ´úÂëÖØ¹¹¡£

¶ÔÕû¸öϵͳµÄÕûÌå·ÖÎöÓëºÏÀí¹æ»®¿ÉÒÔ¸ù±¾µØ±£Ö¤´úÂ븴Óá£ÏµÍ³·ÖÎöʦͨ¹ýÓÃÀýÄ£ÐÍ¡¢ÁìÓòÄ£ÐÍ¡¢·ÖÎöÄ£Ð͵ÄÒ»²½Ò»²½·ÖÎö£¬×îºóͨ¹ýÕýÏò¹¤³Ì£¬Éú³ÉϵͳÐèÒªÉè¼ÆµÄ¸÷ÖÖÀ༰Æä¸÷×ÔµÄÊôÐԺͷ½·¨¡£²ÉÓÃÕâÖÖ·½·¨£¬¹¦Äܱ»ºÏÀíµØ»®·Öµ½Õâ¸öÀàÖУ¬¿ÉÒԺܺõر£Ö¤´úÂ븴Óá£

²ÉÓÃÒÔÉÏ·½·¨ËäÈ»ºÃ£¬µ«¼¼ÊõÄѶȽϸߣ¬ÐèÒªÓиßÉîµÄϵͳ·ÖÎöʦ£¬²¢²»ÊÇËùÓÐÏîÄ¿¶¼ÄÜÆÕ±é²ÉÓõģ¬ÌرðÊÇʱ¼ä±È½Ï½ôÕŵÄÏîÄ¿¡£Í¨¹ý¿ª·¢ÈËÔ±ÔÚÉè¼Æ¹ý³ÌÖеÄÖØ¹¹£¬Ò²Ðí¸ü¼ÓʵÓᣵ±Ä³¸ö¿ª·¢ÈËÔ±ÔÚ¿ª·¢Ò»¶Î´úÂëʱ£¬·¢Ïָù¦ÄÜÓëÇ°ÃæÒѾ­¿ª·¢¹¦ÄÜÏàͬ£¬»òÕß²¿·ÖÏàͬ¡£Õâʱ£¬Õâ¸ö¿ª·¢ÈËÔ±¿ÉÒÔ¶ÔÇ°ÃæÒѾ­¿ª·¢µÄ¹¦ÄܽøÐÐÖØ¹¹£¬½«¿ÉÒÔͨÓõĴúÂëÌáÈ¡³öÀ´£¬½øÐÐÏàÓ¦µÄ¸ÄÔ죬ʹÆä¾ßÓÐÒ»¶¨µÄͨÓÃÐÔ£¬±ãÓÚ¸÷¸öµØ·½¿ÉÒÔʹÓá£

һЩ±È½Ï³É¹¦µÄÏîÄ¿×é»áÖ¸¶¨Ò»¸öרÃŹÜÀíͨÓôúÂëµÄÈË£¬¸ºÔðÊÕ¼¯ºÍÕûÀíÏîÄ¿×éÖи÷¸ö³ÉÔ±±àдµÄ¡¢¿ÉÒÔͨÓõĴúÂë¡£Õâ¸ö¸ºÔðÈËͬʱҲӦµ±¾ßÓÐÒ»¶¨µÄ´úÂë±àд¹¦Á¦£¬ÒòΪ½«×¨ÓôúÂëÌáÉýΪͨÓôúÂ룬»òÕßÒÔǰʹÓøÃͨÓôúÂëµÄij¸ö¹¦ÄÜ£¬ÓÉÓÚÒµÎñ±ä¸ü£¬¶ø¶ÔÕâ¸öͨÓôúÂëµÄ±ä¸üÒªÇ󣬶¼¶ÔÕâ¸ö¸ºÔðÈËÌá³öÁ˺ܸߵÄÄÜÁ¦ÒªÇó¡£

ËäÈ»ºóÒ»ÖÖ·½Ê½·Ç³£ÊµÓ㬵«ÊÇËüÓÐЩÍöÑò²¹ÀεÄζµÀ£¬²»ÄÜ´ÓÕûÌåÉ϶ÔÏîÄ¿´úÂë½øÐÐÓÐЧ¹æ»®¡£ÕýÒòΪÁ½ÖÖ·½·¨¸÷ÓÐÀû±×£¬Òò´ËÔÚÏîÄ¿ÖÐÓ¦µ±ÅäºÏʹÓá£

2£©ÀûÓÃÉè¼ÆÄ£Ê½Ìá¸ß¿É±ä¸üÐÔ

¶ÔÓÚ³õѧÕߣ¬Èí¼þÉè¼ÆÀíÂÛ³£³£¸Ð¾õ»ÞɬÄѶ®¡£Ò»¸ö¿ìËÙÌá¸ßÈí¼þÖÊÁ¿µÄ½Ý¾¶¾ÍÊÇÀûÓÃÉè¼ÆÄ£Ê½¡£ÕâÀï˵µÄÉè¼ÆÄ£Ê½£¬²»½ö½öÖ¸¾­µäµÄ32¸öģʽ£¬ÊÇÒ»ÇÐǰÈË×ܽáµÄ£¬ÎÒÃÇ¿ÉÒÔÀûÓõġ¢¸ü¼Ó¹ã·ºµÄÉè¼ÆÄ£Ê½¡£

a. if...else...

Õâ¸öÎÒÒ²²»ÖªµÀ½ÐʲôÃû×Ö£¬×îÔçÊÇÄÄλ´óʦ×ܽáµÄ£¬Ëü³öÏÖÔÚLarmanµÄ¡¶UMLÓëģʽӦÓá·£¬Ò²³öÏÖÔÚ³öÏÖÔÚMardinµÄ¡¶Ãô½ÝÈí¼þ¿ª·¢¡·¡£ËüÊÇÕâÑùÃèÊöµÄ£ºµ±Äã·¢ÏÖÄã±ØÐëÒªÉè¼ÆÕâÑùµÄ´úÂ룺¡°if...elseif...elseif...else...¡±Ê±£¬ÄãÓ¦µ±Ïëµ½ÄãµÄ´úÂëÓ¦µ±Öع¹Ò»ÏÂÁË¡£ÎÒÃÇÏÈ¿´¿´ÕâÑùµÄ´úÂëÓÐÔõÑùµÄÌØµã¡£

Java´úÂë

if(var.equals("A")){ doA(); }
else if(var.equals("B")){ doB(); }
else if(var.equals("C")){ doC(); }
else{ doD(); }

ÕâÑùµÄ´úÂëºÜ³£¼û£¬Ò²·Ç³£Æ½³££¬ÎÒÃÇ´ó¼Ò¶¼Ð´¹ý¡£µ«ÕýÊÇÕâÑùƽ³£²ÅÒþ²Ø×ÅÎÒÃÇÓÀԶûÓÐ×¢ÒâµÄÎÊÌâ¡£ÎÊÌâ¾ÍÔÚÓÚ£¬Èç¹ûijһÌìÕâ¸öÑ¡Ïî²»ÔÙ½ö½öÊÇA¡¢B¡¢C£¬¶øÊÇÔö¼ÓÁËеÄÑ¡Ï»áÔõÑùÄØ£¿ÄãÒ²Ðí»á˵£¬ÄÇûÓйØÏµ£¬ÎÒ°Ñ´úÂë¸Ä¸Ä¾ÍÐС£È»¶øÊÂʵÉϲ¢·ÇÈç´Ë£¬ÔÚ´óÐÍÈí¼þÑз¢Óëά»¤ÖÐÓÐÒ»¸öÔ­Ôò£¬Ã¿´ÎµÄ±ä¸ü¾¡Á¿²»ÒªÈ¥ÐÞ¸ÄÔ­ÓеĴúÂë¡£Èç¹ûÎÒÃÇÖØ¹¹Ò»Ï£¬Äܱ£Ö¤²»ÐÞ¸ÄÔ­ÓдúÂ룬½ö½öÔö¼ÓеĴúÂë¾ÍÄÜÓ¦¸¶Ñ¡ÏîµÄÔö¼Ó£¬Õâ¾ÍÔö¼ÓÁËÕâ¶Î´úÂëµÄ¿Éά»¤ÐԺͿɱä¸üÐÔ£¬Ìá¸ßÁË´úÂëÖÊÁ¿¡£ÄÇô£¬ÎÒÃÇÓ¦µ±ÈçºÎÈ¥×öÄØ£¿

¾­¹ýÉîÈë·ÖÎöÄã»á·¢ÏÖ£¬ÕâÀï´æÔÚÒ»¸ö¶ÔÓ¦¹ØÏµ£¬¼´A¶ÔÓ¦doA()£¬B¶ÔÓ¦doB()£®£®£®Èç¹û½«doA()¡¢doB()¡¢doC()£®£®£®ÓëÔ­ÓдúÂë½âñÎÊÌâ¾Í½â¾öÁË¡£ÈçºÎ½âñîÄØ£¿Éè¼ÆÒ»¸ö½Ó¿ÚXÒÔ¼°ËüµÄʵÏÖA¡¢B¡¢C£®£®£®Ã¿¸öÀà¶¼°üº¬Ò»¸ö·½·¨doX()£¬²¢ÇÒ½«doA()µÄ´úÂë·Åµ½A.doX()ÖУ¬½«doB()µÄ´úÂë·Åµ½B.doX()ÖУ®£®£®¾­¹ýÒÔÉϵÄÖØ¹¹£¬´úÂ뻹ÊÇÕâЩ´úÂ룬Ч¹ûÈ´ÍêÈ«²»Ò»ÑùÁË¡£ÎÒÃÇÖ»ÐèÒªÕâÑùд£º

Java´úÂë

X x = factory.getBean(var); x.doX();  

ÕâÑù¾Í¿ÉÒÔʵÏÖÒÔÉϵŦÄÜÁË¡£ÎÒÃÇ¿´µ½ÕâÀïÓÐÒ»¸ö¹¤³§£¬·Å×ÅËùÓеÄA¡¢B¡¢C£®£®£®²¢ÇÒÓëËüÃǵÄkey¶ÔÓ¦ÆðÀ´£¬²¢ÇÒдÔÚÅäÖÃÎļþÖС£Èç¹û³öÏÖеÄÑ¡Ïîʱ£¬Í¨¹ýÐÞ¸ÄÅäÖÃÎļþ¾Í¿ÉÒÔÎÞÏÞÖÆµÄÔö¼ÓÏÂÈ¥¡£

Õâ¸öģʽËäÈ»ÓÐЧÌá¸ßÁË´úÂëÖÊÁ¿£¬µ«ÊDz»ÄÜÀÄÓ㬲¢·ÇÖ»Òª³öÏÖif...else...¾ÍÐèҪʹÓá£ÓÉÓÚËüʹÓÃÁ˹¤³§£¬Ò»¶¨³Ì¶ÈÉÏÔö¼ÓÁË´úÂ븴ÔÓ¶È£¬Òò´Ë½ö½öÔÚÑ¡Ïî½Ï¶à£¬²¢ÇÒÔö¼ÓÑ¡ÏîµÄ¿ÉÄÜÐԺܴóµÄÇé¿öϲſÉÒÔʹÓá£ÁíÍ⣬ҪʹÓÃÕâ¸öģʽ£¬¼Ì³ÐÎÒÔÚ¸½¼þÖÐÌṩµÄ³éÏóÀàXmlBuildFactoryFacade¾Í¿ÉÒÔ¿ìËÙ½¨Á¢Ò»¸ö¹¤³§¡£Èç¹ûÄãµÄÏîÄ¿·ÅÔÚspring»òÆäËü¿ÉÅäÖÿò¼ÜÖУ¬Ò²¿ÉÒÔ¿ìËÙ½¨Á¢¹¤³§¡£Éè¼ÆÒ»¸öMap¾²Ì¬ÊôÐÔ²¢Ê¹ÆäVΪÕâЩA¡¢B¡¢C£®£®£®Õâ¸ö¹¤³§¾Í½¨Á¢ÆðÀ´ÁË¡£

b. ²ßÂÔģʽ

Ò²ÐíÄã¿´¹ý²ßÂÔģʽ£¨strategy model£©µÄÏà¹Ø×ÊÁϵ«Ã»ÓÐÁôÏÂÌ«¶àµÄÓ¡Ïó¡£Ò»¸ö¼òµ¥µÄÀý×Ó¿ÉÒÔÈÃÄã¿ìËÙÀí½âËü¡£Èç¹ûÒ»¸öÔ±¹¤ÏµÍ³ÖУ¬Ô±¹¤±»·ÖΪÁÙʱ¹¤ºÍÕýʽ¹¤²¢ÇÒÔÚ²»Í¬µÄµØ·½ÏàÓ¦µÄÐÐΪ²»Ò»Ñù¡£ÔÚÉè¼ÆËüÃǵÄʱºò£¬Äã¿Ï¶¨Éè¼ÆÒ»¸ö³éÏóµÄÔ±¹¤À࣬²¢ÇÒÉè¼ÆÁ½¸ö¼Ì³ÐÀࣺÁÙʱ¹¤ºÍÕýʽ¹¤¡£ÕâÑù£¬Í¨¹ýÏÂËÝÀàÐÍ£¬¿ÉÒÔÔÚ²»Í¬µÄµØ·½±íÏÖ³öÁÙʱ¹¤ºÍÕýʽ¹¤µÄ¸÷×ÔÐÐΪ¡£ÔÚÁíÒ»¸öϵͳÖУ¬Ô±¹¤±»·ÖΪÁËÏúÊÛÈËÔ±¡¢¼¼ÊõÈËÔ±¡¢¹ÜÀíÈËÔ±²¢ÇÒÒ²ÔÚ²»Í¬µÄµØ·½ÏàÓ¦µÄÐÐΪ²»Ò»Ñù¡£Í¬Ñù£¬ÎÒÃÇÔÚÉè¼ÆÊ±Ò²ÊÇÉè¼ÆÒ»¸ö³éÏóµÄÔ±¹¤À࣬²¢ÇÒÉè¼ÆÊý¸ö¼Ì³ÐÀࣺÏúÊÛÈËÔ±¡¢¼¼ÊõÈËÔ±¡¢¹ÜÀíÈËÔ±¡£ÏÖÔÚ£¬ÎÒÃÇÒª°ÑÕâÁ½¸öϵͳºÏ²¢ÆðÀ´£¬Ò²¾ÍÊÇ˵£¬ÔÚеÄϵͳÖУ¬Ô±¹¤¼È±»·ÖΪÁÙʱ¹¤ºÍÕýʽ¹¤£¬ÓÖ±»·ÖΪÁËÏúÊÛÈËÔ±¡¢¼¼ÊõÈËÔ±¡¢¹ÜÀíÈËÔ±£¬ÕâʱºòÈçºÎÉè¼Æ¡£Èç¹ûÎÒÃÇ»¹ÊÇʹÓÃÒÔÍùµÄÉè¼Æ£¬ÎÒÃǽ«²»µÃ²»Éè¼ÆºÜ¶à¼Ì³ÐÀࣺÏúÊÛÁÙʱ¹¤¡¢ÏúÊÛÕýʽ¹¤¡¢¼¼ÊõÁÙʱ¹¤¡¢¼¼ÊõÕýʽ¹¤¡£¡£¡£Èç´ËµÄÉè¼Æ£¬ÔÚËæ×Å»®·ÖµÄÀàÐÍ£¬ÒÔ¼°Ã¿ÖÖÀàÐ͵ÄÑ¡ÏîµÄÔö¶à£¬³ÊµÑ¿¨¶ûÔö³¤¡£Í¨¹ýÒÔÉÏÒ»¸öϵͳµÄÉè¼Æ£¬ÎÒÃDz»µÃ²»·¢ÏÖ£¬ÎÒÃÇÒÔÍùѧϰµÄ¹ØÓڼ̳еÄÉè¼ÆÓöµ½ÁËÌôÕ½¡£

½â¾ö¼Ì³Ð³öÏÖµÄÎÊÌ⣬ÓÐÒ»¸ö×îºÃµÄ°ì·¨£¬¾ÍÊDzÉÓòßÂÔģʽ¡£ÔÚÕâ¸öÓ¦ÓÃÖУ¬Ô±¹¤Ö®ËùÒÔÒª·ÖΪÁÙʱ¹¤ºÍÕýʽ¹¤£¬ÎÞ·ÇÊÇÒòΪËüÃǵÄһЩÐÐΪ²»Ò»Ñù£¬±ÈÈ磬·¢¹¤×ÊʱµÄ¼ÆË㷽ʽ²»Í¬¡£Èç¹ûÎÒÃÇÔÚÉè¼ÆÊ±²»½«Ô±¹¤Àà·ÖΪÁÙʱ¹¤ÀàºÍÕýʽ¹¤À࣬¶ø½ö½öÖ»ÓÐÔ±¹¤Àֻ࣬ÊÇÔÚÀàÖÐÔö¼Ó¡°¹¤×Ê·¢·Å²ßÂÔ¡±¡£µ±ÎÒÃÇ´´½¨Ô±¹¤¶ÔÏóʱ£¬¸ù¾ÝÔ±¹¤µÄÀàÐÍ£¬½«¡°¹¤×Ê·¢·Å²ßÂÔ¡±É趨Ϊ¡°ÁÙʱ¹¤²ßÂÔ¡±»ò¡°Õýʽ¹¤²ßÂÔ¡±£¬ÔÚ¼ÆË㹤×Êʱ£¬Ö»ÐèÒªµ÷ÓòßÂÔÀàÖеġ°¼ÆË㹤×Ê¡±·½·¨£¬ÆäÐÐΪµÄ±íÏÖ£¬Ò²Éè¼ÆÁÙʱ¹¤ÀàºÍÕýʽ¹¤ÀàÊÇÒ»ÑùµÄ¡£Í¬ÑùµÄÉè¼Æ¿ÉÒԷŵ½ÏúÊÛÈËÔ±²ßÂÔ¡¢¼¼ÊõÈËÔ±²ßÂÔ¡¢¹ÜÀíÈËÔ±²ßÂÔÖС£Ò»¸öͨ³£µÄÉè¼ÆÊÇ£¬ÎÒÃǽ«Ä³Ò»¸öÓ°Ïì¸ü´óµÄ¡¢»òÕßÑ¡Ïî¸üÉÙµÄÊôÐÔÉè¼Æ³É¼Ì³ÐÀ࣬¶ø½«ÆäËüÊôÐÔÉè¼Æ³É²ßÂÔÀ࣬¾Í¿ÉÒԺܺõĽâ¾öÒÔÉÏÎÊÌâ¡£

ʹÓòßÂÔģʽ£¬ÄãͬÑù°Ñ´úÂëд»îÁË£¬ÒòΪÄã¿ÉÒÔÎÞÏÞÖÆµØÔö¼Ó²ßÂÔ¡£µ«ÊÇ£¬Ê¹ÓòßÂÔģʽÄãͬÑùÐèÒªÉè¼ÆÒ»¸ö¹¤³§¡ª¡ª²ßÂÔ¹¤³§¡£ÒÔÉÏʵÀýÖУ¬ÄãÐèÒªÉè¼ÆÒ»¸ö·¢·Å¹¤×ʲßÂÔ¹¤³§£¬²¢ÇÒÔÚ¹¤³§Öн«¡°ÁÙʱ¹¤¡±Óë¡°ÁÙʱ¹¤²ßÂÔ¡±¶ÔÓ¦ÆðÀ´£¬½«¡°Õýʽ¹¤¡±Óë¡°Õýʽ¹¤²ßÂÔ¡±¶ÔÓ¦ÆðÀ´¡£

c. ÊÊÅäÆ÷ģʽ

ÎҵıʼDZ¾ÊǸۻõ£¬ËüµÄ²åÍ·ÓëÎÒÃdz£ÓõIJå×ù²»Ò»Ñù£¬ËùÓÐÎÒ³ö²îµÄʱºòÎÒ±ØÐë´øÒ»¸öÊÊÅäÆ÷£¬²ÅÄÜʹÓò»Í¬µØ·½µÄ²å×ù¡£ÕâÊÇÒ»¸ö¶ÔÊÊÅäÆ÷ģʽ×î¾­µäµÄÃèÊö¡£µ±ÎÒÃÇÉè¼ÆµÄϵͳҪÓëÆäËüϵͳ½»»¥£¬»òÕßÎÒÃÇÉè¼ÆµÄÄ£¿éÒªÓëÆäËüÄ£¿é½»»¥Ê±£¬ÕâÖÖ½»»¥¿ÉÄÜÊǵ÷ÓÃÒ»¸ö½Ó¿Ú£¬»òÕß½»»»Ò»¶ÎÊý¾Ý£¬½ÓÊÜ·½³£³£Òò·¢ËÍ·½¶ÔЭÒéµÄ±ä¸ü¶øÆµ·±±ä¸ü¡£ÕâÖÖ±ä¸ü£¬¿ÉÄÜÊǽÓÊÜ·½À´Ô´µÄ±ä¸ü£¬±ÈÈçÔ­À´ÊÇAϵͳ£¬ÏÖÔÚ±ä³ÉBϵͳÁË£»Ò²¿ÉÄÜÊǽÓÊÜ·½×ÔÉíµÄ´úÂë±ä¸ü£¬ÈçÔ­À´µÄ½Ó¿ÚÏÖÔÚÔö¼ÓÁËÒ»¸ö²ÎÊý¡£ÓÉÓÚ·¢ËÍ·½µÄ±ä¸ü³£³£µ¼Ö½ÓÊÜ·½´úÂëµÄ²»Îȶ¨£¬¼´Æµ·±¸ú×ÅÐ޸ģ¬Îª½ÓÊÜ·½µÄά»¤´øÀ´À§ÄÑ¡£

Óöµ½ÕâÑùµÄÎÊÌ⣬һ¸öÓо­ÑéµÄ³ÌÐòÔ±ÂíÉÏÏëµ½µÄ¾ÍÊDzÉÓÃÊÊÅäÆ÷ģʽ¡£ÔÚÉè¼ÆÊ±£¬ÎÒ·½µÄ½Ó¿Ú°´ÕÕij¸öЭÒé±àд£¬²¢ÇÒ±£³Ö¹Ì¶¨²»±ä¡£È»ºó£¬ÔÚÓëÕæÕý¶Ô·½½Ó¿Úʱ£¬ÔÚǰ¶ÎÉè¼ÆÒ»¸öÊÊÅäÆ÷À࣬һµ©¶Ô·½Ð­Òé·¢Éú±ä¸ü£¬ÎÒ¿ÉÒÔ»»¸öÊÊÅäÆ÷£¬½«ÐÂЭÒéת»»³ÉԭЭÒ飬ÎÊÌâ¾Í½â¾öÁË¡£ÊÊÅäÆ÷ģʽӦµ±°üº¬Ò»¸ö½Ó¿ÚºÍËüµÄʵÏÖÀà¡£½Ó¿ÚÓ¦µ±°üº¬Ò»¸ö±¾ÏµÍ³Òªµ÷Óõķ½·¨£¬¶øËüµÄʵÏÖÀà·Ö±ðÊÇÓëAϵͳ½Ó¿ÚµÄÊÊÅäÆ÷¡¢ÓëBϵͳ½Ó¿ÚµÄÊÊÅäÆ÷£®£®£®

ÎÒÔø¾­ÔÚÒ»¸öÏîÄ¿ÖÐÐèÒªÓëÁíÒ»¸öϵͳ½Ó¿Ú£¬Æð³õÄǸöϵͳͨ¹ýÒ»¸öÊý¾Ý¼¯µÄ·½Ê½ÎªÎÒÌṩÊý¾Ý£¬ÎÒдÁËÒ»¸ö½ÓÊÕÊý¾Ý¼¯µÄÊÊÅäÆ÷£»ºóÀ´¸ÄΪÓÃÒ»¸öXMLÊý¾ÝÁ÷µÄÐÎʽ£¬ÎÒÓÖдÁËÒ»¸ö½ÓÊÕXMLµÄÊÊÅäÆ÷¡£ËäȻΪÎÒÌṩÊý¾ÝµÄ·½Ê½²»Í¬£¬µ«ÊǾ­¹ýÊÊÅäÆ÷ת»»ºó£¬Êä³öµÄÊý¾ÝÊÇÒ»ÑùµÄ¡£Í¨¹ýÔÚspringÖеÄÅäÖã¬ÎÒ¿ÉÒÔÁé»îµØÇл»µ½µ×ÊÇʹÓÃÄĸöÊÊÅäÆ÷¡£

d. Ä£°åģʽ

32¸ö¾­µäģʽÖеÄÄ£°åģʽ£¬¶Ô¿ª·¢ÕߵĴúÂë¹æ»®ÄÜÁ¦Ìá³öÁ˸ü¸ßµÄÒªÇó£¬ËüÒªÇ󿪷¢Õß¶Ô×Ô¼º¿ª·¢µÄËùÓдúÂëÓÐÒ»¸öÏ໥ÁªÏµºÍ´ÓÖгéÏóµÄÄÜÁ¦£¬´Ó¸÷¸ö²»Í¬µÄÄ£¿éºÍ¸÷¸ö²»Í¬µÄ¹¦ÄÜÖУ¬³éÏó³öÆä¹ý³Ì±È½ÏÒ»ÖµÄͨÓÃÁ÷³Ì£¬×îÖÕÐγÉÄ£°å¡£Æ©Èç˵£¬¶ÁÈ¡XML²¢Ðγɹ¤³§£¬ÊÇÐí¶àÄ£¿é³£³£ÒªÊ¹ÓõŦÄÜ¡£ËüÃÇËäÈ»Óи÷×ԵIJ»Í¬£¬µ«ÊÇ×ÜÌåÁ÷³Ì¶¼ÊÇÒ»ÑùµÄ£º¶ÁÈ¡XMLÎļþ¡¢½âÎöXMLÊý¾ÝÁ÷¡¢Ðγɹ¤³§¡£ÕýÒòΪÓÐÕâÑùµÄÌØÕ÷£¬ËüÃÇ¿ÉÒÔʹÓù²Í¬µÄÄ£°å£¬ÄÇô£¬Ê²Ã´ÊÇÄ£°åÄ£Ê½ÄØ£¿

Ä£°åģʽ£¨Template Model£©Í¨³£ÓÐÒ»¸ö³éÏóÀà¡£ÔÚÕâ¸ö³éÏóÀàÖУ¬Í¨³£ÓÐÒ»¸öÖ÷º¯Êý£¬°´ÕÕÒ»¶¨µØË³ÐòÈ¥µ÷ÓÃÆäËüº¯Êý¡£¶øÆäËüº¯ÊýÍùÍùÊÇijÕâ¸öÁ¬Ðø¹ý³ÌÖеĸ÷¸ö²½Ö裬ÈçÒÔÉÏʵÀýÖеĶÁÈ¡XMLÎļþ¡¢½âÎöXMLÊý¾ÝÁ÷¡¢Ðγɹ¤³§µÈ²½Öè¡£ÓÉÓÚÕâÊÇÒ»¸ö³éÏóÀ࣬ÕâЩ²½Ö躯Êý¿ÉÒÔÊdzéÏóº¯Êý¡£³éÏóÀà½ö½ö¶¨ÒåÁËÕû¸ö¹ý³ÌµÄÖ´ÐÐ˳Ðò£¬ÒÔ¼°Ò»Ð©¿ÉÒÔͨÓõIJ½Ö裨Èç¶ÁÈ¡XMLÎļþºÍ½âÎöXMLÊý¾ÝÁ÷£©£¬¶øÁíһЩ±È½Ï¸öÐԵIJ½Ö裬ÔòÓÉËüµÄ¼Ì³ÐÀà×Ô¼ºÈ¥Íê³É£¨ÈçÉÏÀýÖеġ°Ðγɹ¤³§¡±£¬ÓÉÓÚ¸÷¸ö¹¤³§¸÷²»Ò»Ñù£¬Òò´ËÓɸ÷×Եļ̳ÐÀà×Ô¼ºÈ¥¾ö¶¨ËüµÄ¹¤³§ÊÇÔõÑùÐγɵģ©¡£

¸÷¸ö¼Ì³ÐÀà¿ÉÒÔ¸ù¾Ý×Ô¼ºµÄÐèÒª£¬Í¨¹ýÖØÔØÖØÐ¶¨Òå¸÷¸ö²½Ö躯Êý¡£µ«ÊÇ£¬Ä£°åģʽҪÇó²»ÄÜÖØÔØÖ÷º¯Êý£¬Òò´ËÕý¹æµÄÄ£°åģʽÆäÖ÷º¯ÊýÓ¦µ±ÊÇfinal£¨ËäÈ»ÎÒÃdz£³£²»Õâôд£©¡£ÁíÍ⣬ģ°åģʽ»¹ÔÊÐíÄ㶨ÒåµÄÕâ¸ö²½ÖèÖУ¬ÓÐЩ²½ÖèÊÇ¿ÉÑ¡²½Öè¡£¶ÔÓë¿ÉÑ¡²½Ö裬ÎÒÃÇͨ³£³ÆÎª¡°¹³×Ó£¨hood£©¡±¡£ËüÔÚ±àдʱ£¬ÔÚ³éÏóÀàÖв¢²»ÊÇÒ»¸ö³éÏóº¯Êý£¬µ«È´ÊÇÒ»¸öʲô¶¼²»Ð´µÄ¿Õº¯Êý¡£¼Ì³ÐÀàÔÚ±àдʱ£¬Èç¹ûÐèÒªÕâ¸ö²½ÖèÔòÖØÔØÕâ¸öº¯Êý£¬·ñÔò¾ÍʲôҲ²»Ð´£¬½ø¶øÔÚÖ´ÐеÄʱºòÒ²Èçͬʲô¶¼Ã»ÓÐÖ´ÐС£

ͨ¹ýÒÔÉ϶ÔÄ£°åģʽµÄÃèÊö¿ÉÒÔ·¢ÏÖ£¬Ä£°åģʽ¿ÉÒÔ´ó´óµØÌá¸ßÎÒÃǵĴúÂ븴Óó̶ȡ£

ÒÔÉÏһЩ³£ÓÃÉè¼ÆÄ£Ê½£¬¶¼ÄÜʹÎÒÃÇ¿ìËÙÌá¸ß´úÂëÖÊÁ¿¡£»¹ÊÇÄǾ仰£¬Éè¼ÆÄ£Ê½²»ÊÇʲô¸ßÉîµÄ¶«Î÷£¬Ç¡Ç¡Ïà·´£¬ËüÊdzõѧÕß¿ìËÙÌá¸ßµÄ½Ý¾¶¡£È»¶ø£¬Èç¹û˵Ìá¸ß´úÂ븴ÓÃÊÇÌá¸ß´úÂëÖÊÁ¿µÄ³õ½×£¬Ê¹ÓÃÉè¼ÆÄ£Ê½Ò²Ö»ÄÜÊÇÌá¸ß´úÂëÖÊÁ¿µÄÖнס£ÄÇô£¬Ê²Ã´ÊǸ߽×ÄØ£¿ÎÒÈÏΪÊÇÄÇЩ·ÖÎöÉè¼ÆÀíÂÛ£¬¸ü¾ßÌåµØËµ£¬¾ÍÊÇÖ°ÔðÇý¶¯Éè¼ÆºÍÁìÓòÇý¶¯Éè¼Æ¡£

3£©Ö°ÔðÇý¶¯Éè¼ÆºÍÁìÓòÇý¶¯Éè¼Æ

Ç°ÃæÎÒÌáµ½£¬µ±ÎÒÃdz¢ÊÔдһЩ¸´ÔÓ¹¦ÄܵÄʱºò£¬ÎÒÃǰѹ¦ÄÜ·Ö½â³ÉÒ»¸ö¸öÏà¶Ô¶ÀÁ¢µÄº¯Êý¡£µ«ÊÇ£¬Ó¦µ±½«ÕâЩº¯Êý·ÖÅäµ½ÄĸöÀàÖÐÄØ£¿Ò²¾ÍÊÇϵͳÖеÄËùÓÐÀà¶¼Ó¦µ±ÓµÓÐÄÄЩº¯ÊýÄØ£¿»òÕß˵Ӧµ±±íÏÖ³öÄÄЩÐÐÎªÄØ£¿´ð°¸¾ÍÔÚÕâÀÒÔÖ°ÔðΪÖÐÐÄ£¬¸ù¾ÝÖ°Ôð·ÖÅäÐÐΪ¡£ÎÒÃÇÔÚ·ÖÎöϵͳʱ£¬Ê×ÏÈÊǸù¾Ý¿Í»§ÐèÇó½øÐÐÓÃÀý·ÖÎö£¬È»ºó¸ù¾ÝÓÃÀý»æÖÆÁìÓòģʽºÍ·ÖÎöÄ£ÐÍ£¬Õû¸öϵͳ×îÖ÷ÒªµÄÀà¾ÍÐγÉÁË¡£Í¨¹ýÒÔÉÏ·ÖÎöÐγɵÄÀ࣬ÍùÍùºÍÏÖʵÊÀ½çµÄ¶ÔÏóÊǶÔÓ¦µÄ¡£ÕýÒòΪÈç´Ë£¬Èí¼þÊÀ½çµÄÕâЩÀàÒ²¾ßÓÐÁËÓëÏÖʵÊÀ½çµÄ¶ÔÏóÏà¶ÔÓ¦µÄÖ°Ôð£¬ÒÔ¼°ÔÚÕâЩְÔð·¶Î§ÄÚµÄÐÐΪ¡£

Ö°ÔðÇý¶¯Éè¼Æ£¨Responsibility Drive Design£¬RDD£©ÊÇCraig LarmanÔÚËûµÄ¾­µäÖø×÷¡¶UMLºÍģʽӦÓá·ÖÐÌá³öµÄ¡£Ö°ÔðÇý¶¯Éè¼ÆµÄºËÐÄ˼Ï룬¾ÍÊÇÎÒÃÇÔÚ¶ÔÒ»¸öϵͳ½øÐзÖÎöÉè¼ÆµÄʱºò£¬Ó¦µ±ÒÔÖ°ÔðΪÖÐÐÄ£¬¸ù¾ÝÖ°Ôð·ÖÅäÐÐΪ¡£ÕâÖÖ˼ÏëÊ×ÏÈÒªÇóÎÒÃÇÉè¼ÆµÄËùÓÐÈí¼þÊÀ½çµÄ¶ÔÏó£¬Ó¦µ±ÓëÏÖʵÊÀ½ç¾¡Á¿±£³ÖÒ»Ö£¬Ëû³ÆÖ®Îª¡°µÍ±íʾ²îÒ족¡£ÓÐÁ˵ͱíʾ²îÒ죬һ·½ÃæÌá¸ßÁË´úÂëµÄ¿É¶ÁÐÔ£¬ÁíÒ»·½Ã棬µ±ÒµÎñ·¢Éú±ä¸üµÄʱºò£¬Ò²¿ÉÒÔ¸ù¾Ýʵ¼ÊÇé¿ö¿ìËÙÓ¦¶Ô±ä¸ü¡£

Craig LarmanÔÚÌá³öÖ°ÔðÇý¶¯Éè¼ÆÀíÂÛµÄͬʱ£¬»¹Ìá³öÁËGRASPÉè¼ÆÄ£Ê½£¬À´·á¸»Õâ¸öÀíÂÛ¡£ÔÚGRASPÉè¼ÆÄ£Ê½ÖУ¬ÎÒÈÏΪ£¬µÍñîºÏ¡¢¸ßÄÚ¾Û¡¢ÐÅϢר¼Òģʽ×îÓÐÓá£

¼ÌCraig LarmanÌá³öµÄÖ°ÔðÇý¶¯Éè¼ÆÊýÄêÖ®ºó£¬Áíһλ´óʦÌá³öÁËÁìÓòÇý¶¯Éè¼Æ¡£ÁìÓòÇý¶¯Éè¼Æ£¨Domain Drive Design£¬DDD£©ÊÇEric EvansÔÚËûµÄͬÃûÖø×÷¡¶ÁìÓòÇý¶¯Éè¼Æ¡·ÖÐÌá³öµÄ¡£ÔÚ֮ǰµÄÉè¼ÆÀíÂÛÖУ¬ÁìÓòÄ£ÐÍÊÇ´ÓÓÃÀýÄ£Ð͵½·ÖÎöÄ£ÐÍÖ®¼äµÄÒ»ÖÖÖмäÄ£ÐÍ£¬Ò²¾ÍÊÇ´ÓÐèÇó·ÖÎöµ½Èí¼þ¿ª·¢Ö®¼äµÄÒ»ÖÖÖмäÄ£ÐÍ¡£Õâôһ¸öÖмäÄ£ÐÍ£¬¼È²»ÊÇÐèÇó½×¶ÎµÄÖØÒª²úÎÔÚ¿ª·¢½×¶ÎÒ²²»ÒÔËü×÷Ϊ±ê×¼½øÐпª·¢£¬½ö½öÊÇ×÷Ϊ²Î¿¼£¬ÉõÖÁ¸øÈ˸оõÓÐһЩ¶àÓà¡£µ«ÊÇ£¬EvansÔÚÁìÓòÇý¶¯Éè¼ÆÖУ¬½«Ëü·Åµ½ÁËÒ»¸öÎÞ±ÈÖØÒªµÄλÖᣰ´ÕÕÁìÓòÇý¶¯Éè¼ÆµÄÀíÂÛ£¬ÔÚÐèÇó·ÖÎö½×¶Î£¬ÐèÇó·ÖÎöÈËԱʹÓÃÁìÓòÄ£ÐÍÓë¿Í»§½øÐйµÍ¨£»ÔÚÉè¼Æ¿ª·¢½×¶Î£¬¿ª·¢ÈËԱʹÓÃÁìÓòÄ£ÐÍÖ¸µ¼Éè¼Æ¿ª·¢£»ÔÚÔËÐÐά»¤ºÍ¶þ´Î¿ª·¢½×¶Î£¬Î¬»¤ºÍ¶þ´Î¿ª·¢ÈËԱʹÓÃÁìÓòÄ£ÐÍÀí½âºÍÊìϤϵͳ£¬²¢Ö¸µ¼ËûÃǽøÐÐά»¤ºÍ¶þ´Î¿ª·¢¡£×ÜÖ®£¬ÔÚÕû¸öÈí¼þ¿ª·¢µÄÉúÃüÖÜÆÚÖУ¬ÁìÓòÄ£ÐͶ¼³ÉΪÁË×îºËÐĵÄÄÚÈÝ¡£

ÁìÓòÇý¶¯Éè¼Æ¼Ì³ÐÁËÖ°ÔðÇý¶¯Éè¼Æ¡£ÔÚÁìÓòÇý¶¯Éè¼ÆÖÐÇ¿µ÷µÄ£¬ÒÀÈ»Êǵͱíʾ²îÒ죬ÒÔ¼°Ö°ÔðµÄ·ÖÅä¡£µ«ÊÇ£¬ÈçºÎ×öµ½µÍ±íʾ²îÒìÄØ£¿ÈçºÎÍê³ÉÖ°Ôð·ÖÅäÄØ£¿ÁìÓòÇý¶¯Éè¼Æ¸øÁËÎÒÃÇÍêÃÀµÄ´ð°¸£¬ÄǾÍÊǽ¨Á¢ÁìÓòÄ£ÐÍ¡£ÁìÓòÇý¶¯Éè¼Æ¸Ä±äÁËÎÒÃǵÄÉè¼Æ·½Ê½¡£ÔÚÐèÇó·ÖÎö½×¶Î£¬ÓÃÀýÄ£ÐÍÒѲ»ÔÙÊÇÕâ¸ö½×¶ÎµÄºËÐÄ£¬¶øÊǽ¨Á¢ÁìÓòÄ£ÐÍ¡£ÔÚ¿ª·¢ºÍ¶þ´Î¿ª·¢½×¶Î£¬¿ª·¢ÈËÔ±Ò²²»ÔÙÊÇÒ»ÂñÍ·µØÃÍÔú½ø³ÌÐò¶ÑÀ↑ʼ±à³Ì£¬¶øÊÇÊ×ÏÈϸÖµؽøÐÐÁìÓòÄ£ÐÍ·ÖÎö¡£ÁìÓòÇý¶¯Éè¼ÆÇ¿µ÷³ÖÐø¾«»¯£¬Ê¹ÁìÓòÄ£ÐͲ»ÔÙÊÇÒ»µ©Íê³É·ÖÎö¾ÍÈÓÔÚÒ»±ß²»ÔÙÀí»áµÄͼֽ£¬¶øÊÇÔÚ²»¶ÏÀí½âÒµÎñµÄ»ù´¡Éϲ»¶ÏÐ޸ĺ;«»¯ÁìÓòÄ£ÐÍ£¬½ø¶øÇý¶¯ÎÒÃÇ´úÂëµÄ¾«»¯¡£ÁìÓòÇý¶¯Éè¼ÆÇ¿µ÷µÄ²»ÔÙÊÇÒ»´ÎÈí¼þ¿ª·¢¹ý³ÌÖÐÎÒÃÇÒª×öµÄ¹¤×÷£¬Ëü¿´µÃ¸ü¼Ó³¤Ô¶£¬ËüÇ¿µ÷µÄÊÇÒ»Ì×Èí¼þÔÚÏ൱³¤Ò»¶Îʱ¼äÄÚ³ÖÐøÉý¼¶µÄ¹ý³ÌÖÐÎÒÃÇÓ¦µ±×öµÄ¹¤×÷¡£ÎÒÈÏΪ£¬ÁìÓòÇý¶¯Éè¼ÆÊÇÌá¸ß´úÂëÖÊÁ¿µÄ×î¸ßµÈ¼¶¡£µ±Ê±£¬Ê¹ÓÃÁìÓòÇý¶¯Éè¼Æ½øÐÐÈí¼þ¿ª·¢ÊÇÒ»³¡Ï൱¾Þ´óµÄ¸Ä¸ï£¬Ëüµß¸²ÁËÎÒÃǹýÈ¥µÄËùÓпª·¢Ä£Ê½£¬ÎÒÃDZØÐë½Å̤ʵµØµØÒ»²½Ò»²½È¥Êµ¼ùºÍ¸Ä±ä¡£

Ö°ÔðÇý¶¯Éè¼Æ

Ëæ×ÅÈí¼þÒµµÄ²»¶Ï·¢Õ¹£¬Ëæ×ÅÈí¼þÐèÇóµÄ²»¶ÏÀ©´ó£¬Èí¼þËù¹ÜÀíµÄ·¶Î§Ò²ÔÚ²»¶ÏÍØ¿í¡£¹ýÈ¥Ò»¸öÈí¼þ½ö½ö¹ÜÀíһ̨µçÄÔµÄÒ»¸öССµÄ¹¦ÄÜ£¬¶øÏÖÔÚ±»À©Õ¹µ½ÁËÒ»¸öÆóÒµ¡¢Ò»¸öÐÐÒµ¡¢Ò»¸ö²úÒµÁ´¡£¹ýÈ¥ÎÒÃÇ¿ª·¢Ò»Ì×Èí¼þ£¬Ö»ÓÐÉÙÁ¿µÄ¶þ´Î¿ª·¢£¬µ±ËüʹÓõ½Ò»¶¨Ê±ºòÎÒÃǾÍÅׯúµôÖØÐÂÓÖ¿ª·¢Ò»Ìס£ÏÖÔÚ£¬Ëæ×ÅÓû§¶ÔÈí¼þÒÀÀµ³Ì¶ÈµÄ²»¶Ï¼Ó´ó£¬ÎÒÃǺÜÄÑ˵ÅׯúÒ»Ì×Èí¼þÖØÐ¿ª·¢ÁË£¬¸ü¶àµÄÊÇÔÚÒ»Ì×Èí¼þÖгÖÐø¸Ä½ø£¬Ê¹ÕâÌ×Èí¼þµÄÉúÃüÖÜÆÚ³ÖÐøÊýÄêÒÔ¼°Êý¸ö°æ±¾¡£ÕýÊÇÒòΪÈí¼þÒµÃæÁÙ×ÅÈç´Ë¾Þ´óµÄѹÁ¦£¬ÎÒÃǵĴúÂëÖÊÁ¿£¬ÎÒÃÇ¿ª·¢µÄÈí¼þÓµÓеĿɱä¸üÐԺͳÖÐø¸Ä½øµÄÄÜÁ¦£¬³ÉΪÈí¼þÖÆÊ¤µÄ¹Ø¼üÒòËØ£¬ÁîÎÒÃDz»Äܲ»·´Ë¼¡£

´úÂëÖÊÁ¿ÆÀ¼ÛµÄ¹Ø¼üÖ¸±ê£ºµÍñîºÏ£¬¸ßÄÚ¾Û

ñîºÏ¾ÍÊǶÔÄ³ÔªËØÓëÆäËüÔªËØÖ®¼äµÄÁ¬½Ó¡¢¸ÐÖªºÍÒÀÀµµÄÁ¿¶È¡£ñîºÏ°üÀ¨£º

1£®ÔªËØBÊÇÔªËØAµÄÊôÐÔ£¬»òÕßÔªËØAÒýÓÃÁËÔªËØBµÄʵÀý£¨Õâ°üÀ¨ÔªËØAµ÷ÓõÄij¸ö·½·¨£¬Æä²ÎÊýÖаüº¬ÔªËØB£©¡£

2£®ÔªËØAµ÷ÓÃÁËÔªËØBµÄ·½·¨¡£

3£®ÔªËØAÖ±½Ó»ò¼ä½Ó³ÉÎªÔªËØBµÄ×ÓÀà¡£

4£®ÔªËØAÊǽӿÚBµÄʵÏÖ¡£

Èç¹ûÒ»¸öÔªËØ¹ýÓÚÒÀÀµÆäËüÔªËØ£¬Ò»µ©ËüËùÒÀÀµµÄÔªËØ²»´æÔÚ£¬»òÕß·¢Éú±ä¸ü£¬Ôò¸ÃÔªËØ½«²»ÄÜÔÙÕý³£ÔËÐУ¬»òÕß²»µÃ²»ÏàÓ¦µØ½øÐбä¸ü¡£Òò´Ë£¬ñîºÏ½«´ó´óÓ°Ïì´úÂëµÄͨÓÃÐԺͿɱä¸üÐÔ¡£

ÄÚ¾Û£¬¸üΪרҵµÄ˵·¨½Ð¹¦ÄÜÄÚ¾Û£¬ÊǶÔÈí¼þϵͳÖÐÔªËØÖ°ÔðÏà¹ØÐԺͼ¯ÖжȵĶÈÁ¿¡£Èç¹ûÔªËØ¾ßÓи߶ÈÏà¹ØµÄÖ°Ô𣬳ýÁËÕâЩְÔðÄÚµÄÈÎÎñ£¬Ã»ÓÐÆäËü¹ý¶àµÄ¹¤×÷£¬ÄÇô¸ÃÔªËØ¾Í¾ßÓиßÄÚ¾ÛÐÔ£¬·´Ö®ÔòΪµÍÄÚ¾ÛÐÔ¡£ÄÚ¾Û¾ÍÏñÒ»¸öרºáµÄ¹ÜÀíÕߣ¬ËüÖ»×ö×Ô¼ºÖ°Ôð·¶Î§ÄÚµÄÊ£¬¶ø½«ÆäËüÓëËüÏà¹ØµÄÊÂÇ飬·ÖÅ䏸±ðÈËÈ¥×ö¡£

¸ßÖÊÁ¿µÄ´úÂëÒªÇóÎÒÃǵĴúÂë±£³ÖµÍñîºÏ¡¢¸ßÄÚ¾Û¡£µ«ÊÇ£¬Õâ¸öÒªÇóÊÇÈç´ËµÄ³éÏóÓëÄ£ºý£¬ÈçºÎ²ÅÄÜ×öµ½ÕâÐ©ÄØ£¿Èí¼þ´óʦÃǸæËßÎÒÃÇÁËÐí¶à·½·¨£¬ÆäÖÐÖ®Ò»¾ÍÊÇCraig LarmanµÄÖ°ÔðÇý¶¯Éè¼Æ¡£

Ö°ÔðÇý¶¯Éè¼Æ£¨Responsibility Drive Design£¬RDD£©ÊÇCraig LarmanÔÚËûµÄ¾­µäÖø×÷¡¶UMLºÍģʽӦÓá·ÖÐÌá³öµÄ¡£ÒªÀí½âÖ°ÔðÇý¶¯Éè¼Æ£¬ÎÒÃÇÊ×ÏÈÒªÀí½â¡°µÍ±íʾ²îÒ족¡£

µÍ±íʾ²îÒì

ÎÒÃÇ¿ª·¢µÄÓ¦ÓÃÈí¼þʵ¼ÊÉÏÊǶÔÏÖʵÊÀ½çµÄÄ£Ä⣬Òò´Ë£¬Èí¼þÊÀ½çÓëÏÖʵÊÀ½ç´æÔÚ×űØÈ»µÄÁªÏµ¡£µ±ÎÒÃÇÔÚ½øÐÐÐèÇó·ÖÎöµÄʱºò£¬ÐèÇó·ÖÎöԱʵ¼ÊÉÏÊÇ´Ó¿Í»§ÄÇÀïÔÚÁ˽âÏÖʵÊÀ½çÊÂÎïµÄ¹æÔò¡¢¹¤×÷µÄÁ÷³Ì¡£Èç¹ûÎÒÃÇÔÚÈí¼þ·ÖÎöºÍÉè¼ÆµÄ¹ý³ÌÖУ¬½«Èí¼þÊÀ½çÓëÏÖʵÊÀ½ç½ôÃܵØÁªÏµµ½Ò»Æð£¬ÎÒÃǵÄÈí¼þ½«¸ü¼Ó±¾É«µØ»¹Ô­ÊÂÎï×î±¾ÖʵĹæÂÉ¡£ÕâÑùµÄÉè¼Æ£¬¾Í³ÆÖ®Îª¡°µÍ±íʾ²îÒ족¡£

²ÉÓᰵͱíʾ²îÒ족½øÐÐÈí¼þÉè¼Æ£¬ÏÖʵÊÀ½çÓÐʲôÊÂÎ¾ÍÓ³ÉäΪÈí¼þÊÀ½çµÄ¸÷ÖÖ¶ÔÏó£¨Àࣩ£»ÏÖʵÊÀ½çµÄÊÂÎïÓµÓÐʲôÑùµÄÖ°Ôð£¬ÔÚÈí¼þÊÀ½çÀïµÄ¶ÔÏó¾ÍÓµÓÐʲôÑùµÄÖ°Ôð£»ÔÚÏÖʵÊÀ½çÖеÄÊÂÎÒòΪËüµÄÖ°Ôð¶ø²úÉúµÄÐÐΪ£¬ÔÚÈí¼þÊÀ½çÖоͷ´Ó³Îª¶ÔÏóËùÓµÓеĺ¯Êý¡£

µÍ±íʾ²îÒ죬ʹ·ÖÎöÉè¼ÆÕß¶ÔÈí¼þµÄ·ÖÎöºÍÉè¼Æ¸ü¼Ó¼òµ¥£¬Ë¼Â·¸ü¼ÓÇåÎú£»Ê¹´úÂë¸ü¼Ó¿É¶Á£¬ÔĶÁÕ߸ü¼ÓÒ×ÓÚÀí½â£»¸üÖØÒªµÄÊÇ£¬µ±ÐèÇó·¢Éú±ä¸ü£¬»òÕßÒµÎñ²úÉúÀ©Õ¹Ê±£¬Éè¼ÆÕßÖ»ÐèÒª×ñÑ­ÊÂÎï±¾À´µÄÃæÃ²È¥Ë¼¿¼ºÍÐÞ¸ÄÈí¼þ£¬Ê¹Èí¼þ¸ü¼ÓÒ×ÓÚ±ä¸üºÍÀ©Õ¹¡£

½ÇÉ«¡¢Ö°Ôð¡¢Ð­×÷

Àí½âÁË¡°µÍ±íʾ²îÒ족£¬ÏÖÔÚÎÒÃÇÀ´¿´¿´ÎÒÃÇÓ¦µ±ÈçºÎÔËÓÃÖ°ÔðÇý¶¯Éè¼Æ½øÐзÖÎöºÍÉè¼Æ¡£Ê×ÏÈ£¬ÎÒÃÇͨ¹ýÓë¿Í»§µÄ¹µÍ¨ºÍ¶ÔÒµÎñÐèÇóµÄÁ˽⣬´ÓÖÐÌáÈ¡³öÏÖʵÊÀ½çÖеĹؼüÊÂÎïÒÔ¼°Ï໥֮¼äµÄ¹ØÏµ¡£Õâ¸ö¹ý³ÌÎÒÃÇͨ³£Í¨¹ý½¨Á¢ÁìÓòÄ£ÐÍÀ´Íê³É¡£ÁìÓòÄ£Ðͽ¨Á¢ÆðÀ´ÒÔºó£¬Í¨¹ýÖîÈçRational RoseÕâÑùµÄÉè¼ÆÈí¼þµÄÕýÏò¹¤³Ì£¬Éú³ÉÁËÎÒÃÇÔÚÈí¼þϵͳÖÐ×î³õʼµÄÈí¼þÀà¡£ÕâЩÈí¼þÀ࣬ÓÉÓÚÿ¸ö¶¼°çÑÝ×ÅÏÖʵÊÀ½çÖеÄÒ»¸ö¾ßÌåµÄ½ÇÉ«£¬Òò¶ø¸³ÓèÁ˸÷×ÔµÄÖ°Ôð¡£Ç°ÃæÎÒÒѾ­Ìáµ½£¬Èç¹ûÄãµÄϵͳ²ÉÓÃÖ°ÔðÇý¶¯Éè¼ÆµÄ˼Ïë½øÐÐÉè¼Æ¿ª·¢£¬×÷Ϊһ¸öºÃµÄϰ¹ß£¬ÄãÓ¦µ±ÔÚÿһ¸öÈí¼þÀàµÄ×¢ÊÍÊ×ÐУ¬Çå³þµØÃèÊö¸ÃÈí¼þÀàµÄÖ°Ôð¡£

µ±ÎÒÃÇÍê³ÉÁËϵͳÖÐÈí¼þÀàµÄÖÆ¶©£¬·ÖÅäºÃÁ˸÷×ÔµÄÖ°Ôð£¬ÎÒÃǾÍÓ¦¸Ã¿ªÊ¼¸ù¾ÝÈí¼þÐèÇ󣬱àд¸÷¸öÈí¼þÀàµÄ¹¦ÄÜ¡£ÔÚÇ°ÃæÎÒ¸ø´ó¼ÒÌá³öÁËÒ»¸ö½¨Ò飬¾ÍÊDz»ÒªÔÚÒ»¸öº¯ÊýÖбàд´ó¶ÎµÄ´úÂë¡£±àд´ó¶ÎµÄ´úÂ룬ͨ³£»á½µµÍ´úÂëµÄÄÚ¾Û¶È£¬ÒòΪÕâЩ´úÂëÖн«°üº¬²»ÊǸÃÈí¼þÀàÓ¦µ±Íê³ÉµÄ¹¤×÷¡£×÷Ϊһ¸öÓо­ÑéµÄ¿ª·¢ÈËÔ±£¬ÔÚ±àдһ¸ö¹¦ÄÜʱ£¬Ê×ÏÈÓ¦µ±¶Ô¹¦ÄܽøÐзֽ⡣һ¶ÎÉÔ΢¸´ÔӵŦÄÜ£¬Í¨³£¶¼¿ÉÒÔ±»·Ö½â³ÉÒ»¸ö¸öÏà¶Ô¶ÀÁ¢µÄ²½Öè¡£²½ÖèÓë²½ÖèÖ®¼ä´æÔÚ׎»»¥£¬ÄǾÍÊÇÊý¾ÝµÄÊäÈëÊä³ö¡£Í¨¹ýÒÔÉϵķֽ⣬ÿһ¸ö²½Ö轫ÐγÉÒ»¸ö¶ÀÁ¢µÄº¯Êý£¬²¢ÇÒʹÓÃÒ»¸ö¿ÉÒÔ±íÃ÷Õâ¸ö²½ÖèÒâͼµÄÊÍÒ庯ÊýÃû¡£½ÓÏÂÀ´£¬ÎÒÃÇÓ¦µ±¿¼Âǵ쬾ÍÊÇÓ¦µ±½«ÕâЩº¯Êý½»¸øË­¡£ËüÃÇÓпÉÄܽ»¸øÔ­Èí¼þÀ࣬ҲÓпÉÄܽ»¸øÆäËüÈí¼þÀ࣬Æä·ÖÅäµÄÔ­ÔòÊÇÊ²Ã´ÄØ£¿´ð°¸ÊÇ·ñÇå³þ£¬ÄǾÍÊÇÖ°Ôð¡£Ã¿¸öÈí¼þÀà´ú±íÏÖʵÊÀ½çµÄÒ»¸öÊÂÎ»òÕß˵һ¸ö½ÇÉ«¡£ÔÚÏÖʵÊÀ½çÖÐÕâ¸öÈÎÎñÓ¦µ±ÓÉË­À´Íê³É£¬ÄÇôÔÚÈí¼þÊÀ½çÖУ¬Õâ¸öº¯Êý¾ÍÓ¦µ±·ÖÅ䏸ÏàÓ¦µÄÄǸöÈí¼þÀà¡£

ͨ¹ýÒÔÉϲ½ÖèµÄ·Ö½â£¬Ò»¸ö¹¦ÄܾͷÖÅ䏸Á˶à¸öÈí¼þÀ࣬Ï໥Э×÷µØÍê³ÉÕâ¸ö¹¦ÄÜ¡£ÕâÑùµÄ·ÖÎöºÍÉè¼Æ£¬Æä´úÂëÒ»¶¨ÊǸßÄھ۵ĺ͸߿ɶÁÐԵġ£Í¬Ê±£¬µ±ÐèÇó·¢Éú±ä¸üµÄʱºò£¬Éè¼ÆÕßͨ¹ý¶ÔÏÖʵÊÀ½çµÄÀí½â£¬¿ÉÒԷdz£ÇáËɵØÕÒµ½ÄǸöÐèÒªÐ޸ĵÄÈí¼þÀ࣬¶ø²»»áÓ°ÏìÆäËüÀ࣬Òò¶øÒ²¾Í±äµÃÒ×ά»¤¡¢Ò×±ä¸üºÍµÍñîºÏÁË¡£

˵ÁËÕâô¶à£¬¾ÙÒ»¸öʵÀýÒ²Ðí¸üÄܰïÖúÀí½â¡£ÄÃÒ»¸öÔ±¹¤¹¤×ÊϵͳÀ´Ëµ°É¡£µ±ÈËÁ¦×ÊÔ´ÔÚ·¢·ÅÒ»¸öÔ¹¤×ʵÄʱºò£¬ÒÔ¼°ÀëÖ°µÄÔ±¹¤¿Ï¶¨²»ÄÜÔÙ·¢·Å¹¤×ÊÁË¡£ÔÚϵͳÉè¼ÆµÄÆÚ³õ£¬¿ª·¢ÈËÔ±ÉÌÁ¿ºÃ£¬ÔÚÔ±¹¤ÐÅÏ¢ÖÐÉ趨һ¸ö¡°ÀëÖ°±êÖ¾¡±×ֶΡ£±àд¹¤×Ê·¢·ÅµÄ¿ª·¢ÈËԱͨ¹ý²éѯ£¬½«¡°ÀëÖ°±êÖ¾¡±ÎªfalseµÄÔ±¹¤²éѯ³öÀ´£¬²¢ÎªËûÃǼÆËãºÍ·¢·Å¹¤×Ê¡£µ«ÊÇ£¬Ëæ×ÅÕâ¸öϵͳµÄ²»¶ÏʹÓ㬱àдԱ¹¤¹ÜÀíµÄ¿ª·¢ÈËÔ±·¢ÏÖ£¬¡°ÀëÖ°±êÖ¾¡±×Ö¶ÎÒѾ­²»ÄÜÂú×ã¿Í»§µÄÐèÇó£¬Òò¶ø½«¡°ÀëÖ°±êÖ¾¡±×Ö¶Î·ÏÆú£¬²¢Ôö¼ÓÁËÒ»¸ö¡°Àëְʱ¼ä¡±×Ö¶ÎÀ´¹ÜÀíÀëÖ°µÄÔ±¹¤¡£È»¶ø£¬±àд¹¤×Ê·¢·ÅµÄ¿ª·¢ÈËÔ±²¢²»ÖªµÀÕâÑùµÄ±ä¸ü£¬ÒÀȻʹÓÃ×Å¡°ÀëÖ°±êÖ¾¡±×ֶΡ£ÏÔÈ»£¬ÕâÑùµÄ½á¹û¾ÍÊÇ£¬Èí¼þϵͳ¿ªÊ¼¶ÔÀëÖ°Ô±¹¤·¢·Å¹¤×ÊÁË¡£×Ðϸ·ÖÎöÕâ¸öÎÊÌâµÄÔ­Òò£¬ÎÒÃDz»ÄÑ·¢ÏÖ£¬È·ÈÏÔ±¹¤ÊÇ·ñÀëÖ°£¬²¢²»ÊÇ¡°·¢·Å¹¤×Ê¡±Èí¼þÀàÓ¦µ±Íê³ÉµÄ¹¤×÷£¬¶øÓ¦µ±ÊÇ¡°Ô±¹¤¹ÜÀí¡±Èí¼þÀàÓ¦µ±Íê³ÉµÄ¡£Èç¹û½«¡°»ñÈ¡·ÇÀëÖ°Ô±¹¤¡±µÄÈÎÎñ½»¸ø¡°Ô±¹¤¹ÜÀí¡±Èí¼þÀ࣬¶ø¡°·¢·Å¹¤×Ê¡±Èí¼þÀà½ö½öÖ»ÊÇÈ¥µ÷Óã¬ÄÇôÀëÖ°¹¦ÄÜÓÉ¡°ÀëÖ°±êÖ¾¡±×ֶθÄΪÁË¡°Àëְʱ¼ä¡±×ֶΣ¬Æäʵ¾ÍÓë¡°·¢·Å¹¤×Ê¡±Èí¼þÀàºÁÎÞ¹ØÏµ¡£¶ø×÷Ϊ¡°Ô±¹¤¹ÜÀí¡±µÄ¿ª·¢ÈËÔ±£¬Ò»µ©·¢ÉúÕâÑùµÄ±ä¸ü£¬Ëûµ±È»ÖªµÀÈ¥ÐÞ¸Ä×Ô¼ºÏàÓ¦µÄ¡°»ñÈ¡·ÇÀëÖ°Ô±¹¤¡±º¯Êý£¬ÕâÑù¾Í²»»á·¢ÉúÒÔÉÏÎÊÌ⡣ͨ¹ýÕâÑùÒ»¸öʵÀý£¬Ò²ÐíÄãÄܹ»Àí½â¡°Ö°ÔðÇý¶¯Éè¼Æ¡±µÄ¾«ÒªÓë×÷ÓÃÁ˰ɡ£

Ö°Ôð·ÖÅäÓëÐÅϢר¼Ò

ͨ¹ýÒÔÉ϶ÔÖ°ÔðÇý¶¯Éè¼ÆµÄ½²Êö£¬ÎÒÃDz»ÄÑ·¢ÏÖ£¬Ö°ÔðÇý¶¯Éè¼ÆµÄ¾«Òª¾ÍÊÇÖ°Ôð·ÖÅä¡£µ«ÊÇ£¬ÔÚ·×·±¸´ÔÓµÄÈí¼þÉè¼ÆÖУ¬ÈçºÎ½øÐÐÖ°Ôð·ÖÅä³£³£ÁîÎÒÃÇÃÔ»ó¡£ÐÒÔ˵ÄÊÇ£¬Larman´óʦÇå³þµØÈÏʶµ½ÁËÕâÒ»µã¡£ÔÚËûµÄÖø×÷ÖУ¬ÐÅϢר¼ÒģʽΪÎÒÃÇÌṩÁ˰ïÖú¡£

ÐÅϢר¼Òģʽ£¨ÓÖ³ÆÎª×¨¼Òģʽ£©¸æËßÎÒÃÇ£¬ÔÚ·ÖÎöÉè¼ÆÖУ¬Ó¦µ±½«Ö°Ôð·ÖÅ䏸Èí¼þϵͳÖеÄÕâÑùÒ»¸öÈí¼þÀ࣬ËüÓµÓÐʵÏÖÕâ¸öÖ°ÔðËù±ØÐëµÄÐÅÏ¢¡£ÎÒÃdzÆÕâ¸öÈí¼þÀ࣬½Ð¡°ÐÅϢר¼Ò¡±¡£Óøü¼Ó¼ò¶ÌµÄ»°Ëµ£¬¾ÍÊǽ«Ö°Ôð·ÖÅ䏸ÐÅϢר¼Ò¡£

ΪʲôÎÒÃÇÒª½«Ö°Ôð·ÖÅ䏸ÐÅϢר¼ÒÄØ£¿ÎÒÃÇÓÃÉÏÃæµÄÀý×ÓÀ´ËµÃ÷°É¡£µ±¡°·¢·Å¹¤×Ê¡±Èí¼þÀàÐèÒª»ñÈ¡·ÇÀëÖ°Ô±¹¤Ê±£¬¡°Ô±¹¤¹ÜÀí¡±Èí¼þÀà¾ÍÊÇ¡°»ñÈ¡·ÇÀëÖ°Ô±¹¤¡±ÈÎÎñµÄÐÅϢר¼Ò£¬ÒòΪËüÕÆÎÕ×ÅËùÓÐÔ±¹¤µÄÐÅÏ¢¡£¼ÙÉèÎÒÃDz»½«¡°»ñÈ¡·ÇÀëÖ°Ô±¹¤¡±µÄÈÎÎñ½»¸ø¡°Ô±¹¤¹ÜÀí¡±Èí¼þÀ࣬¶øÊÇÁíÒ»¸öÈí¼þÀàX£¬ÄÇô£¬ÎªÁË»ñȡԱ¹¤ÐÅÏ¢£¬Èí¼þÀàX²»µÃ²»·ÃÎÊ¡°Ô±¹¤¹ÜÀí¡±Èí¼þÀ࣬´Ó¶øÊ¹¡°·¢·Å¹¤×Ê¡±ÓëXñîºÏ£¬XÓÖÓë¡°Ô±¹¤¹ÜÀí¡±ñîºÏ¡£ÕâÑùµÄÉè¼Æ£¬²»ÈçÖ±½Ó½«¡°»ñÈ¡·ÇÀëÖ°Ô±¹¤¡±µÄÈÎÎñ½»¸ø¡°Ô±¹¤¹ÜÀí¡±Èí¼þÀ࣬ʹµÃ¡°·¢·Å¹¤×Ê¡±½ö½öÓë¡°Ô±¹¤¹ÜÀí¡±ñîºÏ£¬´Ó¶øÓÐЧµØ½µµÍÁËϵͳµÄÕûÌåñîºÏ¶È¡£

×ÜÖ®£¬²ÉÓá°Ö°ÔðÇý¶¯Éè¼Æ¡±µÄ˼·£¬ÎªÎÒÃÇÌá¸ßÈí¼þ¿ª·¢ÖÊÁ¿¡¢¿É¶ÁÐÔ¡¢¿Éά»¤ÐÔ£¬ÒÔ¼°±£³ÖÈí¼þµÄ³ÖÐø·¢Õ¹£¬ÌṩÁËÒ»¸ö¹ãÀ«µÄ¿Õ¼ä¡£

   
8810 ´Îä¯ÀÀ       28
Ïà¹ØÎÄÕÂ

Éî¶È½âÎö£ºÇåÀíÀôúÂë
ÈçºÎ±àд³öÓµ±§±ä»¯µÄ´úÂë
ÖØ¹¹-ʹ´úÂë¸ü¼ò½àÓÅÃÀ
ÍŶÓÏîÄ¿¿ª·¢"±àÂë¹æ·¶"ϵÁÐÎÄÕÂ
Ïà¹ØÎĵµ

ÖØ¹¹-¸ÄÉÆ¼ÈÓдúÂëµÄÉè¼Æ
Èí¼þÖØ¹¹v2
´úÂëÕû½àÖ®µÀ
¸ßÖÊÁ¿±à³Ì¹æ·¶
Ïà¹Ø¿Î³Ì

»ùÓÚHTML5¿Í»§¶Ë¡¢Web¶ËµÄÓ¦Óÿª·¢
HTML 5+CSS ¿ª·¢
ǶÈëʽC¸ßÖÊÁ¿±à³Ì
C++¸ß¼¶±à³Ì
×îл¼Æ»®
DeepSeekÔÚÈí¼þ²âÊÔÓ¦ÓÃʵ¼ù 4-12[ÔÚÏß]
DeepSeek´óÄ£ÐÍÓ¦Óÿª·¢Êµ¼ù 4-19[ÔÚÏß]
UAF¼Ü¹¹ÌåϵÓëʵ¼ù 4-11[±±¾©]
AIÖÇÄÜ»¯Èí¼þ²âÊÔ·½·¨Óëʵ¼ù 5-23[ÉϺ£]
»ùÓÚ UML ºÍEA½øÐзÖÎöÉè¼Æ 4-26[±±¾©]
ÒµÎñ¼Ü¹¹Éè¼ÆÓ뽨ģ 4-18[±±¾©]

WEBÓ¦ÓóÌÐòUIÄ£°æ´úÂë±àд
C# ±àÂë¹æ·¶ºÍ±à³ÌºÃϰ¹ß
ʲôÊÇ·ÀÓùÐÔ±à³Ì
ÉÆÓÚ·ÀÊØ-½¡×³´úÂëµÄ·ÀÓùÐÔ
Visual C++±à³ÌÃüÃû¹æÔò
JavaScript³ÌÐò±àÂë¹æ·¶


Éè¼ÆÄ£Ê½Ô­ÀíÓëÓ¦ÓÃ
´ÓÐèÇó¹ý¶Éµ½Éè¼Æ
Èí¼þÉè¼ÆÔ­ÀíÓëʵ¼ù
ÈçºÎ±àд¸ßÖÊÁ¿´úÂë
µ¥Ôª²âÊÔ¡¢Öع¹¼°³ÖÐø¼¯³É
Èí¼þ¿ª·¢¹ý³ÌÖ¸ÄÏ


ijȫÇòÖªÃûͨÐŹ«Ë¾ ´úÂëÕû½à
ºáºÓµç»ú ÈçºÎ±àд¸ßÖÊÁ¿´úÂë
ij֪Ãû½ðÈÚÈí¼þ·þÎñÉÌ ´úÂëÆÀÉó
¶«Èí¼¯ÍÅ ´úÂëÖØ¹¹
ij½ðÈÚÈí¼þ·þÎñÉÌ ¼¼ÊõÎĵµ
Öдïµçͨ Éè¼ÆÄ£Ê½Ô­ÀíÓëʵ¼ù
·¨¹úµçÐÅ ¼¼ÊõÎĵµ±àдÓë¹ÜÀí