shè yǐng > shè shì
mùlù
No. 1
   shè shì shì tào bèi fǎn shǐ yòngduō shù rén zhī xiǎo dejīng guòfèn lèi biān mùdìdài shè jīng yàn de zǒng jiéshǐ yòng shè shì shì wéi liǎo zhòng yòng dài ràng dài gèng róng bèi rén jiěbǎo zhèng dài kào xìng
   háo wèn shè shì rén tǒng dōushì duō yíng de shè shì shǐ dài biān zhì zhēn zhèng gōng chéng huà shè shì shì ruǎn jiàn gōng chéng de shí tóng shà de kuài kuài zhuān shí yàng
  gof( gangoffour, zhǐ shè shì - yòng miàn xiàng duì xiàng ruǎn jiàn de chǔde wèi zuò zhě: erichgamma,richardhelm,ralphjohnsonandjohnvlissides) de shè shì shì jiāng shè shì shēng dào lùn gāo bìng jiāng zhī guī fàn huàběn shū chū liǎo 23 zhǒng běn shè shì zài yòng miàn xiàng duì xiàng ruǎn jiàn de zhǎn guò chéng zhōngxīn de liàng de shè shì duàn chū xiàn
   shè shì kuàng jià
   xiàn zài yòng miàn xiàng duì xiàng ruǎn jiàn tǒng xiàn zài bān huàfēn wéi sān lèiyìng yòng chéng gōng xiāng kuàng jià (framework), men píng shí kāi de ruǎn jiàn dōushì yìng yòng chéng ; java de api shǔ gōng xiāng ; ér kuàng jià shì gòu chéng lèi dìng ruǎn jiàn yòng shè de xiāng xié zuò de lèi。 ejb( enterprisejavabeans) shì java yìng yòng suàn de kuàng jià .
   kuàng jià tōng cháng dìng liǎo yìng yòng de zhěng jié gòu lèi duì xiàng de guān děng děng shè cān shù biàn yìng yòng shí xiàn zhě néng zhōng jīng yìng yòng běn shēn de dìng jiékuàng jià zhù yào ruǎn jiàn yìng yòng zhōng gòng tóng de shè jué kuàng jià qiáng diào shè yòngyīn kuàng jià shè zhōng rán yào shǐ yòng shè shì .
   lìng wài shè shì yòu zhù duì kuàng jià jié gòu de jiěchéng shú de kuàng jià tōng cháng shǐ yòng liǎo duō zhǒng shè shì , guǒ shú zhè xiē shè shìháo wèn jiāng xùn zhǎng kuàng jià de jié gòu men bān kāi zhě guǒ rán jiē chù ejbj2ee děng kuàng jiàhuì jué bié nán xuénán zhǎng me zhuǎn 'ér xiān zhǎng shè shì shì gěi liǎo pōu ejb huò j2ee tǒng de
   shì de běn yào
   shè shì shǐ rén men gèng jiā jiǎn dān fāng biàn yòng chéng gōng de shè jié gòujiāng zhèng shí de shù biǎo shù chéng shè shì huì shǐ xīn tǒng kāi zhě gèng jiā róng jiě shè
  1. shì míng chēng( patternname)
   zhù míng yòng liǎng lái miáo shù shì de wèn jiě jué fāng 'àn xiào guǒmìng míng xīn de shì zēng jiā liǎo men de shè huì shè shì yǔn men zài jiào gāo de chōu xiàng céng shàng jìn xíng shè shì huì biǎo men tóng shì zhī jiān jiù tǎo lùn shì bìng zài biān xiě wén dàng shí shǐ yòng men shì míng bāng zhù men kǎobiàn men rén jiāo liú shè xiǎng shè jiēguǒzhǎo dào qiàdàng de shì míng shì men shè shì biān gōng zuò de nán diǎn zhī
  2. wèn (problem)
   miáo shù liǎo yīnggāi zài shí shǐ yòng shì jiě shì liǎo shè wèn wèn cún zài de qián yīn hòu guǒ néng miáo shù liǎo dìng de shè wèn zěn yàng yòng duì xiàng biǎo shì suàn děng néng miáo shù liǎo dǎo zhì líng huó shè de lèi huò duì xiàng jié gòuyòu shí hòuwèn fēn huì bāo kuò shǐ yòng shì mǎn de liè xiān jué tiáo jiàn
  3. jiě jué fāng 'àn (solution)
   miáo shù liǎo shè de chéng chéngfèn men zhī jiān de xiāng guān de zhí xié zuò fāng shìyīn wéi shì jiù xiàng múbǎn yìng yòng duō zhǒng tóng chǎng suǒ jiě jué fāng 'àn bìng miáo shù dìng 'ér de shè huò shí xiànér shì gōng shè wèn de chōu xiàng miáo shù zěn yàng yòng yòu bān de yuán lèi huò duì xiàng lái jiě jué zhè wèn
  4. xiào guǒ (consequences)
   miáo shù liǎo shì yìng yòng de xiào guǒ shǐ yòng shì yìng quán héng de wèn jìn guǎn men miáo shù shè jué shíbìng zǒng dào shì xiào guǒdàn men duì píng jià shè xuǎn jiě shǐ yòng shì de dài jià hǎo chù yòu zhòng yào ruǎn jiàn xiào guǒ duō guān zhù duì shí jiān kōng jiān de héng liàng men biǎo shù liǎo yán shí xiàn wèn yīn wéi yòng shì miàn xiàng duì xiàng shè de yào zhī suǒ shì xiào guǒ bāo kuò duì tǒng de líng huó xìngkuò chōng xìng huò zhí xìng de yǐng xiǎngxiǎn shì liè chū zhè xiē xiào guǒ duì jiě píng jià zhè xiē shì hěn yòu bāng zhù
   zhǒng shè shì de zuò yòng
   wài guān( facade): wèile tǒng zhōng de gōng néng diào yòng gōng zhì de jiē kǒuzhè jiē kǒu shǐ zhè tǒng gèng jiā róng shǐ yòng
   zhuāng shì( decorate): dāng néng cǎi yòng shēng chéng lèi de fāng jìn xíng kuò chōng shídòng tài gěi duì xiàng tiān jiā xiē 'é wài de gōng néng
   dān jiàn( singleton): bǎo zhèng lèi jǐn yòu shí bìng gōng fǎng wèn de quán fǎng wèn diǎn
   múbǎn fāng ( templatemethod): zài fāng zhōng dìng suàn de kuàng jiàér jiāng suàn zhōng de xiē cāo zuò zhòu yán chí dào lèi zhōng shí xiàn
   shì( pattern) jiù shì zuò shì de zhǒng fāng shí xiàn mǒu biāo de jìnghuò zhě shùzhè zhǒng huò yòu xiào shù de xiǎng yìng yòng dào duō lǐng dāng zhōng pēng rènshēng chǎn yàn huǒ zhì pǐnkāi ruǎn jiàn xiē hángyèduì rèn zhèng mài xiàng chéng shú de hángyèrén men zǒng huì kāi shǐ xún zhǎo xiē tōng yòng yòu xiào de fāng lái dào biāo bìng jiě jué tóng chǎng zhōng de wèn yóu mǒu hángyè de cóng rén yuán chéng de shè tōng cháng huì míng xiē zhuān shù biàn tóng xíng zhī jiànjìn xíng jiāo liúzhè zhōng de mǒu xiē zhuān shù jiāng chēng wéi shì shí xiàn dìng biāo de gōng rèn shùsuí zhe mǒu hángyè zhuān shù de zhǎn xiē zuò zhě biàn kāi shǐ dào zhòng yào de zuò yòng men jiāng mǒu hángyè de shì guī dàngcānyù biāo zhǔn huà zhuān shù bìng qiě gōng kāi chuán zhè xiē yòu xiào de shù
  christopheralexander shì zuì zǎo jiāng mǒu hángyè de zuì jiā shí jiàn wéi shì de zuò zhě zhī yán jiū de lǐng shì jiàn zhùér shì ruǎn jiànde jià gòu zhù zuò apatternlanguage:towns,buildings,construction[alexander、 ishikouwa silverstein, 1977] jiè shào liǎo chéng gōng shè fáng chéng zhèn de shìgāi zhù zuò yǐng xiǎng shēn yuǎnshèn zhì yǐng xiǎng dào ruǎn jiàn kāi hángyègāi shū zhī suǒ néng gòu yǐng xiǎng hángyè fēn yuán yīn shì yīn wéi gěi chū liǎo zhǒng de guān chá biāo de fāng shì
   yòu rén néng huì rèn wéiyìng yòng jiàn zhù shì de biāo jiù shìshè jiàn zhù ”。 dàn shì alexander zài shū zhōng míng què zhǐ chū jiàn zhù shì de de shì jiàn zhù chéng zhèn de zhù rénbìng ràng men gǎn dào mǎn gāi shū zhǐ chū shì shì huò jiāo liú hángyè zhī shí de jué jiā jìnglìng wàishū zhōng hái dào rèn shí bìng mǒu xiàng gōng zuò de biāo fēi cháng guān jiàn yào zhé xué guān cóng zhěng kǎo bìng néng miàn lín nán zhuō de tiǎo zhàn
   shì fāng yǐn liǎo ruǎn jiàn shè de gòng míng duō ruǎn jiàn kāi shì de shū jīng xiāng chū bǎnzhè xiē shū zhōng liǎo ruǎn jiàn guò chéngruǎn jiàn fēn gāo céng ruǎn jiàn jià gòu lèi céng shè de zuì jiā shí jiànměi nián dōuyòu zhè fāng miàn de xīn shū miàn shì guǒ yào xuǎn běn yòu guān shì de shū me yīnggāi xiān huā xiē shí jiān liú lǎn xià duì chū bǎn de zhè fāng miàn shū de shū píngrán hòu zài xuǎn běn néng gòu zuì chéng bāng zhù de shū
dìng
   shè shì ( Designpattern) shì tào bèi fǎn shǐ yòngduō shù rén zhī xiǎo dejīng guòfèn lèi biān mùdìdài shè jīng yàn de zǒng jiéshǐ yòng shè shì shì wéi liǎo zhòng yòng dài ràng dài gèng róng bèi rén jiěbǎo zhèng dài kào xìng
   háo wèn shè shì rén tǒng dōushì duō yíng de shè shì shǐ dài biān zhì zhēn zhèng gōng chéng huà shè shì shì ruǎn jiàn gōng chéng de shí tóng shà de kuài kuài zhuān shí yàng
  GoF(“ rén bāng”, zhǐ Gamma,Helm,Johnson&Vlissides,Addison-Wesley rénde shè shì 》( 1995 nián chū bǎnshì jiāng shè shì shēng dào lùn gāo bìng jiāng zhī guī fàn huàběn shū chū liǎo 23 zhǒng běn shè shì zài yòng miàn xiàng duì xiàng ruǎn jiàn de zhǎn guò chéng zhōngxīn de liàng de shè shì duàn chū xiàn
shè shì kuàng jià
  xiàn zài yòng miàn xiàng duì xiàng ruǎn jiàn tǒng xiàn zài bān huàfēn wéi sān lèiyìng yòng chéng gōng xiāng kuàng jià (Framework), men píng shí kāi de ruǎn jiàn dōushì yìng yòng chéng ; Java de API shǔ gōng xiāng ; ér kuàng jià shì gòu chéng lèi dìng ruǎn jiàn yòng shè de xiāng xié zuò de lèi。 EJB( EnterpriseJavaBeans) shì Java yìng yòng suàn de kuàng jià .
   kuàng jià tōng cháng dìng liǎo yìng yòng de zhěng jié gòu lèi duì xiàng de guān děng děng shè cān shù biàn yìng yòng shí xiàn zhě néng zhōng jīng yìng yòng běn shēn de dìng jiékuàng jià zhù yào ruǎn jiàn yìng yòng zhōng gòng tóng de shè jué kuàng jià qiáng diào shè yòngyīn kuàng jià shè zhōng rán yào shǐ yòng shè shì .
   lìng wài shè shì yòu zhù duì kuàng jià jié gòu de jiěchéng shú de kuàng jià tōng cháng shǐ yòng liǎo duō zhǒng shè shì , guǒ shú zhè xiē shè shìháo wèn jiāng xùn zhǎng kuàng jià de jié gòu men bān kāi zhě guǒ rán jiē chù EJBJ2EE děng kuàng jiàhuì jué bié nán xuénán zhǎng me zhuǎn 'ér xiān zhǎng shè shì shì gěi liǎo pōu EJB huò J2EE tǒng de
shè shì de yuán
  jìn nián lái jiādōu kāi shǐ zhù shè shì medào men wèishénme yào yòng shè shì zhè me duō shè shì wèishénme yào zhè me shè shuō shí huà qián hái zhēn méi gǎo qīng chǔjiù shì kàn jiā kǒu "Designpattern", xīn jiù yòu diǎn shì jiù mǎi liǎo běn " rén bāng " de shè shìjiēguǒ kàn dǒng fēi dǒng : kàn shí hòu hǎo xiàng shì dǒng liǎoguò huì jiù wàng liǎo néng shì běn rén jiào " dùn " :)) zuì jìnyòu liǎo diǎn gǎn 。 " zhòng ", jiā fēn xiǎng xiàhái wàng zhǐ jiào !
   wèishénme yào chàng "DesignPattern" gēn běn yuán yīn shì wèile dài yòngzēng jiā wéi xìng me zěn me cái néng shí xiàn dài yòng ? OO jiè yòu qián bèi de yuán : " kāi " yuán (OpenClosedPrincipal)、 shì dài huàn yuán chéng yòng yuán shè shì jiù shì shí xiàn liǎo zhè xiē yuán cóng 'ér dào liǎo dài yòngzēng jiā wéi xìng de mùdì
  1、 " kāi " yuán
   yuán shì yóu "BertrandMeyer" chū deyuán wén shì: "Softwareentitiesshouldbeopenforextension,butclosedformodification"。 jiù shì shuō kuài yìng duì kuò zhǎn kāi fàngér duì xiū gǎi guān kuài yìng jìn liàng zài xiū gǎi yuán ( shì " yuán ", zhǐ yuán lái de dài ) dài de qíng kuàng xià jìn xíng kuò zhǎn me zěn me kuò zhǎn men kàn gōng chǎng shì "factorypattern": jiǎ shè zhōng guān cūn yòu mài dào bǎn pán máo piàn de xiǎo men gěi shè " guāng pán xiāo shòu guǎn ruǎn jiàn "。 men yīnggāi xiān shè " guāng pán " jiē kǒu
  [pre]______________
  |<>|
  | guāng pán |
  |_____________|
  |+ mài ()|
  ||
  |_____________|[/pre]
   ér dào bǎn pán máo piàn shì lèixiǎo tōng guò "DiscFactory" lái guǎn zhè xiē guāng pándài wéi
  publicclassDiscFactory{
  publicstatic guāng pán getDisc(java/lang/String.java.html"Stringname){
  return( guāng pán )java/lang/Class.java.html"Class.forName(name).getInstance();
  }
  }
   yòu rén yào mǎi dào bǎn pánzěn me shí xiàn
  publicclass xiǎo {
  publicstaticvoidmain(java/lang/String.java.html"String[]args){
   guāng pán d=DiscFactory.getDisc(" dào bǎn pán ");
   guāng pán . mài ();
  }
  }
   guǒ yòu tiānzhè xiǎo liáng xīn xiàn liǎokāi shǐ mài zhèng bǎn ruǎn jiànméi guān men zhǐ yào zài chuàng jiàn " guāng pán " de lèi " zhèng bǎn ruǎn jiàn " jiù liǎo yào xiū gǎi yuán jié gòu dài zěn me yàngduì kuò zhǎn kāi duì xiū gǎi guān 。 " kāi - yuán "
   gōng chǎng shì shì duì chǎn pǐn jìn xíng kuò zhǎnyòu de xiàng néng yào gèng duō de kuò zhǎn xìngyào duì zhè " gōng chǎng " jìn xíng kuò zhǎn jiù chéng liǎo " chōu xiàng gōng chǎng shì "。
  2、 shì dài huàn yuán
   shì dài huàn yuán shì yóu "BarbaraLiskov" chū de guǒ diào yòng de shì lèi de huà me huàn chéng lèi wán quán yùn xíng
   guāng pán d=new dào bǎn pán ();
  d. mài ();
   xiàn zài yào jiāng " dào bǎn pán " lèi gǎi wéi " máo piàn " lèiméi wèn wán quán yùn xíng。 Java biān chéng huì jiǎn chá chéng shì fǒu shì dài huàn yuán hái java chéng de yuán lèi override fāng de fǎng wèn quán xiàn néng xiǎo lèi duì yìng fāng de fǎng wèn quán xiàn " guāng pán " zhōng de fāng " mài " fǎng wèn quán xiàn shì "public", me " dào bǎn pán " " máo piàn " zhōng de " mài " fāng jiù néng shì protected huò private, biān néng tōng guòwèishénme yào zhè yàng xiǎng 'ā guǒ " dào bǎn pán " de " mài " fāng shì private。 me xià miàn zhè duàn dài jiù néng zhí xíng liǎo
   guāng pán d=new dào bǎn pán ();
  d. mài ();
   shuō shì dài huàn yuán shì chéng yòng de chǔ
  3、 chéng yòng yuán
   jiù shì shuō yào shǎo yòng chéngduō yòng chéng guān lái shí xiàn céng jīng zhè yàng xiě guò chéng yòu lèi yào shù jiāo dàojiù xiě liǎo shù cāo zuò de lèirán hòu bié de gēn shù jiāo dào de lèi chéng zhè jiēguǒ hòu lái xiū gǎi liǎo shù cāo zuò lèi de fāng lèi yào gǎi dòng。 " qiān 'ér dòng quán shēn "! miàn xiàng duì xiàng shì yào dòng xiàn zhì zài jìn liàng xiǎo de fàn wéi
   zài Java zhōngyìng jìn liàng zhēn duì Interface biān chéngér fēi shí xiàn lèizhè yànggēnghuàn lèi huì yǐng xiǎng diào yòng fāng de dài yào ràng lèi jìn néng shǎo de gēn bié rén lián , " yào shēng rén shuō huà "。 zhè yàngchéng mén shī huǒcái zhì yāng chí kuò zhǎn xìng wéi xìng cái néng gāo
   jiě liǎo zhè xiē yuán zài kàn shè shìzhǐ shì zài wèn shàng zěn me shí xiàn zhè xiē yuán 'ér zhāng xué tài quánwàng liǎo suǒ yòu zhāo shì dǎo liǎo " xuán 'èr lǎo ", suǒ wèi " xīn zhōng zhāo "。 shè shì wèi zhāo shù guǒ xiān xué tōng liǎo zhǒng shìyòu wàng diào liǎo suǒ yòu shì 'ér suí xīn suǒ wèi OO zhī zuì gāo jìng jiè gǎo xiàogǎo xiào!( JR)
  4 lài dàozhuǎn yuán
   chōu xiàng yìng gāi lài jié jié yīngdāng lài chōu xiàng
   yào zhēn duì jiē kǒu biān chéngér shì zhēn duì shí xiàn biān chéng
   chuán cān shùhuò zhě zài guān zhōngjìn liàng yǐn yòng céng gāo de lèi
   zhù yào shì zài gòu zào duì xiàng shí dòng tài de chuàng jiàn zhǒng duì xiàngdāng rán guǒ xiē lèi jiào wěn dìngjiù zài nòng chōu xiàng lèi zuò de lèizhè yàng yòu huà shé tiān de gǎn jué
  5 jiē kǒu yuán
   dìng zhì de měi jiē kǒu yīnggāi shì zhǒng juésè duō shǎo gān gāi gān de shìgāi gān de shìdōu yào gān
  6 chōu xiàng lèi
   chōu xiàng lèi huì yòu shí bān zuò wéi lèi wéi lèi chéng bān bāo hán zhè de gòng tóng shǔ xìng fāng
   zhù hǎo de chéng guān zhōngzhǐ yòu jié diǎn shì lèi jié diǎn yīnggāi dōushì chōu xiàng lèi jiù shì shuō lèi
   shì bèi chéng dejiāng jìn néng duō de gòng tóng dài fàng dào chōu xiàng lèi zhōng
  7
   zuì shǎo zhī shí yuán yào shēng rén shuō huà
shì de běn yào
   shè shì shǐ rén men gèng jiā jiǎn dān fāng biàn yòng chéng gōng de shè jié gòujiāng zhèng shí de shù biǎo shù chéng shè shì huì shǐ xīn tǒng kāi zhě gèng jiā róng jiě shè
  1. shì míng chēng( patternname)
   zhù míng yòng liǎng lái miáo shù shì de wèn jiě jué fāng 'àn xiào guǒmìng míng xīn de shì zēng jiā liǎo men de shè huì shè shì yǔn men zài jiào gāo de chōu xiàng céng shàng jìn xíng shè shì huì biǎo men tóng shì zhī jiān jiù tǎo lùn shì bìng zài biān xiě wén dàng shí shǐ yòng men shì míng bāng zhù men kǎobiàn men rén jiāo liú shè xiǎng shè jiēguǒzhǎo dào qiàdàng de shì míng shì men shè shì biān gōng zuò de nán diǎn zhī
  2. wèn (problem)
   miáo shù liǎo yīnggāi zài shí shǐ yòng shì jiě shì liǎo shè wèn wèn cún zài de qián yīn hòu guǒ néng miáo shù liǎo dìng de shè wèn zěn yàng yòng duì xiàng biǎo shì suàn děng néng miáo shù liǎo dǎo zhì líng huó shè de lèi huò duì xiàng jié gòuyòu shí hòuwèn fēn huì bāo kuò shǐ yòng shì mǎn de liè xiān jué tiáo jiàn
  3. jiě jué fāng 'àn (solution)
   miáo shù liǎo shè de chéng chéngfèn men zhī jiān de xiāng guān de zhí xié zuò fāng shìyīn wéi shì jiù xiàng múbǎn yìng yòng duō zhǒng tóng chǎng suǒ jiě jué fāng 'àn bìng miáo shù dìng 'ér de shè huò shí xiànér shì gōng shè wèn de chōu xiàng miáo shù zěn yàng yòng yòu bān de yuán lèi huò duì xiàng lái jiě jué zhè wèn
  4. xiào guǒ (consequences)
   miáo shù liǎo shì yìng yòng de xiào guǒ shǐ yòng shì yìng quán héng de wèn jìn guǎn men miáo shù shè jué shíbìng zǒng dào shì xiào guǒdàn men duì píng jià shè xuǎn jiě shǐ yòng shì de dài jià hǎo chù yòu zhòng yào ruǎn jiàn xiào guǒ duō guān zhù duì shí jiān kōng jiān de héng liàng men biǎo shù liǎo yán shí xiàn wèn yīn wéi yòng shì miàn xiàng duì xiàng shè de yào zhī suǒ shì xiào guǒ bāo kuò duì tǒng de líng huó xìngkuò chōng xìng huò zhí xìng de yǐng xiǎngxiǎn shì liè chū zhè xiē xiào guǒ duì jiě píng jià zhè xiē shì hěn yòu bāng zhù
xiē běn de shè shì
  Abstract Factory: gōng chuàng jiàn liè xiāng guān huò xiāng lài duì xiàng de jiē kǒuér zhǐ dìng men de lèi
  Adapter: jiāng lèi de jiē kǒu zhuǎn huàn chéng wàng de lìng wài jiē kǒu。 Adapter shì shǐ yuán běn yóu jiē kǒu jiān róng 'ér néng gōng zuò de xiē lèi gōng zuò
  Bridge: jiāng chōu xiàng fēn de shí xiàn fēn fēn shǐ mendōu biàn huà
  Builder: jiāng duì xiàng de gòu jiàn de biǎo shì fēn shǐ tóng yàng de gòu jiàn guò chéng chuàng jiàn tóng de biǎo shì
  ChainofResponsibility: wéi jiě chú qǐng qiú de sòng zhě jiē shōu zhě zhī jiān 'ǒu ér shǐ duō duì xiàng dōuyòu huì chǔlǐ zhè qǐng qiújiāng zhè xiē duì xiàng lián chéng tiáo liànbìng yán zhe zhè tiáo liàn chuán gāi qǐng qiúzhí dào yòu duì xiàng chǔlǐ
  Command: jiāng qǐng qiú fēng zhuāng wéi duì xiàngcóng 'ér shǐ yòng tóng de qǐng qiú duì jìn xíng cān shù huàduì qǐng qiú pái duì huò qǐng qiú zhì zhī chí xiāo de cāo zuò
  Composite: jiāng duì xiàng chéng shù xíng jié gòu biǎo shì fēn - zhěng de céng jié gòu shǐ duì dān duì xiàng duì xiàng de shǐ yòng yòu zhì xìng
  Decorator: dòng tài gěi duì xiàng tiān jiā xiē 'é wài de zhí jiù kuò zhǎn gōng néng 'ér yán shēng chéng lèi fāng shì gèng wéi líng huó
  Facade: wéi tǒng zhōng de jiē kǒu gōng zhì de jiè miàn, Facade shì dìng liǎo gāo céng jiē kǒuzhè jiē kǒu shǐ zhè tǒng gèng jiā róng shǐ yòng
  FactoryMethod: dìng yòng chuàng jiàn duì xiàng de jiē kǒuràng lèi jué dìng jiāng lèi shí huà。 FactoryMethod shǐ lèi de shí huà yán chí dào lèi
  Flyweight: yùn yòng gòng xiǎng shù yòu xiào zhī chí liàng de duì xiàng
  Interpreter: gěi dìng yán , dìng de wén de zhǒng biǎo shìbìng dìng jiě shì , gāi jiě shì shǐ yòng gāi biǎo shì lái jiě shì yán zhōng de
  Iterator: gōng zhǒng fāng shùn fǎng wèn duì xiàng zhōng yuán , ér yòu bào gāi duì xiàng de nèi biǎo shì
  Mediator: yòng zhōng jiè duì xiàng lái fēng zhuāng liè de duì xiàng jiāo zhōng jiè zhě shǐ duì xiàng yào xiǎn shì xiāng yǐn yòngcóng 'ér shǐ 'ǒu sōng sànér qiě gǎi biàn men zhī jiān de jiāo
  Memento: zài huài fēng zhuāng xìng de qián xià huò duì xiàng de nèi zhuàng tàibìng zài gāi duì xiàng zhī wài bǎo cún zhè zhuàng tàizhè yàng hòu jiù jiāng gāi duì xiàng huī dào bǎo cún de zhuàng tài
  Observer: dìng duì xiàng jiān de zhǒng duì duō de lài guān , biàn dāng duì xiàng de zhuàng tài shēng gǎi biàn shí , suǒ yòu lài de duì xiàng dào tōng zhī bìng dòng shuà xīn
  Prototype: yòng yuán xíng shí zhǐ dìng chuàng jiàn duì xiàng de zhǒng lèibìng qiě tōng guò kǎo bèi zhè yuán xíng lái chuàng jiàn xīn de duì xiàng
  Proxy: wéi duì xiàng gōng dài kòng zhì duì zhè duì xiàng de fǎng wèn
  Singleton: bǎo zhèng lèi jǐn yòu shí bìng gōng fǎng wèn de quán fǎng wèn diǎn
  State: yǔn duì xiàng zài nèi zhuàng tài gǎi biàn shí gǎi biàn de xíng wéiduì xiàng kàn lái xiū gǎi liǎo suǒ shǔ de lèi
  Strategy: dìng liè de suàn , men fēng zhuāng lái , bìng qiě shǐ men xiāng huànběn shì shǐ suàn de biàn huà shǐ yòng de
  TemplateMethod: dìng cāo zuò zhōng de suàn de jiàér jiāng xiē zhòu yán chí dào lèi zhōng。 TemplateMethod shǐ lèi gǎi biàn suàn de jié gòu zhòng dìng gāi suàn de mǒu xiē dìng zhòu
  Visitor: biǎo shì zuò yòng mǒu duì xiàng jié gòu zhōng de yuán de cāo zuò shǐ zài gǎi biàn yuán de lèi de qián xià dìng zuò yòng zhè xiē yuán de xīn cāo zuò
   chuàng jiàn xíng jié gòu xíng xíng wéi xíng
   lèi FactoryMethodAdapter_ClassInterpreter
  TemplateMethod
   duì xiàng AbstractFactory
  Builder
  Prototype
  SingletonAdapter_Object
  Bridge
  Composite
  Decorator
  Facade
  Flyweight
  ProxyChainofResponsibility
  Command
  Iterator
  Mediator
  Memento
  Observer
  State
  Strategy
  Visitor
   gài lǎn
   míng chēng FactoryMethod
   jié gòu
   dìng yòng chuàng jiàn duì xiàng de jiē kǒuràng lèi jué dìng shí huà lèi。 FactoryMethod shǐ lèi de shí huà yán chí dào lèi
   shì yòng xìng dāng lèi zhī dào suǒ chuàng jiàn de duì xiàng de lèi de shí hòu
   dāng lèi wàng yóu de lèi lái zhǐ dìng suǒ chuàng jiàn de duì xiàng de shí hòu
   dāng lèi jiāng chuàng jiàn duì xiàng de zhí wěi tuō gěi duō bāng zhù lèi zhōng de mǒu bìng qiě wàng jiāng bāng zhù lèi shì dài zhě zhè xìn huà de shí hòu
   míng chēng AbstractFactory
   jié gòu
   gōng chuàng jiàn liè xiāng guān huò xiāng lài duì xiàng de jiē kǒuér zhǐ dìng men de lèi
   shì yòng xìng tǒng yào de chǎn pǐn de chuàng jiàn biǎo shì shí
   tǒng yào yóu duō chǎn pǐn liè zhōng de lái pèi zhì shí
   dāng yào qiáng diào liè xiāng guān de chǎn pǐn duì xiàng de shè biàn jìn xíng lián shǐ yòng shí
   dāng gōng chǎn pǐn lèi ér zhǐ xiǎng xiǎn shì men de jiē kǒu 'ér shì shí xiàn shí
   míng chēng Builder
   jié gòu
   jiāng duì xiàng de gòu jiàn de biǎo shì fēn shǐ tóng yàng de gòu jiàn guò chéng chuàng jiàn tóng de biǎo shì
   shì yòng xìng dāng chuàng jiàn duì xiàng de suàn yīnggāi gāi duì xiàng de chéng fēn men de zhuāng pèi fāng shì shí
   dāng gòu zào guò chéng yǔn bèi gòu zào de duì xiàng yòu tóng de biǎo shì shí
   míng chēng Prototype
   jié gòu
   yòng yuán xíng shí zhǐ dìng chuàng jiàn duì xiàng de zhǒng lèibìng qiě tōng guò kǎo bèi zhè xiē yuán xíng chuàng jiàn xīn de duì xiàng
   shì yòng xìng dāng yào shí huà de lèi shì zài yùn xíng shí zhǐ dìng shí tōng guò dòng tài zhuāng zàihuò zhě
   wèile miǎn chuàng jiàn chǎn pǐn lèi céng píng xíng de gōng chǎng lèi céng shíhuò zhě
   dāng lèi de shí zhǐ néng yòu tóng zhuàng tài zhōng de zhǒng shíjiàn xiāng yìng shù mùdì yuán xíng bìng lóng men néng měi yòng shì de zhuàng tài shǒu gōng shí huà gāi lèi gèng fāng biàn xiē
   míng chēng Singleton
   jié gòu
   bǎo zhèng lèi jǐn yòu shí bìng gōng fǎng wèn de quán fǎng wèn diǎn
   shì yòng xìng dāng lèi zhǐ néng yòu shí 'ér qiě cóng zhòng suǒ zhōu zhī de fǎng wèn diǎn fǎng wèn shí
   dāng zhè wéi shí yīnggāi shì tōng guò lèi huà kuò zhǎn debìng qiě yīnggāi gēnggǎi dài jiù néng shǐ yòng kuò zhǎn de shí shí
   míng chēng Adapter
   jié gòu
   jiāng lèi de jiē kǒu zhuǎn huàn chéng wàng de lìng wài jiē kǒu。 Adapter shì shǐ yuán běn yóu jiē kǒu jiān róng 'ér néng gōng zuò de xiē lèi gōng zuò
   shì yòng xìng xiǎng shǐ yòng jīng cún zài de lèiér de jiē kǒu de qiú
   xiǎng chuàng jiàn yòng de lèigāi lèi xiāng guān de lèi huò jiàn de lèi xiē jiē kǒu néng dìng jiān róng de lèixié tóng gōng zuò
  ( jǐn shì yòng duì xiàng Adapter) xiǎng shǐ yòng xiē jīng cún zài de lèidàn shì néng duì měi gèdōu jìn xíng lèi huà pèi men de jiē kǒuduì xiàng shì pèi shì pèi de lèi jiē kǒu
   míng chēng Bridge
   jié gòu
   jiāng chōu xiàng fēn de shí xiàn fēn fēn shǐ mendōu biàn huà
   shì yòng xìng wàng zài chōu xiàng de shí xiàn fēn zhī jiān yòu dìng de bǎng dìng guān zhè zhǒng qíng kuàng néng shì yīn wéizài chéng yùn xíng shí shí xiàn fēn yìng bèi xuǎn huò zhě qiē huàn
   lèi de chōu xiàng de shí xiàn yīnggāi tōng guò shēng chéng lèi de fāng jiā kuò chōngzhè shí Bridge shì shǐ duì tóng de chōu xiàng jiē kǒu shí xiàn fēn jìn xíng bìng fēn bié duì men jìn xíng kuò chōng
   duì chōu xiàng de shí xiàn fēn de xiū gǎi yìng duì chǎn shēng yǐng xiǎng de dài chóngxīn biān
  ( C++) xiǎng duì wán quán yǐn cáng chōu xiàng de shí xiàn fēnzài C++ zhōnglèi de biǎo shì zài lèi jiē kǒu zhōng shì jiàn de
   yòu duō lèi yào shēng chéngzhè yàng zhǒng lèi céng jié gòu shuō míng jiāng duì xiàng fēn jiě chéng liǎng fēn。 Rumbaugh chēng zhè zhǒng lèi céng jié gòu wéiqiàn tào de huà”( nestedgeneralizations)。
   xiǎng zài duō duì xiàng jiān gòng xiǎng shí xiàn néng shǐ yòng yǐn yòng shù), dàn tóng shí yào qiú bìng zhī dào zhè diǎn jiǎn dān de biàn shì Coplien de String lèi [Cop92], zài zhè lèi zhōng duō duì xiàng gòng xiǎng tóng chuàn biǎo shì( StringRep)。
   míng chēng Composite
   jié gòu
   jiāng duì xiàng chéng shù xíng jié gòu biǎo shì fēn - zhěng de céng jié gòu。 Composite shǐ yòng duì dān duì xiàng duì xiàng de shǐ yòng yòu zhì xìng
   shì yòng xìng xiǎng biǎo shì duì xiàng de fēn - zhěng céng jié gòu
   wàng yòng lüè duì xiàng dān duì xiàng de tóngyòng jiāng tǒng shǐ yòng jié gòu zhōng de suǒ yòu duì xiàng
   míng chēng Decorator
   jié gòu
   dòng tài gěi duì xiàng tiān jiā xiē 'é wài de zhí jiù zēng jiā gōng néng lái shuō, Decorator shì xiāng shēng chéng lèi gèng wéi líng huó
   shì yòng xìng zài yǐng xiǎng duì xiàng de qíng kuàng xià dòng tàitòu míng de fāng shì gěi dān duì xiàng tiān jiā zhí
   chǔlǐ xiē chè xiāo de zhí
   dāng néng cǎi yòng shēng chéng lèi de fāng jìn xíng kuò chōng shí zhǒng qíng kuàng shì néng yòu liàng de kuò zhǎnwéi zhī chí měi zhǒng jiāng chǎn shēng liàng de lèishǐ lèi shù chéng bào zhà xìng zēngzhǎnglìng zhǒng qíng kuàng néng shì yīn wéi lèi dìng bèi yǐn cánghuò lèi dìng néng yòng shēng chéng lèi
   míng chēng Facade
   jié gòu
   wéi tǒng zhōng de jiē kǒu gōng zhì de jiè miàn, Facade shì dìng liǎo gāo céng jiē kǒuzhè jiē kǒu shǐ zhè tǒng gèng jiā róng shǐ yòng
   shì yòng xìng dāng yào wéi tǒng gōng jiǎn dān jiē kǒu shí tǒng wǎng wǎng yīn wéi duàn yǎn huà 'ér biàn yuè lái yuè duō shù shì shǐ yòng shí huì chǎn shēng gèng duō gèng xiǎo de lèizhè shǐ tǒng gèng zhòng yòng xìng gèng róng duì tǒng jìn xíng dìng zhìdàn zhè gěi xiē yào dìng zhì tǒng de yòng dài lái xiē shǐ yòng shàng de kùn nán。 Facade gōng jiǎn dān de quē shěng shì zhè shì duì duō shù yòng lái shuō jīng gòuér xiē yào gèng duō de dìng zhì xìng de yòng yuè guò facade céng
   chéng chōu xiàng lèi de shí xiàn fēn zhī jiān cún zài zhe hěn de lài xìngyǐn facade jiāng zhè tǒng de tǒng fēn gāo tǒng de xìng zhí xìng
   dāng yào gòu jiàn céng jié gòu de tǒng shíshǐ yòng facade shì dìng tǒng zhōng měi céng de kǒu diǎn guǒ tǒng zhī jiān shì xiāng lài de ràng men jǐn tōng guò facade jìn xíng tōng xùncóng 'ér jiǎn huà liǎo men zhī jiān de lài guān
   míng chēng Flyweight
   jié gòu
   yùn yòng gòng xiǎng shù yòu xiào zhī chí liàng de duì xiàng
   shì yòng xìng yìng yòng chéng shǐ yòng liǎo liàng de duì xiàng
   wán quán yóu shǐ yòng liàng de duì xiàngzào chéng hěn de cún chǔ kāi xiāo
   duì xiàng de duō shù zhuàng tài dōukě biàn wéi wài zhuàng tài
   guǒ shān chú duì xiàng de wài zhuàng tài me yòng xiāng duì jiào shǎo de gòng xiǎng duì xiàng dài hěn duō duì xiàng
   yìng yòng chéng lài duì xiàng biāozhìyóu Flyweight duì xiàng bèi gòng xiǎngduì gài niàn shàng míng xiǎn yòu bié de duì xiàngbiāozhì shì jiāng fǎn huí zhēn zhí
   míng chēng Proxy
   jié gòu
   wéi duì xiàng gōng zhǒng dài kòng zhì duì zhè duì xiàng de fǎng wèn
   shì yòng xìng zài yào yòng jiào tōng yòng de duì xiàng zhǐ zhēn dài jiǎn dān de zhǐ zhēn de shí hòushǐ yòng Proxy shìxià miàn shì xiē shǐ yòng Proxy shì cháng jiàn qíng kuàng
  1) yuǎn chéng dài ( RemoteProxy) wéi duì xiàng zài tóng de zhǐ kōng jiān gōng dài biǎo。 NEXTSTEP[Add94] shǐ yòng NXProxy lèi shí xiàn liǎo zhè mùdì。 Coplien[Cop92] chēng zhè zhǒng dài wéi shǐ”( Ambassador)。
  2) dài ( VirtualProxy) gēn yào chuàng jiàn kāi xiāo hěn de duì xiàngzài dòng jié miáo shù de ImageProxy jiù shì zhè yàng zhǒng dài de
  3) bǎo dài ( ProtectionProxy) kòng zhì duì yuán shǐ duì xiàng de fǎng wènbǎo dài yòng duì xiàng yīnggāi yòu tóng de fǎng wèn quán xiàn de shí hòu zài Choices cāo zuò tǒng [CIRM93] zhōng KemelProxies wéi cāo zuò tǒng duì xiàng gōng liǎo fǎng wèn bǎo
  4) zhì néng zhǐ yǐn( SmartReference) dài liǎo jiǎn dān de zhǐ zhēn zài fǎng wèn duì xiàng shí zhí xíng xiē jiā cāo zuò de diǎn xíng yòng bāo kuò
   duì zhǐ xiàng shí duì xiàng de yǐn yòng shùzhè yàng dāng gāi duì xiàng méi yòu yǐn yòng shí dòng shì fàng ( chēng wéi SmartPointers[Ede92])。
   dāng yǐn yòng chí jiǔ duì xiàng shíjiāng zhuāng nèi cún
   zài fǎng wèn shí duì xiàng qiánjiǎn chá shì fǒu jīng suǒ dìng liǎo què bǎo duì xiàng néng gǎi biàn
   míng chēng ChainofResponsibility
   jié gòu
   shǐ duō duì xiàng dōuyòu huì chǔlǐ qǐng qiúcóng 'ér miǎn qǐng qiú de sòng zhě jiē shōu zhě zhī jiān de 'ǒu guān jiāng zhè xiē duì xiàng lián chéng tiáo liànbìng yán zhe zhè tiáo liàn chuán gāi qǐng qiúzhí dào yòu duì xiàng chǔlǐ wéi zhǐ
   shì yòng xìng yòu duō de duì xiàng chǔlǐ qǐng qiú duì xiàng chǔlǐ gāi qǐng qiú yùn xíng shí dòng què dìng
   xiǎng zài míng què zhǐ dìng jiē shōu zhě de qíng kuàng xiàxiàng duō duì xiàng zhōng de jiāo qǐng qiú
   chǔlǐ qǐng qiú de duì xiàng yìng bèi dòng tài zhǐ dìng
   míng chēng Command
   jié gòu
   jiāng qǐng qiú fēng zhuāng wéi duì xiàngcóng 'ér shǐ yòng tóng de qǐng qiú duì jìn xíng cān shù huàduì qǐng qiú pái duì huò qǐng qiú zhì zhī chí chè xiāo de cāo zuò
   shì yòng xìng xiàng shàng miàn tǎo lùn de MenuItem duì xiàng yàngchōu xiàng chū dài zhí xíng de dòng zuò cān shù huà mǒu duì xiàng yòng guò chéng yán zhōng de huí diào( callback) hán shù biǎo zhè zhǒng cān shù huà zhìsuǒ wèi huí diào hán shù shì zhǐ hán shù xiān zài mǒu chù zhù ér jiāng zài shāo hòu mǒu yào de shí hòu bèi diào yòng。 Command shì shì huí diào zhì de miàn xiàng duì xiàng de dài pǐn
   zài tóng de shí zhǐ dìngpái liè zhí xíng qǐng qiú Command duì xiàng yòu chū shǐ qǐng qiú guān de shēng cún guǒ qǐng qiú de jiē shōu zhě yòng zhǒng zhǐ kōng jiān guān de fāng shì biǎo me jiù jiāng gāi qǐng qiú de mìng lìng duì xiàng chuán sòng gěi lìng tóng de jìn chéng bìng zài 'ér shí xiàn gāi qǐng qiú
   zhī chí xiāo cāo zuò。 Command de Excute cāo zuò zài shí shī cāo zuò qián jiāng zhuàng tài cún chǔ láizài xiāo cāo zuò shí zhè zhuàng tài yòng lái xiāo chú gāi cāo zuò de yǐng xiǎng。 Command jiē kǒu tiān jiā Unexecute cāo zuògāi cāo zuò xiāo shàng Execute diào yòng de xiào guǒzhí xíng de mìng lìng bèi cún chǔ zài shǐ liè biǎo zhōng tōng guò xiàng hòu xiàng qián biàn zhè liè biǎo bìng fēn bié diào yòng Unexecute Execute lái shí xiàn zhòng shù xiàn de xiāozhòng zuò”。
   zhī chí xiū gǎi zhìzhè yàng dāng tǒng bēng kuì shízhè xiē xiū gǎi bèi zhòng zuò biànzài Command jiē kǒu zhōng tiān jiā zhuāng zài cāo zuò cún chǔ cāo zuò yòng lái bǎo chí biàn dòng de zhì de xiū gǎi zhìcóng bēng kuì zhōng huī de guò chéng bāo kuò cóng pán zhōng chóngxīn xià lái de mìng lìng bìng yòng Execute cāo zuò chóngxīn zhí xíng men
   yòng gòu jiàn zài yuán cāo zuò shàng de gāo céng cāo zuò gòu zào tǒngzhè yàng zhǒng jié gòu zài zhī chí shì (transaction) de xìn tǒng zhōng hěn cháng jiàn shì fēng zhuāng liǎo duì shù de biàn dòng。 Command shì gōng liǎo duì shì jìn xíng jiàn de fāng 。 Command yòu gōng gòng de jiē kǒushǐ yòng tóng zhǒng fāng shì diào yòng suǒ yòu de shì tóng shí shǐ yòng gāi shì tiān jiā xīn shì kuò zhǎn tǒng
   míng chēng Interpreter
   jié gòu
   gěi dìng yándìng de wén de zhǒng biǎo shìbìng dìng jiě shì zhè jiě shì shǐ yòng gāi biǎo shì lái jiě shì yán zhōng de
   shì yòng xìng dāng yòu yán yào jiě shì zhí xíng , bìng qiě jiāng gāi yán zhōng de biǎo shì wéi chōu xiàng shù shí shǐ yòng jiě shì shìér dāng cún zài xià qíng kuàng shí gāi shì xiào guǒ zuì hǎo
   gāi wén jiǎn dān duì de wén , wén de lèi céng biàn páng 'ér guǎn shí fēn chéng shēng chéng zhè yàng de gōng shì gèng hǎo de xuǎn men gòu jiàn chōu xiàng shù jiě shì biǎo shì , zhè yàng jié shěng kōng jiān 'ér qiě hái néng jié shěng shí jiān
   xiàolǜ shì guān jiàn wèn zuì gāo xiào de jiě shì tōng cháng shì tōng guò zhí jiē jiě shì fēn shù shí xiàn de , ér shì shǒu xiān jiāng men zhuǎn huàn chéng lìng zhǒng xíng shì zhèng biǎo shì tōng cháng bèi zhuǎn huàn chéng zhuàng tài dàn shǐ zài zhè zhǒng qíng kuàng xià , zhuǎn huàn réng yòng jiě shì shì shí xiàn , gāi shì réng shì yòu yòng de
   míng chēng Iterator
   jié gòu
   gōng zhǒng fāng shùn fǎng wèn duì xiàng zhōng yuán , ér yòu bào gāi duì xiàng de nèi biǎo shì
   shì yòng xìng fǎng wèn duì xiàng de nèi róng 'ér bào de nèi biǎo shì
   zhī chí duì duì xiàng de duō zhǒng biàn
   wéi biàn tóng de jié gòu gōng tǒng de jiē kǒu ( , zhī chí duō tài dié dài )。
   míng chēng Mediator
   jié gòu
   yòng zhōng jiè duì xiàng lái fēng zhuāng liè de duì xiàng jiāo zhōng jiè zhě shǐ duì xiàng yào xiǎn shì xiāng yǐn yòngcóng 'ér shǐ 'ǒu sōng sànér qiě gǎi biàn men zhī jiān de jiāo
   shì yòng xìng duì xiàng dìng liáng hǎo dàn shì de fāng shì jìn xíng tōng xìnchǎn shēng de xiāng lài guān jié gòu hùn luàn qiě nán jiě
   duì xiàng yǐn yòng hěn duō duì xiàng bìng qiě zhí jiē zhè xiē duì xiàng tōng xìn , dǎo zhì nán yòng gāi duì xiàng
   xiǎng dìng zhì fēn zài duō lèi zhōng de xíng wéiér yòu xiǎng shēng chéng tài duō de lèi
   míng chēng Memento
   jié gòu
   zài huài fēng zhuāng xìng de qián xià huò duì xiàng de nèi zhuàng tàibìng zài gāi duì xiàng zhī wài bǎo cún zhè zhuàng tàizhè yàng hòu jiù jiāng gāi duì xiàng huī dào yuán xiān bǎo cún de zhuàng tài
   shì yòng xìng bǎo cún duì xiàng zài mǒu shí de ( fēn ) zhuàng tài , zhè yàng hòu yào shí cái néng huī dào xiān qián de zhuàng tài
   guǒ yòng jiē kǒu lái ràng duì xiàng zhí jiē dào zhè xiē zhuàng tàijiāng huì bào duì xiàng de shí xiàn jié bìng huài duì xiàng de fēng zhuāng xìng
   míng chēng Observer
   jié gòu
   dìng duì xiàng jiān de zhǒng duì duō de lài guān , dāng duì xiàng de zhuàng tài shēng gǎi biàn shí , suǒ yòu lài de duì xiàng dào tōng zhī bìng bèi dòng gēngxīn
   shì yòng xìng dāng chōu xiàng xíng yòu liǎng fāng miàn , zhōng fāng miàn lài lìng fāng miànjiāng zhè 'èr zhě fēng zhuāng zài de duì xiàng zhōng shǐ men gǎi biàn yòng
   dāng duì duì xiàng de gǎi biàn yào tóng shí gǎi biàn duì xiàng , ér zhī dào yòu duō shǎo duì xiàng yòu dài gǎi biàn
   dāng duì xiàng tōng zhī duì xiàngér yòu néng jiǎ dìng duì xiàng shì shuíhuàn yán zhī , wàng zhè xiē duì xiàng shì jǐn 'ǒu de
   míng chēng State
   jié gòu
   yǔn duì xiàng zài nèi zhuàng tài gǎi biàn shí gǎi biàn de xíng wéiduì xiàng kàn lái xiū gǎi liǎo de lèi
   shì yòng xìng duì xiàng de xíng wéi jué de zhuàng tài , bìng qiě zài yùn xíng shí gēn zhuàng tài gǎi biàn de xíng wéi
   cāo zuò zhōng hán yòu páng de duō fēn zhī de tiáo jiàn qiě zhè xiē fēn zhī lài gāi duì xiàng de zhuàng tàizhè zhuàng tài tōng cháng yòng huò duō méi cháng liàng biǎo shìtōng cháng , yòu duō cāo zuò bāo hán zhè xiāng tóng de tiáo jiàn jié gòu。 State shì jiāng měi tiáo jiàn fēn zhī fàng de lèi zhōngzhè shǐ gēn duì xiàng shēn de qíng kuàng jiāng duì xiàng de zhuàng tài zuò wéi duì xiàngzhè duì xiàng lài duì xiàng 'ér biàn huà
   míng chēng Strategy
   jié gòu
   dìng liè de suàn , men fēng zhuāng lái , bìng qiě shǐ men xiāng huànběn shì shǐ suàn shǐ yòng de 'ér biàn huà
   shì yòng xìng duō xiāng guān de lèi jǐn jǐn shì xíng wéi yòu 。“ lüè gōng liǎo zhǒng yòng duō xíng wéi zhōng de xíng wéi lái pèi zhì lèi de fāng
   yào shǐ yòng suàn de tóng biàn néng huì dìng xiē fǎn yìng tóng de kōng jiān / shí jiān quán héng de suàn dāng zhè xiē biàn shí xiàn wéi suàn de lèi céng shí [HO87], shǐ yòng lüè shì
   suàn shǐ yòng yìng gāi zhī dào de shù shǐ yòng lüè shì miǎn bào de suàn xiāng guān de shù jié gòu
   lèi dìng liǎo duō zhǒng xíng wéi , bìng qiě zhè xiē xíng wéi zài zhè lèi de cāo zuò zhōng duō tiáo jiàn de xíng shì chū xiànjiàngxiàng guān de tiáo jiàn fēn zhī men de Strategy lèi zhōng dài zhè xiē tiáo jiàn
   míng chēng TemplateMethod
   jié gòu
   dìng cāo zuò zhōng de suàn de jiàér jiāng xiē zhòu yán chí dào lèi zhōng。 TemplateMethod shǐ lèi gǎi biàn suàn de jié gòu zhòng dìng gāi suàn de mǒu xiē dìng zhòu
   shì yòng xìng xìng shí xiàn suàn de biàn de fēnbìng jiāng biàn de xíng wéi liú gěi lèi lái shí xiàn
   lèi zhōng gōng gòng de xíng wéi yìng bèi chū lái bìng zhōng dào gōng gòng lèi zhōng miǎn dài chóngfùzhè shì Opdyke Johnson suǒ miáo shù guò dezhòng fēn jiě bān huàde hěn hǎo de [OJ93]。 shǒu xiān shí bié xiàn yòu dài zhōng de tóng zhī chùbìng qiě jiāng tóng zhī chù fēn wéi xīn de cāo zuòzuì hòuyòng diào yòng zhè xiē xīn de cāo zuò de múbǎn fāng lái huàn zhè xiē tóng de dài
   kòng zhì lèi kuò zhǎnmúbǎn fāng zhǐ zài dìng diǎn diào yòng“ hook” cāo zuòcān jiàn xiào guǒ jié), zhè yàng jiù zhǐ yǔn zài zhè xiē diǎn jìn xíng kuò zhǎn
   míng chēng Visitor
   jié gòu
   biǎo shì zuò yòng mǒu duì xiàng jié gòu zhōng de yuán de cāo zuò shǐ zài gǎi biàn yuán de lèi de qián xià dìng zuò yòng zhè xiē yuán de xīn cāo zuò
   shì yòng xìng duì xiàng jié gòu bāo hán hěn duō lèi duì xiàng men yòu tóng de jiē kǒuér xiǎng duì zhè xiē duì xiàng shí shī xiē lài lèi de cāo zuò
   yào duì duì xiàng jié gòu zhōng de duì xiàng jìn xíng hěn duō tóng de bìng qiě xiāng guān de cāo zuòér xiǎng miǎn ràng zhè xiē cāo zuò rǎnzhè xiē duì xiàng de lèi。 Visitor shǐ jiàngxiàng guān de cāo zuò zhōng lái dìng zài lèi zhōngdāng gāi duì xiàng jié gòu bèi hěn duō yìng yòng gòng xiǎng shíyòng Visitor shì ràng měi yìng yòng jǐn bāo hán yào yòng dào de cāo zuò
   dìng duì xiàng jié gòu de lèi hěn shǎo gǎi biàndàn jīng cháng yào zài jié gòu shàng dìng xīn de cāo zuògǎi biàn duì xiàng jié gòu lèi yào zhòng dìng duì suǒ yòu fǎng wèn zhě de jiē kǒuzhè néng yào hěn de dài jià guǒ duì xiàng jié gòu lèi jīng cháng gǎi biàn me néng hái shì zài zhè xiē lèi zhōng dìng zhè xiē cāo zuò jiào hǎo
   chéng gōng cǎi yòng shè shì de sān zhòu
   shè shì de cǎi yòng lín jìn de zuì hòu xiànjǐn suō de suàn hěn duō gōng xiàn yòu de yòu xiàn tuán duì yuán xiāng jié xià shì chéng gōng zhì dìng shè shì de sān zhòu
   qiáng de tōng xìn péi xùn
   duō gòu yōng yòu lǐng xiān shù néng zhèng shì tōng guò liǎo shè shī lùn tán de lùn zhèng huò zhě fēi zhèng shì de gōng rèn zhuān jiāzhè xiē lǐng xiān chǎng shāng jiāng tuī guǎng shè shì cǎi yòng zhōng de kāi fàng tōng xìnbìng jiāng péi xùn kāi shè shì de tuán duìtōng xìn yīngdāng kuà kāi tuán duì xiàng biàn xiān fáng zhǐ cǎi yòng shù jǐng duō zhǒng wéi de shí xiànjǐn měi Developer/ProjectAntiPattern de shí xiàn)。 péi xùn cǎi yòng zhèng shì de internallunch-and-learns、 zhèng shì de internalclass huò zhě pài xiē yuán gōng cān jiā wài péi xùnzhè xiē péi xùn fāng shì jiāng jìn zhèng què de shè shì yìng yòng chéng guǒ jǐn yòu shǎo de guān zhòng néng gòu cān jiā péi xùnzuì jiā de hòu xuǎn rén shì xiē gǎn jué shì zài huí lái hòu néng gòu péi xùn tóng shì de rén
   shè shì cǎi yòng zhǐ dǎo
   shè shì yòng shǐ xiàng shòu dàn shì men néng yīn wéi yòng 'ér duì yìng yòng chéng zào chéng sǔn hàiyīngdāng cǎi yòng mendàn shì duì de cǎi yòng yīngdāng shòu dào shěn yuè yàn zhèng shè shì bāo hán zài shè kāi guò chéng zhōngzài rèn zhǒng qíng kuàng zhōng shè shì de shǐ yòng yīngdāng yóu shěn yuè zhě què rèn yàn zhèngzài shěn yuè guò chéng zhōng hái néng huì dào zhè yàng de qíng kuàngé wài de shè shì shì yòng zuì chū bāo kuò de fāng shǐ huán jìng zhōng méi yòu jìn xíng zhèng shì de shěn yuèzhè zhòu tōng guò tóng shì shěn yuè huò zhě tuán duì tǎo lùn lái wán chéngzhè zhòu zhōng de shěn yuè zhě yào me shì zhù yào tuán duì de chéng yuányào me men jiàn kāi fàng tōng xìn
   zhǐ dǎo cǎi yòng duì broadexposure lèi bié de shè shì fēi cháng guān jiànzhè xiē shè shì yòu hěn duō xiāng guān de fēng xiǎnyīn wéi men jiāng chuàng jiàn lài xìngzhè xiē lài xìng néng zài xiē duì xiàng lèi zhōng zhǐ gōng zuò zài gèng jiā guǎng fàn de DAO shè shì shí xiàn fàn wéi zhōng de shù fǎng wèn duì xiàng( DAO)、 huò zhě kuà yìng yòng chéng biān jiè shǐ yòng ValueObject shè shì zài yìng yòng chéng hèyìng yòng chéng céng zhī jiān chuán shū shù )。 zhè xiē shè shì yóu xiàng zhōng de rén huò zhě tóng xiàng de rén shí xiànér qiě shí xiàn yīngdāng chóngxīn shǐ yòng tóng chuàng jiàn lìng zhǒng de shí xiàn
   zhòng yòng shí xiàn , zhǐ shì shè shì
   zhǐ yào zài chuàng jiàn de shè shì shí xiàn zhōng yòu dìng de mǎn tuán duì gōng jiù zài zhòng yòng shēng zài dài céng shíér shì shè chuàng céng shí huò gèng duō chùshǐ huò de zuì chū shè shì shì gǎi jìn de shí xiàndàn shìzhēn zhèng de biāo shì zhòng yòng shí xiànzhòng yòng shí xiàn jiāng dǎo zhì: a) zhòng yòng de lèi jué gōng gòng shí xiàn); b) suō duǎn kāi shí jiān jiàng chéng běn; c) suō duǎn wéi shí jiān jiàng chéng běn; d) zài yìng yòng chéng zhī jiān nèi qīng sōng chéng
   zhè zhǒng zhòng yòng duì broadexposure shè shì fēi cháng zhòng yàoyòu shí shì běn de)。 zhè xiē shè shì chuàng jiàn liǎo wài lài xìng chéng jiāng cóng gōng gòng shí xiàn zhōng shòu huò zhě chǎn shēng quán de dìng lèi guǒ yòu gōng gòng chǔ jiāng zhòng yòng)。 isolateduse shè shì cóng zhòng yòng zhōng huò dàn shì guǒ men shì gēn qíng kuàng dìng zhì de men jiù fēi cháng nán zhòng yòng
   yòu shí nín néng huì wèn :“ guǒ zhòng yòng jiào hǎowèishénme shè shì zhòng yòng de shí xiàn tóng yìng yòng ?” zài men tǎo lùn shè shì shǐ gèng duō zhě huò de shí hòu cái huì tǎo lùn zhè wèn guǒ néng guǒ jīng dìng liǎo shí xiàn me dào guǎng fàn shì yòng xìng zhè biāo jiù huì fēi cháng kùn nánrán 'ér dàn shè shì bèi yìng yòng dào shū de wèn huò zhě shù chǔ shè shī zhōng me jiù zhòng yòng zài gāi huán jìng zhōng chǎn shēng de shí xiàn
   jià gòu zhōng de shè shì
   zhè kàn lái xiàng shì jiàn de rèn yào zhǎng shè shì yìng yòng zài shí qíng kuàng zhōng gòu jiàn yōu zhì de shí xiàn jìn zhòng yòng shí xiànwán chéng gāi rèn de fāng zhī jiù shì zài huán jìng zhōng yǐn yìng yòng chéng jià gòuyìng yòng chéng jià gòu gōng liǎo yìng yòng chéng yào de jié gòucóng 'ér shǐ kāi tuán duì guān zhù yìng yòng chéng de luó jizhè bāo hán liǎo shí xiàn de shè shìchú liǎo zhòng yòng shè shì gài niàn huò zhě dān shí xiàn zhī wài zài duō xiàng hèyìng yòng chéng zhī jiān zhòng yòng jià gòuzhè zhǒng gòng xiǎng de gōng gòng shí xiàn què bǎo liǎo jiān róng xìngbìng wéi kāi wéi duō zhǒng tóng de shí xiàn gōng liǎo zhǒng chéng běn dài fāng 'ànjiān róng xìng gōng liǎo chóngxīn shǐ yòng yào de shù chǔméi yòu gòu de piān zài zhè shēn tǎo lùn jià gòu de zhòng yào pǐn zhì yùn xíng shí jiān guǎn pèi zhì yìng yòng chéng luó ji shì yìng xìng xíng wéi děngnín cóng CarnegieMellonSoftwareEngineeringInstitute(www.sei.cmu.edu/ata/ata_init.html) zhōng xué dào gèng duō yòu guān jià gòu de zhī shí
shè shì de xíng xiàng
  1、 FACTORY héng zhuī MM shǎo liǎo qǐng chī fàn liǎomài dāng láo de chì kěn de chì dōushì MM 'ài chī de dōng suī rán kǒu wèi yòu suǒ tóngdàn guǎn dài MM mài dāng láo huò kěn zhǐ guǎn xiàng yuán shuōlái chìjiù xíng liǎomài dāng láo kěn jiù shì shēng chǎn chì de Factory
   gōng chǎng shì lèi gōng chǎng lèi fēn kāixiāo fèi zhě rèn shí hòu yào mǒu zhǒng chǎn pǐnzhǐ xiàng gōng chǎng qǐng qiú xiāo fèi zhě xiū gǎi jiù jiē xīn chǎn pǐnquē diǎn shì dāng chǎn pǐn xiū gǎi shígōng chǎng lèi yào zuò xiāng yìng de xiū gǎi chuàng jiàn xiàng duān gōng
  2、 BUILDER héng MM zuì 'ài tīng de jiù shì 'ài zhè huà liǎojiàn dào tóng fāng de MM, yào néng gòu yòng men de fāng yán gēn shuō zhè huà 'ò yòu duō zhǒng yán fān shàng miàn měi zhǒng yán dōuyòu 'àn jiànjiàn dào MM zhǐ yào 'àn duì yìng de jiàn jiù néng gòu yòng xiāng yìng de yán shuō chū 'ài zhè huà liǎoguó wài de MM qīng sōng gǎo diānzhè jiù shì de 'ài ” builder。( zhè dìng měi jūn zài yòng de fān hǎo mài
   jiàn zào shìjiāng chǎn pǐn de nèi biǎo xiàng chǎn pǐn de shēng chéng guò chéng fēn kāi láicóng 'ér shǐ jiàn zào guò chéng shēng chéng yòu tóng de nèi biǎo xiàng de chǎn pǐn duì xiàngjiàn zào shì shǐ chǎn pǐn nèi biǎo xiàng de biàn huà zhī dào chǎn pǐn nèi chéng de jiéjiàn zào shì qiáng zhì shí xíng zhǒng fēn zhòu jìn xíng de jiàn zào guò chéng
  3、 FACTORYMETHOD héng qǐng MM mài dāng láo chī hàn bǎo tóng de MM yòu tóng de kǒu wèiyào měi gèdōu zhù shì jiàn fán rén de shì qíng bān cǎi yòng FactoryMethod shìdài zhe MM dào yuán 'érshuōyào hàn bǎo”, yào shénme yàng de hàn bǎo ràng MM zhí jiē gēn yuán shuō jiù xíng liǎo
   gōng chǎng fāng shì xīn gōng chǎng lèi zài suǒ yòu chǎn pǐn de chuàng jiànér shì jiāng chuàng jiàn de gōng zuò jiāo gěi lèi zuòchéng wéi chōu xiàng gōng chǎng juésèjǐn gěi chū gōng chǎng lèi shí xiàn de jiē kǒuér jiē chù chǎn pǐn lèi yīngdāng bèi shí huà zhè zhǒng jié
  4、 PROTOTYPE héng gēn MM yòng QQ liáo tiān dìng yào shuō xiē shēn qíng de huà liǎo sōu liǎo hǎo duō ròu de qíng huà yào shí zhǐ yào copy chū lái fàng dào QQ miàn jiù xíng liǎozhè jiù shì de qíng huà prototype liǎo。( 100 kuài qián fèn yào yào
   yuán shǐ xíng shìtōng guò gěi chū yuán xíng duì xiàng lái zhǐ míng suǒ yào chuàng jiàn de duì xiàng de lèi xíngrán hòu yòng zhì zhè yuán xíng duì xiàng de fāng chuàng jiàn chū gèng duō tóng lèi xíng de duì xiàngyuán shǐ xíng shì yǔn dòng tài de zēng jiā huò jiǎn shǎo chǎn pǐn lèichǎn pǐn lèi yào fēi yòu rèn shì xiān què dìng de děng jié gòuyuán shǐ xíng shì shì yòng rèn de děng jié gòuquē diǎn shì měi lèi pèi bèi lóng fāng
  5、 SINGLETON héng 'ǎn yòu 6 piào liàng de lǎo men de lǎo gōng dōushì jiù shì men jiā de lǎo gōng Sigleton, men zhǐ yào shuō dàolǎo gōng”, dōushì zhǐ de tóng rén jiù shì ( gāng cái zuò liǎo mèng yòu zhè me hǎo de shì )
   dān shìdān shì què bǎo mǒu lèi zhǐ yòu shí ér qiě xíng shí huà bìng xiàng zhěng tǒng gōng zhè shí dān shìdān shì zhǐ yìng zài yòu zhēn zhèng dedān shí de qiú shí cái shǐ yòng
  6、 ADAPTER héng zài péng yǒu huì shàng pèng dào liǎo měi Sarah, cóng xiāng gǎng lái de huì shuō yuè huì shuō tōng huàzhǐ hǎo qiú zhù de péng yǒu kent liǎo zuò wéi Sarah zhī jiān de Adapter, ràng Sarah xiāng jiāo tán liǎo ( zhī dào huì huì shuǎ )
   shì pèi biàn shì lèi de jiē kǒu biàn huàn chéng duān suǒ dài de lìng zhǒng jiē kǒucóng 'ér shǐ yuán běn yīn jiē kǒu yuán yīn pèi 'ér gōng zuò de liǎng lèi néng gòu gōng zuòshì pèi lèi gēn cān shù fǎn hái shì de shí gěi duān
  7、 BRIDGE héng zǎo shàng pèng dào MM, yào shuō zǎo shàng hǎowǎn shàng pèng dào MM, yào shuō wǎn shàng hǎopèng dào MM chuān liǎo jiàn xīn yào shuō de hǎo piào liàng 'òpèng dào MM xīn zuò de fàxíngyào shuō de tóu hǎo piào liàng 'ò yào wèn zǎo shàng pèng dào MM xīn zuò liǎo fàxíng zěn me shuōzhè zhǒng wèn yòng BRIDGE xià jiù xíng liǎo
   qiáo liáng shìjiāng chōu xiàng huà shí xiàn huà tuō 'ǒushǐ 'èr zhě de biàn huà jiù shì shuō jiāng men zhī jiān de qiáng guān lián biàn chéng ruò guān lián jiù shì zhǐ zài ruǎn jiàn tǒng de chōu xiàng huà shí xiàn huà zhī jiān shǐ yòng / guān 'ér shì chéng guān cóng 'ér shǐ liǎng zhě de biàn huà
  8、 COMPOSITE héng Mary jīn tiān guò shēng 。“ guò shēng yào sòng jiàn 。”“ ǹghǎo shāng diàn tiǎo。”“ zhè jiàn T tǐng piào liàngmǎizhè tiáo qún hǎo kànmǎizhè bāo cuòmǎi。”“ wèimǎi liǎo sān jiàn liǎo zhǐ dāyìng sòng jiàn de 'ò。”“ shénme , T jiā qún jiā bāo bāozhèng hǎo pèi chéng tào xiǎo jiě fán bāo lái。”“ …”, MM huì yòng Composite shì liǎo huì liǎo méi yòu
   chéng shì chéng shì jiāng duì xiàng zhì dào shù jié gòu zhōng yòng lái miáo shù zhěng fēn de guān chéng shì jiù shì chǔlǐ duì xiàng de shù jié gòu de shì chéng shì fēn zhěng de guān yòng shù jié gòu biǎo shì chū lái chéng shì shǐ duān dān de chéngfèn duì xiàng yóu men 'ér chéng de chéng duì xiàng tóng děng kàn dài
  9、 DECORATOR héng Mary guò wán lún dào Sarly guò shēng hái shì yào jiào tiǎo liǎo rán zhè yuè huǒ shí fèi kěn dìng wán wán chū nián zài huá shān dǐng shàng zhào de zhào piànzài bèi miàn xiě shàngzuì hǎo dídí jiù shì 'ài de Fita”, zài dào jiē shàng pǐn diàn mǎi liǎo xiàng kuàngmài pǐn de MM hěn piào liàng 'ò), zài zhǎo gǎo měi shù shè de Mike shè liǎo piào liàng de zhuāng lái……, mendōu shì Decorator, zuì zhōng dōuzài xiū shì zhè rén zěn me yàngkàn dǒng liǎo
   zhuāng shì shìzhuāng shì shì duì duān tòu míng de fāng shì kuò zhǎn duì xiàng de gōng néngshì chéng guān de dài fāng 'àn gōng chéng gèng duō de líng huó xìngdòng tài gěi duì xiàng zēng jiā gōng néngzhè xiē gōng néng zài dòng tài de chè xiāozēng jiā yóu xiē běn gōng néng de pái liè 'ér chǎn shēng de fēi cháng liàng de gōng néng
  10、 FACADE héng yòu zhuān de Nikon xiàngjī jiù huān shǒu dòng tiáoguāng juànkuài ménzhè yàng zhào chū lái de zhào piàn cái zhuān dàn MM dǒng zhè xiējiào liǎo bàn tiān huìxìng hǎo xiàngjī yòu Facade shè shì xiàngjī tiáozhěng dào dòng dàngzhǐ yào duì zhǔn biāo 'àn kuài mén jiù xíng liǎo qiē yóu xiàngjī dòng tiáozhěngzhè yàng MM yòng zhè xiàngjī gěi pāi zhāng zhào piàn liǎo
   mén miàn shìwài tǒng de tōng xìn tōng guò tǒng de mén miàn duì xiàng jìn xíngmén miàn shì gōng gāo céng de jiē kǒushǐ tǒng gèng shǐ yòngměi tǒng zhǐ yòu mén miàn lèiér qiě mén miàn lèi zhǐ yòu shí jiù shì shuō shì dān shìdàn zhěng tǒng yòu duō mén miàn lèi
  11、 FLYWEIGHT héng měi tiān gēn MM fāduǎnxìnshǒu zhǐ lèisǐ liǎozuì jìn mǎi liǎo xīn shǒu xiē cháng yòng de cún zài shǒu yào yòng de shí hòuzhí jiē chū láizài qián miàn jiā shàng MM de míng jiù sòng liǎozài yòng qiāo liǎogòng xiǎng de jiù shì Flyweight, MM de míng jiù shì chū lái de wài zhēnggēn shàng xià wén qíng kuàng shǐ yòng
   xiǎng yuán shì: FLYWEIGHT zài quán sài zhōng zhǐ zuì qīng liàng xiǎng yuán shì gòng xiǎng de fāng shì gāo xiào de zhī chí liàng de duì xiàngxiǎng yuán shì néng zuò dào gòng xiǎng de guān jiàn shì fēn nèi yùn zhuàng tài wài yùn zhuàng tàinèi yùn zhuàng tài cún chǔ zài xiǎng yuán nèi huì suí huán jìng de gǎi biàn 'ér yòu suǒ tóngwài yùn zhuàng tài shì suí huán jìng de gǎi biàn 'ér gǎi biàn dewài yùn zhuàng tài néng yǐng xiǎng nèi yùn zhuàng tài men shì xiāng dejiāng gòng xiǎng de zhuàng tài gòng xiǎng de zhuàng tài cóng cháng guī lèi zhōng fēn kāi láijiāng gòng xiǎng de zhuàng tài cóng lèi chú chū duān zhí jiē chuàng jiàn bèi gòng xiǎng de duì xiàngér yīngdāng shǐ yòng gōng chǎng duì xiàng chuàng jiàn bèi gòng xiǎng de duì xiàngxiǎng yuán shì de jiàng nèi cún zhōng duì xiàng de shù liàng
  12、 PROXY héng gēn MM zài wǎng shàng liáo tiān kāi tóu zǒng shì“ hi, hǎo” ,“ cóng 'ér lái ?”“ duō liǎo?”“ shēn gāo duō shǎo ?” zhè xiē huàzhēn fán rénxiě chéng zuò wéi de Proxy fán shì jiē shōu dào zhè xiē huà shè zhì hǎo liǎo dòng de huí jiē shōu dào de huà shí zài tōng zhī huí zěn me yàng
   dài shìdài shì gěi mǒu duì xiàng gōng dài duì xiàngbìng yóu dài duì xiàng kòng zhì duì yuán duì xiàng de yǐn yòngdài jiù shì rén huò gòu dài biǎo lìng rén huò zhě gòu cǎi xíng dòngmǒu xiē qíng kuàng xià xiǎng huò zhě néng gòu zhí jiē yǐn yòng duì xiàngdài duì xiàng zài biāo duì xiàng zhí jiē dào zhōng jiè de zuò yòng duān fēn biàn chū dài zhù duì xiàng zhēn shí zhù duì xiàngdài shì bìng zhī dào zhēn zhèng de bèi dài duì xiàngér jǐn jǐn chí yòu bèi dài duì xiàng de jiē kǒuzhè shí hòu dài duì xiàng néng gòu chuàng jiàn bèi dài duì xiàngbèi dài duì xiàng yòu tǒng de juésè dài wéi chuàng jiàn bìng chuán
  13、 CHAINOFRESPONSIBLEITY héng wǎn shàng shàng yīng wèile hǎo kāi liù zuò dào liǎo zuì hòu páiqián miàn zuò liǎo hǎo piào liàng de MM 'āizhǎo zhāng zhǐ tiáoxiě shàng“ Hi, zuò de péng yǒu guǒ yuàn qǐng xiàng qiánzhuàn”, zhǐ tiáo jiù jiē de chuán shàng liǎozāo gāochuán dào pái de MM zhǐ tiáo chuán gěi lǎo shī liǎotīng shuō shì lǎo chǔnǚ kuài páo !
   rèn liàn shìzài rèn liàn shì zhōnghěn duō duì xiàng yóu měi duì xiàng duì xià jiā de yǐn yòng 'ér jiē lái xíng chéng tiáo liànqǐng qiú zài zhè liàn shàng chuán zhí dào liàn shàng de mǒu duì xiàng jué dìng chǔlǐ qǐng qiú bìng zhī dào liàn shàng de duì xiàng zuì zhōng chǔlǐ zhè qǐng qiú tǒng zài yǐng xiǎng duān de qíng kuàng xià dòng tài de chóngxīn zhì liàn fēn pèi rènchǔlǐ zhě yòu liǎng xuǎn chéng dān rèn huò zhě rèn tuī gěi xià jiā qǐng qiú zuì zhōng bèi rèn jiē shōu duān duì xiàng suǒ jiē shòu
  14、 COMMAND héng 'ǎn yòu MM jiā guǎn bié yánméi jiàn miànzhǐ hǎo jiè zhù zài men liǎ zhī jiān chuán sòng xìn duì yòu shénme zhǐ shìjiù xiě zhāng zhǐ tiáo ràng dài gěi zhè yòu chuán sòng guò lái COMMAND, wèile gǎn xiè qǐng chī liǎo wǎn jiàng miàn zhī dào shuō:“ tóng shí gěi jiě jiě sān nán péng yǒu sòng COMMAND, jiù shù zuì xiǎo cái qǐng chī miàn。”
   mìng lìng shìmìng lìng shì qǐng qiú huò zhě cāo zuò fēng zhuāng dào duì xiàng zhōngmìng lìng shì chū mìng lìng de rèn zhí xíng mìng lìng de rèn fēn kāiwěi pài gěi tóng de duì xiàngmìng lìng shì yǔn qǐng qiú de fāng sòng de fāng kāi láishǐ qǐng qiú de fāng zhī dào jiē shōu qǐng qiú de fāng de jiē kǒugèng zhī dào qǐng qiú shì zěn me bèi jiē shōu cāo zuò shì fǒu zhí xíng shí bèi zhí xíng shì zěn me bèi zhí xíng de tǒng zhī chí mìng lìng de chè xiāo
  15、 INTERPRETER héng 'ǎn yòu pào MM zhēn jīng》, shàng miàn yòu zhǒng pào MM de gōng lüè shuō chī cān de zhòu kàn diàn yǐng de fāng děng děnggēn MM yuē huì shízhǐ yào zuò Interpreter, zhào zhe shàng miàn de jiǎo běn zhí xíng jiù liǎo
   jiě shì shìgěi dìng yán hòujiě shì shì dìng chū wén de zhǒng biǎo shìbìng tóng shí gōng jiě shì duān shǐ yòng zhè jiě shì lái jiě shì zhè yán zhōng de jiě shì shì jiāng miáo shù zěn yàng zài yòu liǎo jiǎn dān de wén hòushǐ yòng shì shè jiě shì zhè xiē zài jiě shì shì miàn dào de yán shì zhǐ rèn jiě shì duì xiàng néng gòu jiě shì de rèn zài jiě shì shì zhōng yào dìng dài biǎo wén de mìng lìng lèi de děng jié gòu jiù shì liè de guī měi mìng lìng duì xiàng dōuyòu jiě shì fāng dài biǎo duì mìng lìng duì xiàng de jiě shìmìng lìng duì xiàng de děng jié gòu zhōng de duì xiàng de rèn pái liè dōushì yán
  16、 ITERATOR héng 'ài shàng liǎo Mary, qiē de xiàng qiú hūn
  Mary:“ xiǎng yào gēn jié hūn dāyìng de tiáo jiàn
   :“ shénme tiáo jiàn wǒdōu dāyìng shuō
  Mary:“ kàn shàng liǎo de zuàn shí
   :“ mǎi mǎihái yòu ?”
  Mary:“ kàn shàng liǎo biān de dòng bié shù
   :“ mǎi mǎihái yòu ?”
  Mary:“ kàn shàng liàng páo chē
   nǎo dài wēng de shēngzuò zài shàng yǎo :“ mǎi mǎihái yòu ?”
   dié dài shìdié dài shì shùn fǎng wèn zhōng de yuán 'ér bào de nèi biǎo xiàngduō duì xiàng zài xíng chéng de zǒng chēng zhī wéi duì xiàng shì néng gòu bāo róng duì xiàng de róng duì xiàngdié dài shì jiāng dié dài luó ji fēng zhuāng dào de duì xiàng zhōngcóng 'ér běn shēn kāidié dài shì jiǎn huà liǎo de jiè miànměi duì xiàng dōukě yòu huò shàng de dié dài duì xiàngměi dié dài de dié dài zhuàng tài shì dedié dài suàn juésè biàn huà
  17、 MEDIATOR héng MM jiāngxiāng zhī jiān shuí yīnggāi gěi shuí duō shǎo qián suàn qīng chǔ liǎoxìng kuī dāng shí zài bàng biānàn zhào de chóu shǔsuàn qiánzuàn liǎo qián de cóng zhè péi liǎo qián de gěi qiē jiù OK ǎn dào liǎo MM de diàn huà
   tiáotíng zhě shìtiáotíng zhě shì bāo zhuāng liǎo liè duì xiàng xiāng zuò yòng de fāng shìshǐ zhè xiē duì xiàng xiāng míng xiǎn zuò yòngcóng 'ér shǐ men sōng sàn 'ǒu dāng mǒu xiē duì xiàng zhī jiān de zuò yòng shēng gǎi biàn shí huì yǐng xiǎng de xiē duì xiàng zhī jiān de zuò yòngbǎo zhèng zhè xiē zuò yòng de biàn huàtiáotíng zhě shì jiāng duō duì duō de xiāng zuò yòng zhuǎn huà wéi duì duō de xiāng zuò yòngtiáotíng zhě shì jiāng duì xiàng de xíng wéi xié zuò chōu xiàng huà duì xiàng zài xiǎo chǐ de xíng wéi shàng duì xiàng de xiāng zuò yòng fēn kāi chǔlǐ
  18、 MEMENTO héng tóng shí gēn MM liáo tiān shí dìng yào qīng chǔ gāng cái gēn MM shuō liǎo xiē shénme huà rán MM xiàn liǎo huì gāo xīng de 'òxìng kuī yòu bèi wàng gāng cái MM shuō liǎo shénme huà wǒdōu kǎo bèi fèn fàng dào bèi wàng miàn bǎo cúnzhè yàng suí shí chá kàn qián de
   bèi wàng shìbèi wàng duì xiàng shì yòng lái cún chǔ lìng wài duì xiàng nèi zhuàng tài de kuài zhào de duì xiàngbèi wàng shì de yòng shì zài huài fēng zhuāng de tiáo jiàn xiàjiāng duì xiàng de zhuàng tài zhuō zhùbìng wài huàcún chǔ láicóng 'ér zài jiāng lái shì de shí hòu zhè duì xiàng hái yuán dào cún chǔ lái de zhuàng tài
  19、 OBSERVER héng xiǎng zhī dào zán men gōng zuì xīn MM qíng bào jiā gōng de MM qíng bào yóu jiàn jiù xíng liǎo, tom sōu qíng bào xiàn de xīn qíng bào yòng tōng zhī menzhí jiē gěi yóu jiàn men zuò wéi dìng yuè zhěguān chá zhějiù shí shōu dào qíng bào
   guān chá zhě shìguān chá zhě shì dìng liǎo zhǒng duì duō de lài guān ràng duō guān chá zhě duì xiàng tóng shí jiān tīng mǒu zhù duì xiàngzhè zhù duì xiàng zài zhuàng tài shàng shēng biàn huà shíhuì tōng zhī suǒ yòu guān chá zhě duì xiàngshǐ men néng gòu dòng gēngxīn
  20、 STATE héng gēn MM jiāo wǎng shí dìng yào zhù de zhuàng tài 'òzài tóng de zhuàng tài shí de xíng wéi huì yòu tóng yuē jīn tiān wǎn shàng kàn diàn yǐngduì méi xīng de MM jiù huì shuōyòu shì qíng ”, duì tǎo yàn dàn hái méi huān shàng de MM jiù huì shuōhǎo 'ā guò dài shàng tóng shì me?”, jīng huān shàng de MM jiù huì shuō diǎn zhōngkàn wán diàn yǐng zài pào zěn me yàng?”, dāng rán kàn diàn yǐng guò chéng zhōng biǎo xiàn liáng hǎo de huà MM de zhuàng tài cóng tǎo yàn huān biàn chéng huān 'ò
   zhuàng tài shìzhuàng tài shì yǔn duì xiàng zài nèi zhuàng tài gǎi biàn de shí hòu gǎi biàn xíng wéizhè duì xiàng kàn shàng xiàng shì gǎi biàn liǎo de lèi yàngzhuàng tài shì suǒ yán jiū de duì xiàng de xíng wéi bāo zhuāng zài tóng de zhuàng tài duì xiàng měi zhuàng tài duì xiàng shǔ chōu xiàng zhuàng tài lèi de lèizhuàng tài shì de shì ràng duì xiàng zài nèi zhuàng tài gǎi biàn de shí hòu xíng wéi suí zhī gǎi biànzhuàng tài shì yào duì měi tǒng néng de zhuàng tài chuàng zhuàng tài lèi de lèidāng tǒng de zhuàng tài biàn huà shí tǒng biàn gǎi biàn suǒ xuǎn de lèi
  21、 STRATEGY héng gēn tóng lèi xíng de MM yuē huìyào yòng tóng de lüèyòu de qǐng diàn yǐng jiào hǎoyòu de chī xiǎo chī xiào guǒ cuòyòu de hǎi biān làng màn zuì shìdān mùdì dōushì wèile dào MM de fāng xīn de zhuī MM jǐn náng zhōng yòu hǎo duō Strategy 'ò
   lüè shì lüè shì zhēn duì suàn jiāng měi suàn fēng zhuāng dào yòu gòng tóng jiē kǒu de de lèi zhōngcóng 'ér shǐ men xiāng huàn lüè shì shǐ suàn zài yǐng xiǎng dào duān de qíng kuàng xià shēng biàn huà lüè shì xíng wéi huán jìng fēn kāihuán jìng lèi wéi chí chá xún xíng wéi lèi zhǒng suàn zài de lüè lèi zhōng gōngyóu suàn huán jìng kāi láisuàn de zēng jiǎnxiū gǎi dōubù huì yǐng xiǎng dào huán jìng duān
  22、 TEMPLATEMETHOD héng héng kàn guò shuō shēng shàng chuángzhè jīng diǎn wén zhāng shēng cóng rèn shí dào shàng chuáng de biàn de zhòu fēn wéi qiǎo jiāng zhǎn kāi zhuī qiújiē wěnqián dòng shǒuài jìn zhòu (Templatemethod), dàn měi zhòu zhēn duì tóng de qíng kuàngdōuyòu yàng de zuò zhè jiù yào kàn suí yìng biàn ( shí xiàn );
   múbǎn fāng shìmúbǎn fāng shì zhǔn bèi chōu xiàng lèijiāng fēn luó ji fāng gòu zào de xíng shì shí xiànrán hòu shēng míng xiē chōu xiàng fāng lái shǐ lèi shí xiàn shèng de luó ji tóng de lèi tóng de fāng shì shí xiàn zhè xiē chōu xiàng fāng cóng 'ér duì shèng de luó ji yòu tóng de shí xiànxiān zhì dìng dǐng luó ji kuàng jiàér jiāng luó ji de jié liú gěi de lèi shí xiàn
  23、 VISITOR héng qíng rén jié dào liǎoyào gěi měi MM sòng shù xiān huā zhāng piàn shì měi MM sòng de huā dōuyào zhēn duì rén de diǎnměi zhāng piàn yào gēn rén de diǎn lái tiǎo rén gǎo qīng chǔhái shì zhǎo huā diàn lǎo bǎn pǐn diàn lǎo bǎn zuò xià Visitor, ràng huā diàn lǎo bǎn gēn MM de diǎn xuǎn shù huāràng pǐn diàn lǎo bǎn gēn měi rén diǎn xuǎn zhāng zhè yàng jiù qīng sōng duō liǎo
   fǎng wèn zhě shìfǎng wèn zhě shì de de shì fēng zhuāng xiē shī jiā mǒu zhǒng shù jié gòu yuán zhī shàng de cāo zuò dàn zhè xiē cāo zuò yào xiū gǎi de huàjiē shòu zhè cāo zuò de shù jié gòu bǎo chí biànfǎng wèn zhě shì shì yòng shù jié gòu xiāng duì wèi dìng de tǒng shù jié gòu zuò yòng jié gòu shàng de cāo zuò zhī jiān de 'ǒu jiě tuō kāishǐ cāo zuò xiāng duì yóu de yǎn huàfǎng wèn zhě shì shǐ zēng jiā xīn de cāo zuò biàn de hěn róng jiù shì zēng jiā xīn de fǎng wèn zhě lèifǎng wèn zhě shì jiāng yòu guān de xíng wéi zhōng dào fǎng wèn zhě duì xiàng zhōngér shì fēn sàn dào de jié diǎn lèi zhōngdāng shǐ yòng fǎng wèn zhě shì shíyào jiāng jìn néng duō de duì xiàng liú lǎn luó ji fàng zài fǎng wèn zhě lèi zhōngér shì fàng dào de lèi zhōngfǎng wèn zhě shì kuà guò lèi de děng jié gòu fǎng wèn shǔ tóng de děng jié gòu de chéng yuán lèi
   shū shè shì C# de gōng chéng huà shí xiàn kuò zhǎnzuò  zhěwáng xiáng zhù
   chū bǎn shèdiàn gōng chū bǎn shè
   chū bǎn shí jiān: 2009-1-1
     shù: 850000
   bǎn  : 1
     shù: 652
   kāi  běn: 16 kāi
   yìn  : 1
   zhǐ  zhāngjiāo bǎn zhǐ
  ISBN: 9787121075070
   bāo  zhuāngpíng zhuāng
   suǒ shǔ fēn lèi shū >> suàn / wǎng luò >> chéng shè >>CC++C#VCVC++
   dìng jià 98.00
   biān ji tuī jiàn
   zhuān jiā tuī jiàn
   běn shū míng quèchú liǎo gào wèn de lèi xíng jiě hái gōng liǎo yǎn de chéng dài xiāng xìn zhè běn 'àn tóu de gōng shū gōng cuò de wéi shìbāng zào jiù yòu tánxìngnéng kuò chōng wéi de ruǎn jiàn shí
   bǎi jìng  wēi ruǎn MVP, tái wān héng xùn shēn jiǎng shī,“ shù tiě rén
   zuò zhě cóng GOF23 zhǒng jīng diǎn shè shì kāi shǐdài zǒu jìn shì de shī ménxiǎo dào de chǔ shì dào de jià gòu shìběn shū zuò liǎo xiáng jìn de jiǎng jiě guǒ nín hái zài wèile ruǎn jiàn qiú de jìn biàn huà 'ér fán nǎo duànwèile zài ruǎn jiàn shè lǐng gèng shàng céng lóu 'ér suǒ wàng běn shū néng gòu dài gěi nín xiē
   huì jūn  wēi ruǎn MVP, yuán zhuān jiā, IT168 zhuān lán zuò zhě
   běn shū hěn yòu de fāngjiù shì gōng chéng jiǎo lái chǎn shì shìxiāng jiào chún cuì de shì zhī shuō gèng biàn de xià shǒu jiǎo , C yán de gāo xìng jié shè shì de jīng diǎn xiǎngliǎng zhě xiāng zhāng
   wáng tāo  wēi ruǎn MVP, yuán zhuān jiā,《 zhī dào de .NET》 zuò zhě
   nèi róng jiǎn jiè
   běn shū C#2.0 de shì jiāng GOF23 zhōng de shì zhǒng gōng chéng huà de gōng gòng 'ér fēi Example de fāng shì chéng xiàn gěi zhěnèi róng bāo kuò xià 7 fēn
   1 piān zhù yào shì gài kuò xìng de jiè shào 2 piān chuàng jiàn xíng shì jiè shào tōng guò jiāng shí huà zhí wěi tuō fāng duì xiàng de bàn chéng lèi xíng shí huà de lài guān bǎo zhèng chéng huò zhě wài tǒnghuò wàng lèi xíng shí detóng shí shēng zhí jiē de yǐn yòng 3 piān jié gòu xíng shì de zhòng diǎn zài tōng guò líng huó de zhì tóng de duì xiàngbìng zài chǔ shàng wán chéng gèng wéi de lèi xínghuò zhě lèi xíng tǒng), ér cānyù de lèi xíng zhī jiān shǐ zhōng bǎo chí jìn liàng sōng sàn de jié gòu guān 4 piān xíng wéi xíng shì guān zhù yìng yòng yùn xíng guò chéng zhōng suàn de gōng tōng xìn guān de shū 5 piān zhù yào jiè shào xiǎo chǔ shì hèyìng yòng 'àn 6 piān zhù yào jiè shào yìng yòng quán de shì huà de shí xiàn fāng bāo kuò xiàn zài jīng bèi biàn yìng yòng de N céng shì mǒu xiē guān jiàn xìng kuàng jià chǎn pǐn cǎi yòng dewēi nèi shì 7 piān zhù yào shì xiē zhēn duì Web WebService lǐng de shì shè shù
   běn shū zhù yào zhēn duì duì C# yán .NETFramework píng tái yòu dìng liǎo jiě huò yòu dìng yìng yòng jīng yàn de yòng yóu shì xiē wàng yùn yòng shì shù zài shè kāi fāng miàn duō yìng duì xiē tiǎo zhàn de yòng
   zuò zhě jiǎn jiè
   wáng xiángruǎn jiàn jià gòu shīzhù yào cóng shì .NET、 XML、 gōng yào chǔ shè shī de kāi zhuān zhù shù yóu shì XML xìn de shēng chǎnjiā gōngjiāo huàn liàn děng guò chéngzuì jìn cānyù liǎo liè yòu guān yìng yòng shù PKI huán jìng bǎo xìn tǒng shù 'ān quán de xiàng
   zuì huān shù xuépíng cháng 'àn tóu zǒng shì bǎi běn shù xué liàn xián xiá shí jiān huān xiě zuòtōng guò biǎo duō zhǒng shù wén zhāng guó nèi wài tóng xíng jiāo liú zhǒng shù yìng yòng jīng yàn
   xiàng jiànxì jīng cháng dào hǎi bīn chéng shì xíng wài yíngchū hǎi háng xíng xiàn yùn dòngzhè nián pēng rèn jiàn jiàn chéng wéi rén zhù yào 'àihào
yīngwénjièshì
  1. :  design pattern
xiàngguāncí
diàn shù jié gòu suàn ruǎn jiàn wǎng luò wǎng luò jiān kòng xié fēn suàn lián wǎng
biān chéng ruǎn jiàn gōng chéng javaj2ee rén ruǎn jiàn kāi DesignPattern
ioc kāi kuàng jià fǎn zhuǎn kòng zhì shì kuàng jià gèng duō jiēguǒ ...
bāo hán cí
huà shè shì xué shè shì
shè shì zhī chánruǎn jiàn shè shì
yuán xíng shè shìtōng yòng shè shì
duō xiàn chéng shè shìjīng tōng shè shì
shè shì ( yǐng yìn bǎn )wǎng zhàn jiāo shè shì
SymbianOS tōng yòng shè shìJavaEE shè shì
shè shìjīng tōng CSS HTML shè shì
HeadFirst shè shìJava shè shì
shí yòng ruǎn jiàn shè shì jiào chéngJavaScript shè shì
C# shè shì ( yǐng yìn bǎn )shè shì jiě ( yǐng yìn bǎn )
wǎng zhàn jiāo shè shì : 2 bǎnActionScript3.0 shè shì
J2EE xiàng shí xùn :UML shè shì Ruby shè shì
C#3.0 shè shìActionScript3 shè shì
JAVA duō xiàn chéng shè shìAjax shè shì
yóu shè shì yìng yòng kāi xiàng shí xùn shè shì
shè shì : yòng miàn xiàng duì xiàng ruǎn jiàn de chǔC++ shè shì - Qt4 kāi yuán kuà píng tái kāi kuàng jià
yóu shè shì IBMWebSpherePortal yìng yòng kāi shè shì - kāi yuán kuà píng tái kāi kuàng jià
gāo chéng shè shì kuàng jià shì