shù > oop
mùlù
No. 1
  oop: object oriented programming, miàn xiàng duì xiàng de chéng shè suǒ wèi duì xiàng jiù shì huò shù chǔlǐ zhè xiē shù de fāng guò chéng de miàn xiàng duì xiàng de chéng shè wán quán tóng chuán tǒng de miàn xiàng guò chéng chéng shè jiàng liǎo ruǎn jiàn kāi de nán shǐ biān chéng jiù xiàng yàng jiǎn dānshì dāng jīn diàn nǎo biān chéng de shì dǎng de cháo liú
   miàn xiàng duì xiàng biān chéng( objectorientedprogramming, oop, miàn xiàng duì xiàng chéng shè shì zhǒng suàn biān chéng jià gòuoop de tiáo běn yuán shì suàn chéng shì yóu dān néng gòu dào chéng zuò yòng de dān yuán huò duì xiàng 'ér chéngoop dào liǎo ruǎn jiàn gōng chéng de sān zhù yào biāozhòng yòng xìnglíng huó xìng kuò zhǎn xìngwèile shí xiàn zhěng yùn suànměi duì xiàng dōunéng gòu jiē shōu xìn chǔlǐ shù xiàng duì xiàng sòng xìn oop zhù yào yòu xià de gài niàn jiàn
   jiàn shù gōng néng zài yùn xíng zhe de suàn chéng zhōng xíng chéng de dān yuán jiàn zài oop suàn chéng zhōng shì kuài jié gòu huà de chǔ
   chōu xiàng xìngchéng yòu néng lüè zhèng zài chǔlǐ zhōng xìn de mǒu xiē fāng miàn duì xìn zhù yào fāng miàn guān zhù de néng
   fēng zhuāng jiào zuò xìn fēng zhuāngquè bǎo jiàn huì de fāng shì gǎi biàn jiàn de nèi zhuàng tàizhǐ yòu zài xiē gōng liǎo nèi zhuàng tài gǎi biàn fāng de jiàn zhōngcái fǎng wèn nèi zhuàng tàiměi lèi jiàn gōng liǎo jiàn lián de jiē kǒubìng guī dìng liǎo jiàn jìn xíng diào yòng de fāng
   duō tài xìng jiàn de yǐn yòng lèi huì shè dào duō tóng lèi xíng de jiànér qiě yǐn yòng jiàn suǒ chǎn shēng de jiēguǒ shí diào yòng de lèi xíng
   chéng xìngyǔn zài xiàn cún de jiàn chǔ shàng chuàng jiàn lèi jiànzhè tǒng bìng zēng qiáng liǎo duō tài xìng fēng zhuāng xìngdiǎn xíng lái shuō jiù shì yòng lèi lái duì jiàn jìn xíng fēn ér qiě hái dìng xīn lèi wéi xiàn cún de lèi de kuò zhǎnzhè yàng jiù jiāng lèi zhì chéng shù xíng huò wǎng zhuàng jié gòuzhè xiàn liǎo dòng zuò de tōng yòng xìng
   yóu chōu xiàng xìngfēng zhuāng xìngzhòng yòng xìng biàn shǐ yòng děng fāng miàn de yuán yīn jiàn wéi chǔ de biān chéng zài jiǎo běn yán zhōng jīng biàn bié liú xíng。 python ruby shì zuì jìn cái chū xiàn de yánzài kāi shí wán quán cǎi yòng liǎo oop de xiǎngér liú xíng de perl jiǎo běn yán cóng bǎn běn 5 kāi shǐ màn màn jiā liǎo xīn de miàn xiàng duì xiàng de gōng néng jiànyòng jiàn dài xiàn shíshàng de shí chéng wéi javascript( ecmascript) liú xíng de yuán yīnyòu lùn zhèng biǎo míng duì jiàn jìn xíng shìdàng de jiù zài yīng wǎng shàng dài html xml de wén dàng duì xiàng xíng( dom)。
   oop de běn xiǎng
  oop de duō yuán shǐ xiǎng dōulái zhī simula yánbìng zài smalltalk yán de wán shàn biāo zhǔn huà guò chéng zhōng dào gèng duō de kuò zhǎn duì qián de xiǎng de chóngxīn zhù jiě shuō oo xiǎng oopl jīhū shì tóng zhǎn xiāng jìn de hán shù shì chéng shè ( functional-programming) luó ji shì chéng shè ( logic-programming) suǒ dài biǎo de jiē jìn de shí suàn xíng suǒ tóng de shìoop jīhū méi yòu yǐn jīng què de shù xué miáo ér shì qīng xiàng jiàn duì xiàng xíng néng gòu jìn de fǎn yìng yìng yòng lǐng nèi de shí zhī jiān de guān běn zhì shì gèng jiē jìn zhǒng rén lèi rèn zhī shì suǒ cǎi yòng de zhé xué guān de suàn xíngyóu dǎo zhì liǎo rán de huà jiù shì oop dào shì shénme? [d&t1988][b.s1991].。 zài oop zhōngduì xiàng zuò wéi suàn zhù yōng yòu de míng chēngzhuàng tài jiē shòu wài jiè xiāo de jiē kǒuzài duì xiàng xíng zhōngchǎn shēng xīn duì xiàngjiù duì xiàng xiāo huǐ sòng xiāo xiǎng yìng xiāo jiù gòu chéng oop suàn xíng de gēn běn
   duì xiàng de chǎn shēng yòu liǎng zhǒng běn fāng shì zhǒng shì yuán xíng( prototype) duì xiàng wéi chǔ chǎn shēng xīn de duì xiàng zhǒng shì lèi( class) wéi chǔ chǎn shēng xīn duì xiàngyuán xíng de gài niàn jīng zài rèn zhī xīn xué zhōng bèi yòng lái jiě shì gài niàn xué de zēng xìngyuán xíng xíng běn shēn jiù shì tōng guò gōng yòu dài biǎo xìng de duì xiàng wéi chǔ lái chǎn shēng zhǒng xīn de duì xiàngbìng yóu chǎn shēng gèng shí yìng yòng de duì xiàngér yuán xíng - wěi tuō shì oop zhōng de duì xiàng chōu xiàngdài gòng xiǎng zhì zhōng de zhǒng lèi gōng liǎo huò zhě duō duì xiàng de tōng yòng xìng miáo cóng xíng shì huà de guān diǎn kànlèi lèi xíng yòu guānyīn lèi xiāng dāng shì cóng gāi lèi zhōng chǎn shēng de shí de ér zhè yàng de guān diǎn huì dài lái xiē máo dùn jiào diǎn xíng de jiù shì zài chéng xià lèiduì xiàng lèiduì xiàng zhī jiān de xíng wéi xiāng róng xìng néng hěn nán dàozhè jiù shì oop zhōng cháng bèi yǐn yòng de --- lèi xíng( subtype) děng lèi( subclass) [budd2002]。 ér zài zhǒng suǒ yòu jiē duì xiàng de shì jiè guān bèi jǐng xiàzài lèi xíng chǔ shàng hái dàn shēng chū liǎo zhǒng yōng yòu yuán lèi( metaclass) de xīn duì xiàng xíng lèi běn shēn shì zhǒng lèi de duì xiàng shàng sān zhǒng gēn běn tóng de guān diǎn dìng liǎo sān zhǒng lèi( class-based) , yuán xíng( prototype-based) yuán lèi( metaclass-based) de duì xiàng xíngér zhè sān zhǒng duì xiàng xíng jiù dǎo zhì liǎo duō tóng de chéng shè yán guǒ men zàn shí jìng tài dòng tài de chā bié fàng zài biān)。 shì de men jīng cháng jiē chù de c++,java dōushì shǐ yòng lèi de duì xiàng xíngdàn chú zhī wài hái yòu hěn duō men suǒ méi yòu jiē chù de oopl cǎi yòng liǎo wán quán yàng de duì xiàng xíng men shì zài yòng lìng wài zhǒng guān diǎn quán shì oop de nèi hán
   shénme shì oop de běn xiǎng jiàn de shí xiàn jiē kǒu fēn kāibìng qiě ràng jiàn yòu duō tài xìng guòliǎng zhě hái shì yòu gēn běn de tóngoop qiáng diào zài chéng gòu zào zhōng yán yào de chéngshǐ yòng lèishǐ yòng duì xiàngduì xiàng chuán xiāo 。 gp guān xīn chéng huò shì chéng de kāi duān shì fēn chǎn pǐn de fēn lèiyòu xiē shénme zhǒng lèi men de xíng wéi jiù shì shuōliǎng jiàn dōng xiāng děng wèi zhe shénmezěn yàng zhèng què dìng xiāng děng cāo zuò dān dān shì xiāng děng cāo zuò me jiǎn dān wǎng shēn chù fēn jiù huì xiànxiāng děngzhè bān guān niàn wèi zhe liǎng duì xiàng fēnhuò zhě zhì shǎo běn fēn shì xiāng děng de men jiù yòu tōng yòng de xiāng děng cāo zuòzài shuō duì xiàng de zhǒng lèijiǎ shè cún zài shùn liè duì shùn liè de cāo zuò me zhè xiē cāo zuò de shì shénmecóng quán héng de jiǎo kàn men yīnggāi xiàng yòng gōng shénme yàng de shùn liègāi zhǒng liè shàng cún zài xiē cāo zuò zhǒng pái shì men yào dezhǐ yòu duì zhè xiē jiàn de gài niàn xíng fēn lèi gǎo qīng chǔ liǎo men cái néng dào shí xiàn de wèn shǐ yòng múbǎn chéng hái shì hóngshǐ yòng shénme yán shù? gp de běn guān diǎn shì chōu xiàng de ruǎn jiàn jiàn men de xíng wéi yòng biāo zhǔn de fēn lèi xué fēn lèichū diǎn jiù shì yào jiàn zào zhēn shí degāo xiào de jué yán de suàn shù jié gòudāng rán zuì zhōng de zài hái shì yánméi yòu yán méi biān chéng。 stl shǐ yòng c++, yòng ada lái shí xiànyòng de yán lái shí xiàn xíngjiēguǒ huì yòu suǒ tóngdàn běn de dōng shì yàng dedào chù dōuyào yòng dào 'èr fēn chá zhǎo pái ér zhè jiù shì rén men zhèng zài zuò deduì róng de tóng de yán huì dài lái qīng wēi de tóngdàn shì běn de bié hěn qīng chǔ shì gp suǒ cún de fēn jiě men jué dìng yào jiàn swap, rán hòu zhǐ chū zhè jiàn zài tóng de yán zhōng guǒ gōng zuòxiǎn rán zhòng diǎn shì fēn lèiér oop suǒ qiáng diào de rèn wéi shì guòfèn qiáng diào deshì qīng chǔ de dìng lèi zhī jiān de céng guān oop gào liǎo jiàn céng guān què méi yòu gào zhè xiē guān de shí zhì
  ( zhè duàn tài hǎo jiěyòu xiē shù néng yào guò duàn shí jiān cái huì yòu shì de zhōng wén fān héng héng zhě
   miàn xiàng duì xiàng de biān chéng fāng oop shì jiǔ shí nián dài cái liú xíng de zhǒng ruǎn jiàn biān chéng fāng qiáng diào duì xiàng dechōu xiàng”、“ fēng zhuāng”、“ chéng”、“ duō tài”。 men jiǎng chéng shè shì yóushù jié gòu” +“ suàn chéng decóng hóng guān de jiǎo jiǎngoop xià de duì xiàng shì biān chéng wéi zhōng xīn deshì miàn xiàng chéng de duì xiàng men jīn tiān yào jiǎng de ood shì miàn xiàng xìn de duì xiàngshì yòng xìn wéi zhōng xīn de
   èroop shù de shǐ
   miàn xiàng duì xiàng shù zuì chū shì cóng miàn xiàng duì xiàng de chéng shè kāi shǐ de de chū xiàn 60 nián dài simula yán wéi biāo zhì。 80 nián dài zhōng hòu miàn xiàng duì xiàng chéng shè zhú jiàn chéng shúbèi suàn jiè jiě jiē shòurén men yòu kāi shǐ jìn kǎo miàn xiàng duì xiàng de kāi wèn zhè jiù shì jiǔ shí nián dài microsoftvisual liè oop ruǎn jiàn de liú xíng de bèi jǐng
   chuán tǒng de jié gòu huà fēn shè kāi fāng shì xiàn xìng guò chéngyīn chuán tǒng de jié gòu huà fēn shè fāng yào qiú xiàn shí tǒng de guǎn guī fànchǔlǐ shù quányòng néng quán miàn wán zhěng qiú
   chuán tǒng de ruǎn jiàn jié gòu shè fāng nán shì yìng ruǎn jiàn shēng chǎn dòng huà de yào qiúyīn wéi guò chéng wéi zhōng xīn jìn xíng gōng néng ruǎn jiàn de kuò chōng yòng néng hěn chā
   duì xiàng shì duì xiàn shí shì jiè shí de yīn miàn néng gèng róng jiě qiú shǐ yòng fēn zhě zhī jiān yòu tóng de jiào bèi jǐng gōng zuò diǎn hěn hǎo gōu tōng
   bié miàn xiàng duì xiàng de kāi chuán tǒng guò chéng de kāi de yào yòuduì xiàng shí bié chōu xiàngfēng zhuāngduō tài xìng chéng
   duì xiàng (object) shì xiàn shí shí de chōu xiàngyóu xiàn shí shí de guò chéng huò xìn shēng lái dìng duì xiàng bèi rèn wéi shì shù shǔ xìng chéng fāng fēng zhuāng zài de shí zhè chéng chǎn shēng gāi duì xiàng de dòng zuò huò duì jiē shòu dào de wài jiè xìn hào de fǎn yìngzhè xiē duì xiàng cāo zuò yòu shí chēng wéi fāng duì xiàng shì dòng tài de gài niàn , zhōng de shǔ xìng fǎn yìng liǎo duì xiàng dāng qián de zhuàng tài
   lèi (class) yòng lái miáo shù yòu xiāng tóng de shǔ xìng fāng de duì xiàng de dìng liǎo gāi zhōng měi duì xiàng suǒ gòng yòu de shǔ xìng fāng duì xiàng shì lèi de shí
   yóu shàng fēn nán kàn chūjìn guǎn oop shù gèng kàn zhōng yòng de duì xiàng xíngdàn mùdì dōushì biān chéng wéi de deér shì yòng de xìn wéi zhōng xīn dezǒng xiǎng yòng de xìn dào mǒu yòng gǎn xīng dechéng duì xiàngzhōng
   sānoop de yōu quē diǎn
  ·oop de yōu diǎnshǐ rén men de biān chéng shí de shì jiè gèng jiā jiē jìnsuǒ yòu de duì xiàng bèi shǔ xìng fāng jiēguǒ biān chéng jiù gèng jiā yòu rén xìng huà
  ·oop de yòu quē diǎnjiù c++ ér yányóu miàn xiàng gèng gāo de luó ji chōu xiàng céngshǐ c++ zài shí xiàn de shí hòu zuò chū xìng néng shàng miàn de shēngyòu shí hòu shèn zhì shì zhì mìng de ( suǒ yòu duì xiàng de shǔ xìng jīng guò nèi zhì duō zhòng zhǐ zhēn de jiànjiē yǐn yòng shì xìng néng sǔn shī de zhù yào yuán yīn zhī guò zhě de xiàn xìng zài wèi shǐ yòng guò vc++ wài de miàn xiàng duì xiàng yánsuǒ shì shí fēn kěn dìng yòu rén xiào chū lái liǎo )。
   zài suàn fēi zhǎn de jīn tiān néng huì shuō dīng diǎn de xìng néng shēng méi shí me liǎoshì decóng miàn xiàng duì xiàng de jiǎo shǐ de biān chéng de jié gòu gèng jiā qīng wán zhěngshù gèng jiā guǎn xìng néng de shēng dài lái zhè me duō de hǎo chùméi yòu yóu zuò wěn zuàn de shēng
   guòzài mǒu xiē duì yào qiú gāo shū chǎng zuò de shì diàn xìn de jiāo huàn tǒngměi miǎo zhōng yòu chāo guò bǎi wàn de rén tóng shí jìn xíng diàn huà jiāo huàn guǒměi shù jiāo huàn guò chéng dōushì duì xiàng me zǒng de xìng néng sǔn shī jiāng shì tiān wén shù !!
   huò zhě zhè gòu tiē shēnzài jiǎ shòu pìn yóu shè gōng lǎo bǎn wàng zuò chū lái de yóu gèng duō de jiān dào gèng duō de diàn nǎo shǐ yòng zhěyóu měi miǎo zhōng de yùn xíng de zhēn gèng duō dàn bào zhà gèng duōgèng huá me huì xiàn shǐ yòng c++ huì shǐ de chéng biàn bèn zhuō mǎn de qiúchú fēi fēi yào de yóu yùn xíng bēn téng de shàng ( guǒ shìér yòu jiān chí yòng c++ de duì xiàng biān chéng me qǐng jiǎn shǎo zhùjué de qiāng de wēi )。
   guǒ shì míng wán níng de rén shuō xiāng xìn oop huì yòu xìng néng shàng de sǔn shī me céng kàn dào zài csdn shàng guān vb vc zhí xíng xiàolǜ de tǎo lùn de wén zhāngjiǎng shù de jiù shì shǐ yòng liǎo mfc hòuzhí xíng xiàolǜ shèn zhì vb kāi chū lái de dōng qǐng wèi yàn zhèng xià guǒ shǐ yòng de shì chún cuì de c yán de huà me dìng huì zài vb biān chū lái de dōng yào kuài hěn duō (gettickcount hán shù chá yuè msdn, guǒ xiǎng gèng jiā jīng què xiē shǐ yòng queryperformancecounter hán shù )。
   oop de wèi láizhuàn wén /bjarnestroustrup&timlindholm biān / mèng yán
   zài wèi lái sān niánchéng yuán biān xiě dài de fāng shì huì shēng xiē biàn huà
  stroustrup: zài c++ zhōngjiǎ méi yòu shì de zài bèi hòu zhī chēngwán chéng rèn zhòng yào de gōng zuò dōukě néng shì hěn deér dàn yòu liǎo shì de rèn dōng dōukě bèi men cāo kòng zhǎng zhī jiānyīn gòu zào shǐ yòng chéng de zhòng yào xìng zēngzhè 'àn shì menfàn xíng chéng shè (genericprogramming) jiāng huì yuè lái yuè duō bèi yùn yòngzhǐ yòu tōng guò gp, men cái néng què bǎo de tōng yòng xìng gāo xiàolǜ hái zài fēn shì suàn jiàn( components)” yìng yòng lǐng huì chū xiàn rén de zēngzhǎngjiù fēn chéng yuán 'ér yántōng guò shǐ yòng fāng biàn shì yòng de chéng zhè xiē kāi gōng zuò huì biàn jiǎn dān míng liǎo
   xiàn zài yòu shìbiān chǎng shāng shì yòu deduì xiàng xíng xíng jiè miàn (gui) jié tuī xiāo gěi yòng wēi ruǎn de com inprise de lèi shǔ xìng“ properties”。 duì yòng lái shuōzhè yào qíng yuàn suǒ wàng kàn dào de chéng yīnggāi shì yòng biāo zhǔn c++ zàojiè miàn líng huózhí xìn lài de chéng tōng chángzhè xiē jiè miàn yīnggāi shì píng tái guān de。 c++ de biǎo néng qiáng shǐ shǐ yòng liàng de hóng yìng gāi chéng zhè yào qiújiù suàn yòu xiē fāng bǎi fēn zhī bǎi de zūn shǒu zhè yuán yìng gāi jiāng duì píng tái chǎng jiā de lài xìng xiàn zhì láizhè biāo de wán chéng qíng kuàng fǎn yìng ruǎn jiàn gōng chǎn duì yìng yòng chéng kāi hángyè de guān zhù chéng huái qián duì xiē dekuà píng tái chǎng shāng lái shuōbìng cún zài xiāng yìng de shì chǎng guǒ néng gòu jiàn zhè yàng de shì chǎng néng gòu jìn chǎng shāng men wéi zuò chūzhēn zhèng yòu yòng dechǎn pǐn
  lindholm: duì biān xiě dài de kāi zhě lái shuōzhù yào de dòng liàng réng jiāng shì liǎng wǎng luò fēn shì héng héng jiù shì shè kāi fēi dān ruǎn jiàn de qiú fēn de yìng yòng chéng jiāng huì shì líng líng yùn xíng zài dān shè bèi shàngér shì yùn yòng liǎo lèi ejb jsp zhī lèi shù depíng tái guān de fēn shì chéng chéng yuán men jiāng miàn duì fēn shì suàn de chóngchóng xiǎn zhè jiāng duì duō chéng yuán suǒ lài de shè shì shù zhí jué gòu chéng yán jùn de tiǎo zhànzhè shì xuǎn biān chéng yán zhī qián rèn shí dào dejìn guǎn tóng yán de shè xìng néng jìn huò zhě 'ài zhè zhuǎn huà
   zài wǎng luò yìng yòng de zēng cháng zhōng hěn zhòng yào de fēn shì xiǎo xíng dòng shè bèi shū internet shè bèi de bào zhà xìng zēngzhǎngzhè xiē shè bèi yòu de cāo zuò tǒnghuò zhě zhǐ zài mǒu zhǒng dìng de shè bèi lǐng nèi yòu gòng tóng de cāo zuò tǒng men xiàn zài hái liè chū zhè xiē shè bèi héng héng jiā tíng jiē shè bèifēng diàn huàdiàn bào zhǐ、 pda、 dòng wǎng luò shè bèi děng děngdàn shì zhè xiē shè bèi lǐng de shù liàng shēn chéng jiāng huì hěn kuài biàn nán gūliáng mendōu zhī dào zhè shì chǎng jīng rén, pc de xīng zhī xiāng guò xiǎo cài diéyīn zài zhè xiē shè bèi de yìng yòng chéng shì chǎng shàngjìng zhēng jiāng huì xiāng dāng cán huò shèng de zhòng yào shǒu duàn zhī jiù shì jìn kuài jìn shì chǎngkāi rén yuán yào yōu xiù de gōng xùn gāo xiào zhuàn xiě diào shì men de ruǎn jiànpíng tái guān xìng shì zhì shèng jué zhī shǐ chéng yuán néng gòu kāi chū zhī chí duō zhǒng shè bèi píng tái de ruǎn jiàn
   de lìng biàn huà shì men duì dài (java) shù (xml) xié tóng xíng yìng yòng chéng de kāi néng jiāng huì duàn gāozhè zhǒng xié tóng shì kāi qiáng yìng yòng chéng de xīn biāo zhī men cóng xml de xùn liú xíng ebxml guī fàn de jìn zhǎn zhōng jīng kàn dào liǎo zhè shì。 ebxml shì zhēn duì diàn shāng guó mào de xml de kāi fàng shì chǔ gòu jiàyóu lián guó mào jìn diàn shāng zhōng xīn (un/cefact) jié gòu xìng xìn biāo zhǔn tuī jìn zhì (oasis) gòng tóng kāi
   men néng fǒu wàng chū xiàn zhēn zhèng de miàn xiàng jiàn (component-oriented) de yán de chuàng zào zhě huì shì shuí
  stroustrup: huái zhè lǐng zhōng zhī suǒ quē chéng guǒzhèng shì yīn wéi rén men héng héng zhù yào shì xiē fēi chéng yuán men héng héng duì jiànzhè hán de yǎn liǎo tài duō de wàngzhè xiē rén shì mèng xiǎngyòu cháo jiàn huì mǒu zhǒng fāng shì chéng yuán gǎn chū shǐ tái hòu xiē chènzhí deshè yuánzhǐ yòng xiān tiáozhěng hǎo de jiàn shǔ biāo tuō tuō fàng fàngjiù tǒng chū láiduì ruǎn jiàn gōng chǎng shāng lái shuōzhè zhǒng xiǎng hái yòu lìng céng men rèn wéidào shí hòu zhǐ yòu men cái bǎo liú yòu yào de shùyòu néng biān xiě zhè yàng de jiàn
   zhè zhǒng xiǎng yòu zuì běn de miù zhè zhǒng jiàn hěn nán huò guǎng fàn huān yíng dān de jiàn huò kuàng jià (framework), guǒ néng gòu mǎn yìng yòng chéng huò zhě chǎn lǐng duì suǒ chū de fēn yào qiú de huàduì zhì zào zhě lái shuō jiù shì huá suàn de chǎn pǐnér qiě shù shàng shì hěn kùn nán shì gāi chǎn nèi de jìng zhēng zhě hěn kuài jiù huì xiàn guǒ suǒ yòu réndōu cǎi yòng zhè xiē jiàn me zhī jiān de chǎn pǐn jiù huì biàn tiān xià tóngméi shí me bié men jiāng lún wéi jiǎn dān de bàn shì yuánzhù yào rùn jiāng zuàn jìn xiē jiàn / kuàng jià gōng yìng shāng de yāo bāo
   xiǎo jiànhěn yòu yòng guò chǎn shēng liǎo de gàng gān xiào yìngzhōng xíng degèng tōng yòng de jiàn fēi cháng yòu yòngdàn shì gòu zào shí yào fēi tóng xún cháng de tánxìng
   zài c++ zhōng men zōng yùn yòng tóng gòng xiǎng xíng shì de lèi (classhierarchies), shǐ yòng templates jīng xīn zào de jiē kǒuzài zhè fāng miàn liǎo dìng de jìn zhǎn dài zài zhè lǐng xiē yòu yòu yòng de chéng guǒ guò rèn wéi zhè zhǒng chéng guǒ hěn néng shì zhǒng xīn de c++ chéng shè fēng ér shì zhǒng xīn de yán
  lindholm: biān xiě miàn xiàng jiàn de yìng yòng chéng hǎo xiàng gèng duō de shì tóu shè chéng yuán guǎn fāng miàn de wèn ér shì biān chéng yán wèn dāng rán mǒu xiē yán zài zhè fāng miàn yòu xiān tiān yōu shì guò guǒ shuō yòu shénme shù bān de xīn yán néng gòu jiǎn huà jiàn de biān xiě nán chún cuì shì zhǒng dǎo
   wēi ruǎn jīng jiāng quán zhù zài [fontid=markstyle="color:#ee6600;background-color:yellow"]c#[/font] shàng yán cóng
  stroustrup:c++ zài xià shí nián réng rán jiāng shì zhǒng zhù liú yánmiàn duì xīn de tiǎo zhàn huì fèn yìng duì chuàng zào liǎo me duō chū tǒng de yánjué huìzuò shì luò huā liú shuǐ chūn ”。
   wàng wēi ruǎn rèn shí dào zài c++( zhǐ de shì iso biāo zhǔn c++) shàng yòu zhe de , c++ shì it shì jiè nèi rén zhī jiān de zuò qiáo liángshì gòu zào xíng tǒng qiàn shì tǒng de yòu xiào gōng shì mǎn gāo xìng néng qiú de yán gèng zhù zhòng xiē píng wěn de shāng yòng chéng
   jìng zhēng
  [fontid=markstyle="color:#ee6600;background-color:yellow"]c#[/font] huì huì huò guǎng fàn de jiē shòubìng qiě diào de yán
  lindholm: tōng cháng zhǒng yán huì cóng bié de yán huò huì bèi diào xiē jiān dìng de fortran chéng yuán hái yòng zhe fortran duì rén lái shuō yán de xuǎn dāng rán yīn shí 'ér dàn jiù zhěng 'ér yán yán de zhǒng lèi zhǐ huì zēng jiù shì shuō men zhī jiān de guān shìyòu yòu ér shìyòu méi ”。
   duì xīn yán de jiē shòu chéng wǎng wǎng jué néng suǒ 。 java shù bèi xùn jiē shòuyuán yīn shì duō fāng miàn de, internet worldwideweb jiē kǒuzài shù miàn qián de cuò zhé gǎnduì java shù zhǎn fāng xiàng de quán miàn yǐng xiǎng néng dōushì yuán yīnlìng zhòng yào de yuán yīn shì java chǎng shāngzhè wèi zhe zài jiān róng chǎn pǐn miàn qián cóng róng xuǎn
  [fontid=markstyle="color:#ee6600;background-color:yellow"]c#[/font] shì fǒu huì huò guǎng fàn jiē shòushì qíng kuàng 'ér dìngzǒng de lái shuō xiē duì píng tái guān xìng chǎng shāng guān xìng guān xīn de chéng yuán néng huì huān c#。 xiē gēn wēi ruǎn píng tái kǔn zài rén dāng rán néng xiǎng yào xún zhǎo vb vc de chū de dài pǐndàn shì duì chéng kuà píng tái zhí xíng néng bié guān zhù de chéng yuánjiāng huì jiān shǒu java zhī lèi de yánzhè zhǒng néng duì duō zhòng fǎng wèn shè bèi( multipleaccessdevices) fēn shì suàn xíng zhì guān zhòng yàoér java yán gōng liǎo biāo zhǔn de chǎng shāng yùn xíng shí huán jìng
  stroustrup:[fontid=markstyle="color:#ee6600;background-color:yellow"]c#[/font] de liú xíng chéng jīhū wán quán jué wēi ruǎn tóu de jīn duō shǎokàn shàng [fontid=markstyle="color:#ee6600;background-color:yellow"]c#[/font] de xīng kěn dìng huì shēng diào xiē yán de dàn shì shì shí shàng wèi 。 java de péng zhǎn bìng méi yòu gěi c++ dài lái shuāi bài。 c++ de yìng yòng réng rán zài wěn dìng zēngzhǎngdāng rán jīng shì bào zhà xìng de zēngzhǎng liǎo)。 de yán hái néng huò de zhī
   guò shí zài kàn chū yòu shénme yào zài míng zhǒng xīn de zhuān yòu yán bié shì wēi ruǎn shēng vb, c#?
   tóng oop yán yòu shénme yōu shì liè shì
  stroustrup:c++ de yōu diǎn shǐ zhì zhōng dōushì zhè me tiáolíng huógāo xiàoér qiě bìng fēi zhuān yòu yánxiàn zài isoc++ biāo zhǔn de chū xiàngǒng liǎo zuì hòu diǎn
   rèn wéi c++ de gāo xiào shì zuì běn de yōu diǎnzhè zhǒng gāo xiào lái yòu de shù suàn xíngjiào zhī java c#, zhè zhǒng xíng gèng jiā tiē jìn guò xiē chéng cái zhēn zhèng wàng zhè me gāo de xiàolǜzhè shì wèn rèn wéi zhè lèi chéng fēi cháng duōrén men duì suàn de wàngyǒng yuǎn chāo yuè yìng jiàn de zhǎn hěn xiǎn rán, java [fontid=markstyle="color:#ee6600;background-color:yellow"]c#[/font] de shè zhě de xiǎng tóng men rèn wéizài hěn duō fāng xiàolǜ wèn guān jǐn yào
  c++ zhù yào de quē diǎnguī zuì zāo gāo de jiào shì xiē shǐ zhōng rèn wéi c++ shì chún cuì miàn xiàng duì xiàng yán de rén xiē c++ dàngchéng c yán biàn de rén dǎo zhì liǎo zhè zhǒng qíng kuàng), guī zuì tóng píng tái shàng de zhì xìngguī zuì wán zhěng biāo zhǔn de biān shí xiànguī zuì píng tái guān de tǒng chéng de quē shǎo
   zhè xiē wèn guī diǎnjiù shì quē zhuó yuè de chǎng shāngnéng gòu mǎn zhěng c++ shè de qiúyǒng tóu liàng de jīn kāi yào de chéng
  lindholm:java shù de chéng gōngshì yīn wéi zài shì de shí jiānchū xiàn zài shì de diǎnér qiě xuǎn liǎo yán suàn píng tái de zhī chí biāo。 java bìng shì zài suǒ yòu chǎng yōu oop yándàn shì duì chū xiàn de xīn wèn néng gòu jiě jué hěn chū miàn xiàng internet suàn huán jìng miǎn liǎo c++ zhōng huì de jié gòuchéng gōng fān yuè liǎo chéng zhì de nǎo rén wèn shōu zhì xiǎn zhù gāo liǎo shēng chǎn shuàijiàng liǎo zài wǎng luò bèi jǐng xià shǐ yòng yòu guān 'ān quán xìng dòng tài jiā zài de liè shè xuǎn yíng liǎo zhèng zài chū xiàn de qiú yuàn wàngzhè xiē xìng shǐ java jǐn chéng wéi xiàn yòu chéng yuán de xīn ér qiě wéi xīn de chéng yuán chuàng zào liǎo fán róng de shì chǎng kōng jiān
   wài, java yōng yòu biāo zhǔn huà deèr jìn zhì xíng shì de lèi gōng liǎo yào dedāng rán bìng fēi chōng fēn depíng tái chǎng shāng guān xìngpíng tái chǎng shāng guān xìng yào qiú xiàng shù yòu qīng de guī fànbìng xiē 'ài 'èr jìn zhì biāo zhǔn shí shī de xìng。 c++ suī rán yòu iso biāo zhǔndàn shí shèn zhì duì xiāng tóng tǒng xiāng tóng zhǐ lìng de píng tái chū shí yòng de bǎn běn jiān róng de 'èr jìn zhì biāo zhǔn
   shǐ shàng hěn duō shǐ yòng de yán bǎo shòu zénànshì yīn wéi gòu chū de xìng néng wèn ér zhè yào guī guò huǎn màn de jiě shì zāo gāo de shōu 。 java de zǎo shí xiàn yīn wéi tóng yàng de wèn shòu dào yán de píngdàn shì shí jiè xiàng xīn de shí xiàn shù tóu liǎo liàng jīn liǎo xiǎn zhù de xiào guǒ jīn zài fēn chǎng , java de xìng néng gēn cháng guī de jìng tài biān yán xiāng háo xùn zhè shǐ chéng yuán zài huò píng tái chǎng shāng guān xìng de tóng shí chū xìng néng shàng de dài jià
  c++ bìng méi yòu qiáng zhì shǐ yòng miàn xiàng duì xiàng fāng yīn wèile biān xiě chū de miàn xiàng duì xiàng dài jiù yào qiú chéng yuán men yòu xiāng dāng qiáng de xìnghěn duō gōng jiù shì yīn wéi zhè yuán yīn fàng liǎo c++。 zuò wéi yán, java de chū de yōu diǎn jiù shì qiáng zhì miàn xiàng duì xiàng fāng yǔn fēi miàn xiàng duì xiàng de jié gòu
  [fontid=markstyle="color:#ee6600;background-color:yellow"]c#[/font] jiè c++ java zhī jiānjiǎo liǎng zhǐ chuányīn gòu 'ān quányòu shī zhī
   duì gōng lái shuōcǎi yòng xīn de yán yào chū dài jià dào hǎo de chéng yuánméi rén shú zhè zhǒng xīn yán), péi xùn fèi yòng gāo jīng rénxué guò chéng zhōng shēng chǎn shuài chǎn pǐn zhì liàng xià jiàngduō nián de jīng yàn suí fēng xiāo shìděng děng zhǒng yán zhè xiē zhàng 'ài
  lindholm: shuō hěn duìcǎi yòng xīn dōng què shí cháng cháng kāi xiāo guò wèn shìzhè xīn dōng shì fǒu néng gòu jié shěng gèng duō de kāi zhīhuò zhě gōng de gǎi jìnhuò de huí bàohěn duō gōng xiànzhuànxiàng java shù lùn zài kāi de hòu duānjìn kuài jìn shì chǎngkuài dié dài kāi wéi jiǎn dān xìnghái shì qián duānkuà píng tái shì yòng fàn wéi cóng duān shè bèi dào gāo duān de shùān quán xìng), dōunéng jié shěng de kāi xiāo
   duì xīn shì de jiē cháng cháng shì zài tòng chǔ de zhī xiàhěn chéng shàngzhè zhèng shì java suǒ jīng de。 java de chǎn shēngshì duì dāng shí hěn duō tǒng de quē xiàn suǒ zuò chū de fǎn yìng。 java shù tōng guò xià miàn de shǒu duàn jiǎn qīng liǎo kāi zhě de tòng chǔ: 1) liǎo wǎng luò suàn fāng miàn de qiúshì yìng yùn 'ér shēng。 2) zài shù néng de jué shàngbǎo chí liáng hǎo de pǐn wèi liǎo zhòng de xīn 。 3) cǎi yòng shì qiáng zhì xìng lüè tuī xíng shè jué dìng wài, java shù jīng chéng wéi xué jiào xué zhōng de zhù liúzhè tóng yàng bǎo zhèng liǎo java kāi zhě duì de duàn zhuàng
   dàn shì zuì zhòng yào de diǎn shìzài méi yòu lìng zhǒng chéng shè shùnéng gòu xiàng java yàng yǔn chéng yuán kāi internet de tóng píng tái zhī shàng de yìng yòng chéng 。 java píng tái zài zhè fāng miàn de jié chū biǎo xiàn jīng bèi liàng de shí zhèng míng。 java jīng chéng wéi internet shàng de quē shěng yìng yòng chéng píng tái, javaapis chéng wéi internet yìng yòng chéng kāi de tiān rán píng tái
  stroustrup: wēi ruǎnhuo sun de jīn qián rēng zài java、 vb [fontid=markstyle="color:#ee6600;background-color:yellow"]c#[/font] zhōngbìng shì yīn wéi liáng xīn xiàn shì yīn wéi men zhēn de xiāng xìn zhè xiē yán néng gòu dài gěi chéng yuán gèng měi hǎo de shēng huóér shì shǐ rán
   yòu shuō rèn wéi ruǎn jiàn gōng chǎng shāng guǒ néng gòu yìng yòng chéng kāi zhě de zhuān shù rèn dān láijiāng huò de jīng duì bèi hòu de jīng fēn wéi huái rèn wéi zhè hěn nán chéng wéi xiàn shí bié shì dāng yìng yòng chéng kāi zhě shǐ yòng kāi fàng debiāo zhǔn huà de gōng shí men yòu duō zhǒng xuǎn cóng 'ér shǐ shàng miàn de xiǎng gèng jiā néng
   duō nián qián, c++ jiù jīng yòu fàn xíng néng ( jiù shì templates stl), yòu yùn suàn zhòng zàiyòu méi lèi xíng men huì huì zài java de wèi lái bǎn běn zhōng kàn dào zhè xiē xìng? java shì shì yīnggāi zhè xiē xìng
  strousturp: cóng 1988-89 nián , c++ jiù jīng yòu liǎo templates。 dàn shì men huā liǎo shàoshí jiān lái liǎo jiě zuì hǎo yùn yòng zhè gōng zǎo chǎng jiā duì template de zhī chí zài pǐn zhì shàng yòu hěn de chā yòu xiē biān chǎng shāng dòng zuò chí huǎnzhì shǎo yòu zhù yào de biān chǎng shānghǎo xiàng shì zhǐ wēi ruǎnwēi ruǎn zài visualc++4.0 cái kāi shǐ zhī chí template, zài zhī qián zhí shēng chēng template shì guò 'ér yòu méi shí me yòng de shùshí zhì jīn , visualc++ duì template de zhī chí zài zhù liú biān zhōng shǔ zuì chā de dàng héng héng zhě zhùàn zhōng shēng míng lángjí de fǎn template xuān chuánzhí dào men zhōng xué huì liǎo zhè xiàng shù wéi zhǐzhí dào jīn tiānduì template de zhī chí zài pǐn zhì shàng réng rán yòu dài gǎi jìn
   shàng miàn dào de xiē xìng rèn wéi java( hái yòu c#) yīnggāi kěn dìng huì zhú jiàn yǐn xiē duì chéng yuán lái shuō zuì yòu yòng de yán xìng gài niànjiāng huì zhú jiàn zhōngchéng wéi jiā zhù liú yán de rán zhī xuǎn jiù shì shuō rèn wéi lèi gòu hán shù múbǎn shū huà zhī lèi de zhìyuǎn yuǎn méi děng zhì zhòng yào duō
  lindholm: java shù chéng gōng de yuán yīn zhī jiù shì hěn qīng chǔ xiē gāi zuò men duō wèn wèishénmezhè xiàng xìng shì shì shǎozēng jiā huì dài lái xiē kāi xiāoyùn suàn zhòng zài shì c++ zhōng xiàng qiáng de xìngdàn shì zēng jiā liǎo c++ yán de hěn duō réndōu nán zhāo jià。 java zài zhǒng néng de quán héng zhī zhōngzuò chū liǎo míng zhì de jué zhǎo dào liǎo néng qiú zhī jiān de wán měi píng héng diǎn
   dāng rán, java huì zhǎnér qiě zuì zhòng yào de shìxiàn zài shì kāi zhě men zài tuī dòng zhǎn。 java zēng jiā fàn xíng néng zhè jiàn shìhěn hǎo zhǎn shì liǎo java shì tōng guò zhěng kāi zhě shè qún de cānyùzài quán héng zhōng jué dìng zhèng què de píng héng diǎnguān zēng jiā fàn xíng lèi xíng( generictypes) de“ java guī shēn qǐng”( javaspecificationrequest,jsr) jīng jìn jcp( javacommunityprocess) chéng ér qiě jīng kāi liǎo hěn cháng duàn shí jiāncān jiàn http://java.sun.com/aboutjava/communityprocess/ zhī jsr-014)。 xiàn zàizài jcp zhōngyòu chāo guò 80 jsrs zhèng zài tǎo lùn zhōngzhè chōng fēn xiàn liǎo zhěng duì kāi zhě de fǎn kuì gāo zuòzhè zhèng shì dòng java píng tái duàn jìn huà de dòng
   zhǎn vs. xīn (evolutionvs.revolution)
  c++ shì zhǒng zhǎn xíng de yán, java [fontid=markstyle="color:#ee6600;background-color:yellow"]c#[/font] gèng xiàng shì xīn xíng yán men shì cóng tóu shè de)? shénme shí hòu xīn xíng de yán cái shì de
  lindholm:java shù bìng fēi píng kōng chū shìfǎn 'ér gèng xiàng shì zhǎn xíng de。 java suǒ yòu de xìngzài java píng tái tuī chū zhī qián zhì shǎo jīng cún zài lìng zhǒng huán jìng zhī zhōng。 java de gòng xiàn zài zài zhòng duō de xìng quán héng zhōngzuò chū liǎo de xuǎn shǐ chǎn pǐn shí yòngyòu yōu 。 java shù duì chéng yuán de tài shì yǎngdàn 'ài
  stroustrup: cóng shù shàng jiǎng bìng rèn wéi java [fontid=markstyle="color:#ee6600;background-color:yellow"]c#[/font] shì shénmecóng tóu shè de xīn xíng yáncháng ruò java shì cóng shù yuán chū cóng tóu shè gài jiù huì fǎng c/c++ zhǒng chǒu lòu bìng tài de liǎo jīng , stroustrup zài hěn duō chǎng biǎo shì guò, c++ cǎi yòng c de xíng shìshí zài shì jiān róng xìng běn rén gèng piān 'ài simula de héng héng zhě)。
   rèn wéizhǐ yòu dāng chéng yuán men miàn duì de wèn shēng liǎo gēn běn de biàn huà de shí hòuhuò zhě dāng men xiàn liǎo quán xīn de yōu yuè de chéng shè shùyòu wán quán néng wéi xiàn cún yán suǒ zhī chí de shí hòu men cái yào quán xīn de yánwèn shì men kǒng yǒng yuǎn pèng dào xiēgēn běn”、“ quán xīnde qíng kuàng
   wéi cóng oop wèn shì lái chēng wéigēn běnde xīn xíng chéng shè shùwéi yòu fàn xíng chéng shè ( genericprogramming) shēng chéng shì chéng shè ( generativeprogramming) shùzhè liǎng xiàng shù zhù yào shì yuán c++templates shù de yùn yòng yòu fēn céng jīng bèi shì wéi miàn xiàng duì xiàng hán shù shì yán (functionallanguages) de yào chéngfènxiàn zài biàn chéng zhèng shì yòng chéng shòu de shù liǎo duì qián c++ múbǎn (template) chéng shè de chéng guǒ fēi cháng xīng fèn xiàng pooma,blitz++ mtl děng chéng zài hěn duō fāng gǎi biàn liǎo shù zhí suàn de fāng shì
  java [fontid=markstyle="color:#ee6600;background-color:yellow"]c#[/font] de mài diǎn”, jiù shì men de jiǎn dān xìngxiàn zài java shì shì kuài shī zhè mài diǎn liǎo
  stroustrup: xīn yán zǒng shì xuān chēng jiǎn dānduì lǎo yán de xìng duō fēi shí zhè zhǒng suǒ wèi dejiǎn dān xìng”, jiǎn dān shuōjiù shì chéng shú xìng yán de xìngshì zài jiě jué xiàn shí shì jiè zhōng wéi fán suǒ shū de wèn de guò chéng zhōng zhú jiàn zēng jiā de yán zhǐ yào huó de shí jiān gòu chángzǒng huì yòu mǒu xiē fāng zhú jiàn láihuò zhě shì yán běn shēnhuò zhě shì chéng gōng 。 c++ java xiǎn rán dōubù wài kàn [fontid=markstyle="color:#ee6600;background-color:yellow"]c#[/font] yàng guǒ zhǒng yán néng gòu guò de yòu nián shí dài huì xiàn lùn shì hái shì xìng dōudà zēng jiā liǎo
  lindholm: java shù dídí gōng néng zài zēng jiā yào xué de dōng zài zēng jiā guò gōng néng de zēng jiā bìng dìng dài lái xìng de zēng jiā。 java shù de zhǎnbìng méi yòu shǐ xué xiàn gèng jiā dǒu qiàozhǐ shì ràng xiàng yòu fāng yán zhǎn liǎo
   biāo zhǔn
   biāo zhǔn huà yán kāi fàng xíng yán de yōu diǎn quē diǎn zài
  lindholm: duì kāi fàng yǔn zhuān yòu kuò zhǎn yòu quán wēi de qiáng zhì xìng biāo zhǔn yán huò zhě yùn xíng huán jìng lái shuō cún zài shénme quē diǎnyǔn zhuān yòu kuò zhǎn jiù wèi zhe yǔn chǎng shāng xià tào bǎng jià bié zhòng yào de shì ràng zhěng píng táiér zhǐ shì zhōng fēn wán quán biāo zhǔn huàcái néng jué chǎng shāng men yòng gāo céng de zhuān yòu api xià tào yào qiú yòu xuǎn chǎng shāng de yóu men yào yòu chuàng zào xìngyòu yào jiān róng xìng
  stroustrup: duì yán c/c++ lái shuōjiàn zhèng shì biāo zhǔn iso biāo zhǔnzuì de hǎo chùzài fáng zhǐ mǒu chǎng shāng cāo zòng zhè zhǒng yán dàngchéng de yáo qián shùduō chǎng shāng de jìng zhēng gěi yòng dài lái de shì jiào de jià wèi jiào hǎo de wěn dìng xìng
   zhuān yòu yán de hǎo chù shì liú xíngèr shì piányí guò děng bèi tào láo liǎo zhī hòuqíng kuàng jiù huì biàn huà), sān shì duì shāng xìng qiú zuò chū kuài de fǎn yìng
   biāo zhǔn huà yán de diǎn zhī shì néng lüè shū yòng de qiú zài at&t zhōng suǒ kǎo de dōng guī kào xìng xiàolǜ yào qiúgēn xiē tōng chǎng shāng guān zhù de zhòng ruǎn jiàn xiāng gēn běn tóng 'ér xiē gōng hěn rán zhǐ guān zhù zhù yào de qiú
   rán 'érduō shù gòu shēn chù qián yán de gōng dōuyòu zhe shū de qiú。 c++ de shè shì kāi fànglíng huó gāo xiào denéng gòu mǎn suǒ néng xiǎng xiàng de rèn qiúgēn de xiàn dài yán xiāng , c++ de jiāzhǎng shì zuò fēng wèi shǎo zhī yòu shǎoyuán yīn jiù zài zhèdāng rán néng zàn shǎng zhè diǎn de rén huì gòu bìng c++ dewēi xiǎn”。
   yōng yòu zhèng shì kāi fàng biāo zhǔn de yán zhù yào shì wéi biān chéng gōng de shǐ yòng zhě deér yōng yòu zhuān shǔbiāo zhǔnde yánzhù yào shì wéi chǎng shāng de
   xiāng guān tiáo: aop
oop de běn xiǎng
  oop de duō yuán shǐ xiǎng dōulái zhī Simula yánbìng zài Smalltalk yán de wán shàn biāo zhǔn huà guò chéng zhōng dào gèng duō de kuò zhǎn duì qián de xiǎng de chóngxīn zhù jiě shuō OO xiǎng oopL jīhū shì tóng zhǎn xiāng jìn de hán shù shì chéng shè ( functional-programming) luó ji shì chéng shè ( logic-programming) suǒ dài biǎo de jiē jìn de shí suàn xíng suǒ tóng de shìoop jīhū méi yòu yǐn jīng què de shù xué miáo ér shì qīng xiàng jiàn duì xiàng xíng néng gòu jìn de fǎn yìng yìng yòng lǐng nèi de shí zhī jiān de guān běn zhì shì gèng jiē jìn zhǒng rén lèi rèn zhī shì suǒ cǎi yòng de zhé xué guān de suàn xíngyóu dǎo zhì liǎo rán de huà jiù shì oop dào shì shénme? [D&T1988][B.S1991].。 zài oop zhōngduì xiàng zuò wéi suàn zhù yōng yòu de míng chēngzhuàng tài jiē shòu wài jiè xiāo de jiē kǒuzài duì xiàng xíng zhōngchǎn shēng xīn duì xiàngjiù duì xiàng xiāo huǐ sòng xiāo xiǎng yìng xiāo jiù gòu chéng oop suàn xíng de gēn běn
   duì xiàng de chǎn shēng yòu liǎng zhǒng běn fāng shì zhǒng shì yuán xíng( prototype) duì xiàng wéi chǔ chǎn shēng xīn de duì xiàng zhǒng shì lèi( class) wéi chǔ chǎn shēng xīn duì xiàngyuán xíng de gài niàn jīng zài rèn zhī xīn xué zhōng bèi yòng lái jiě shì gài niàn xué de zēng xìngyuán xíng xíng běn shēn jiù shì tōng guò gōng yòu dài biǎo xìng de duì xiàng wéi chǔ lái chǎn shēng zhǒng xīn de duì xiàngbìng yóu chǎn shēng gèng shí yìng yòng de duì xiàngér yuán xíng - wěi tuō shì oop zhōng de duì xiàng chōu xiàngdài gòng xiǎng zhì zhōng de zhǒng lèi gōng liǎo huò zhě duō duì xiàng de tōng yòng xìng miáo cóng xíng shì huà de guān diǎn kànlèi lèi xíng yòu guānyīn lèi xiāng dāng shì cóng gāi lèi zhōng chǎn shēng de shí de ér zhè yàng de guān diǎn huì dài lái xiē máo dùn jiào diǎn xíng de jiù shì zài chéng xià lèiduì xiàng lèiduì xiàng zhī jiān de xíng wéi xiāng róng xìng néng hěn nán dàozhè jiù shì oop zhōng cháng bèi yǐn yòng de --- lèi xíng( subtype) děng lèi( subclass) [Budd2002]。 ér zài zhǒng suǒ yòu jiē duì xiàng de shì jiè guān bèi jǐng xiàzài lèi xíng chǔ shàng hái dàn shēng chū liǎo zhǒng yōng yòu yuán lèi( metaclass) de xīn duì xiàng xíng lèi běn shēn shì zhǒng lèi de duì xiàng shàng sān zhǒng gēn běn tóng de guān diǎn dìng liǎo sān zhǒng lèi( class-based) , yuán xíng( prototype-based) yuán lèi( metaclass-based) de duì xiàng xíngér zhè sān zhǒng duì xiàng xíng jiù dǎo zhì liǎo duō tóng de chéng shè yán guǒ men zàn shí jìng tài dòng tài de chā bié fàng zài biān)。 shì de men jīng cháng jiē chù de C++,Java dōushì shǐ yòng lèi de duì xiàng xíngdàn chú zhī wài hái yòu hěn duō men suǒ méi yòu jiē chù de oopL cǎi yòng liǎo wán quán yàng de duì xiàng xíng men shì zài yòng lìng wài zhǒng guān diǎn quán shì oop de nèi hán
   shénme shì oop de běn xiǎng jiàn de shí xiàn jiē kǒu fēn kāibìng qiě ràng jiàn yòu duō tài xìng guòliǎng zhě hái shì yòu gēn běn de tóngoop qiáng diào zài chéng gòu zào zhōng yán yào de chéngshǐ yòng lèishǐ yòng duì xiàngduì xiàng chuán xiāo 。 gp guān xīn chéng huò shì chéng de kāi duān shì fēn chǎn pǐn de fēn lèiyòu xiē shénme zhǒng lèi men de xíng wéi jiù shì shuōliǎng jiàn dōng xiāng děng wèi zhe shénmezěn yàng zhèng què dìng xiāng děng cāo zuò dān dān shì xiāng děng cāo zuò me jiǎn dān wǎng shēn chù fēn jiù huì xiànxiāng děngzhè bān guān niàn wèi zhe liǎng duì xiàng fēnhuò zhě zhì shǎo běn fēn shì xiāng děng de men jiù yòu tōng yòng de xiāng děng cāo zuòzài shuō duì xiàng de zhǒng lèijiǎ shè cún zài shùn liè duì shùn liè de cāo zuò me zhè xiē cāo zuò de shì shénmecóng quán héng de jiǎo kàn men yīnggāi xiàng yòng gōng shénme yàng de shùn liègāi zhǒng liè shàng cún zài xiē cāo zuò zhǒng pái shì men yào dezhǐ yòu duì zhè xiē jiàn de gài niàn xíng fēn lèi gǎo qīng chǔ liǎo men cái néng dào shí xiàn de wèn shǐ yòng múbǎn chéng hái shì hóngshǐ yòng shénme yán shù? gp de běn guān diǎn shì chōu xiàng de ruǎn jiàn jiàn men de xíng wéi yòng biāo zhǔn de fēn lèi xué fēn lèichū diǎn jiù shì yào jiàn zào zhēn shí degāo xiào de jué yán de suàn shù jié gòudāng rán zuì zhōng de zài hái shì yánméi yòu yán méi biān chéng。 stl shǐ yòng c++, yòng ada lái shí xiànyòng de yán lái shí xiàn xíngjiēguǒ huì yòu suǒ tóngdàn běn de dōng shì yàng dedào chù dōuyào yòng dào 'èr fēn chá zhǎo pái ér zhè jiù shì rén men zhèng zài zuò deduì róng de tóng de yán huì dài lái qīng wēi de tóngdàn shì běn de bié hěn qīng chǔ shì gp suǒ cún de fēn jiě men jué dìng yào jiàn swap, rán hòu zhǐ chū zhè jiàn zài tóng de yán zhōng guǒ gōng zuòxiǎn rán zhòng diǎn shì fēn lèiér oop suǒ qiáng diào de rèn wéi shì guòfèn qiáng diào deshì qīng chǔ de dìng lèi zhī jiān de céng guān oop gào liǎo jiàn céng guān què méi yòu gào zhè xiē guān de shí zhì
  ( zhè duàn tài hǎo jiěyòu xiē shù néng yào guò duàn shí jiān cái huì yòu shì de zhōng wén fān héng héng zhě
   miàn xiàng duì xiàng de biān chéng fāng oop shì jiǔ shí nián dài cái liú xíng de zhǒng ruǎn jiàn biān chéng fāng qiáng diào duì xiàng dechōu xiàng”、“ fēng zhuāng”、“ chéng”、“ duō tài”。 men jiǎng chéng shè shì yóushù jié gòu” +“ suàn chéng decóng hóng guān de jiǎo jiǎngoop xià de duì xiàng shì biān chéng wéi zhōng xīn deshì miàn xiàng chéng de duì xiàng men jīn tiān yào jiǎng de OOD shì miàn xiàng xìn de duì xiàngshì yòng xìn wéi zhōng xīn de
OOP shù de shǐ
  miàn xiàng duì xiàng shù zuì chū shì cóng miàn xiàng duì xiàng de chéng shè kāi shǐ de de chū xiàn 60 nián dài simula yán wéi biāo zhì。 80 nián dài zhōng hòu miàn xiàng duì xiàng chéng shè zhú jiàn chéng shúbèi suàn jiè jiě jiē shòurén men yòu kāi shǐ jìn kǎo miàn xiàng duì xiàng de kāi wèn zhè jiù shì jiǔ shí nián dài MicrosoftVisual liè oop ruǎn jiàn de liú xíng de bèi jǐng
   chuán tǒng de jié gòu huà fēn shè kāi fāng shì xiàn xìng guò chéngyīn chuán tǒng de jié gòu huà fēn shè fāng yào qiú xiàn shí tǒng de guǎn guī fànchǔlǐ shù quányòng néng quán miàn wán zhěng qiú
   chuán tǒng de ruǎn jiàn jié gòu shè fāng nán shì yìng ruǎn jiàn shēng chǎn dòng huà de yào qiúyīn wéi guò chéng wéi zhōng xīn jìn xíng gōng néng ruǎn jiàn de kuò chōng yòng néng hěn chā
   duì xiàng shì duì xiàn shí shì jiè shí de yīn miàn néng gèng róng jiě qiú shǐ yòng fēn zhě zhī jiān yòu tóng de jiào bèi jǐng gōng zuò diǎn hěn hǎo gōu tōng
   bié miàn xiàng duì xiàng de kāi chuán tǒng guò chéng de kāi de yào yòuduì xiàng shí bié chōu xiàngfēng zhuāngduō tài xìng chéng
   duì xiàng (Object) shì xiàn shí shí de chōu xiàngyóu xiàn shí shí de guò chéng huò xìn shēng lái dìng duì xiàng bèi rèn wéi shì shù shǔ xìng chéng fāng fēng zhuāng zài de shí zhè chéng chǎn shēng gāi duì xiàng de dòng zuò huò duì jiē shòu dào de wài jiè xìn hào de fǎn yìngzhè xiē duì xiàng cāo zuò yòu shí chēng wéi fāng duì xiàng shì dòng tài de gài niàn , zhōng de shǔ xìng fǎn yìng liǎo duì xiàng dāng qián de zhuàng tài
   lèi (Class) yòng lái miáo shù yòu xiāng tóng de shǔ xìng fāng de duì xiàng de dìng liǎo gāi zhōng měi duì xiàng suǒ gòng yòu de shǔ xìng fāng duì xiàng shì lèi de shí
   yóu shàng fēn nán kàn chūjìn guǎn oop shù gèng kàn zhōng yòng de duì xiàng xíngdàn mùdì dōushì biān chéng wéi de deér shì yòng de xìn wéi zhōng xīn dezǒng xiǎng yòng de xìn dào mǒu yòng gǎn xīng dechéng duì xiàngzhōng
OOP de yōu quē diǎn
  · oop de yōu diǎnshǐ rén men de biān chéng shí de shì jiè gèng jiā jiē jìnsuǒ yòu de duì xiàng bèi shǔ xìng fāng jiēguǒ biān chéng jiù gèng jiā yòu rén xìng huà
  ·oop de yòu quē diǎnjiù C++ ér yányóu miàn xiàng gèng gāo de luó ji chōu xiàng céngshǐ C++ zài shí xiàn de shí hòu zuò chū xìng néng shàng miàn de shēngyòu shí hòu shèn zhì shì zhì mìng de ( suǒ yòu duì xiàng de shǔ xìng jīng guò nèi zhì duō zhòng zhǐ zhēn de jiànjiē yǐn yòng shì xìng néng sǔn shī de zhù yào yuán yīn zhī guò zhě de xiàn xìng zài wèi shǐ yòng guò VC++ wài de miàn xiàng duì xiàng yánsuǒ shì shí fēn kěn dìng yòu rén xiào chū lái liǎo… )。
   zài suàn fēi zhǎn de jīn tiān néng huì shuō dīng diǎn de xìng néng shēng méi shí me liǎoshì decóng miàn xiàng duì xiàng de jiǎo shǐ de biān chéng de jié gòu gèng jiā qīng wán zhěngshù gèng jiā guǎn xìng néng de shēng dài lái zhè me duō de hǎo chùméi yòu yóu zuò wěn zuàn de shēng
   guòzài mǒu xiē duì yào qiú gāo shū chǎng zuò de shì diàn xìn de jiāo huàn tǒngměi miǎo zhōng yòu chāo guò bǎi wàn de rén tóng shí jìn xíng diàn huà jiāo huàn guǒměi shù jiāo huàn guò chéng dōushì duì xiàng me zǒng de xìng néng sǔn shī jiāng shì tiān wén shù !!
   huò zhě zhè gòu tiē shēnzài jiǎ shòu pìn yóu shè gōng lǎo bǎn wàng zuò chū lái de yóu gèng duō de jiān dào gèng duō de diàn nǎo shǐ yòng zhěyóu měi miǎo zhōng de yùn xíng de zhēn gèng duō dàn bào zhà gèng duōgèng huá me huì xiàn shǐ yòng C++ huì shǐ de chéng biàn bèn zhuō mǎn de qiúchú fēi fēi yào de yóu yùn xíng bēn téng de shàng ( guǒ shìér yòu jiān chí yòng C++ de duì xiàng biān chéng me qǐng jiǎn shǎo zhùjué de qiāng de wēi )。
   guǒ shì míng wán níng de rén shuō xiāng xìn oop huì yòu xìng néng shàng de sǔn shī me céng kàn dào zài CSDN shàng guān VB VC zhí xíng xiàolǜ de tǎo lùn de wén zhāngjiǎng shù de jiù shì shǐ yòng liǎo MFC hòuzhí xíng xiàolǜ shèn zhì VB kāi chū lái de dōng qǐng wèi yàn zhèng xià guǒ shǐ yòng de shì chún cuì de C yán de huà me dìng huì zài VB biān chū lái de dōng yào kuài hěn duō (GetTickCount hán shù chá yuè MSDN, guǒ xiǎng gèng jiā jīng què xiē shǐ yòng QueryPerformanceCounter hán shù )。
OOP de wèi lái
  ( zhuàn wén /BjarneStroustrup&TimLindholm biān / mèng yán
   zài wèi lái sān niánchéng yuán biān xiě dài de fāng shì huì shēng xiē biàn huà
  Stroustrup: zài C++ zhōngjiǎ méi yòu shì de zài bèi hòu zhī chēngwán chéng rèn zhòng yào de gōng zuò dōukě néng shì hěn deér dàn yòu liǎo shì de rèn dōng dōukě bèi men cāo kòng zhǎng zhī jiānyīn gòu zào shǐ yòng chéng de zhòng yào xìng zēngzhè 'àn shì menfàn xíng chéng shè (genericprogramming) jiāng huì yuè lái yuè duō bèi yùn yòngzhǐ yòu tōng guò GP, men cái néng què bǎo de tōng yòng xìng gāo xiàolǜ hái zài fēn shì suàn jiàn( components)” yìng yòng lǐng huì chū xiàn rén de zēngzhǎngjiù fēn chéng yuán 'ér yántōng guò shǐ yòng fāng biàn shì yòng de chéng zhè xiē kāi gōng zuò huì biàn jiǎn dān míng liǎo
   xiàn zài yòu shìbiān chǎng shāng shì yòu deduì xiàng xíng xíng jiè miàn (GUI) jié tuī xiāo gěi yòng wēi ruǎn de COM Inprise de lèi shǔ xìng“ properties”。 duì yòng lái shuōzhè yào qíng yuàn suǒ wàng kàn dào de chéng yīnggāi shì yòng biāo zhǔn C++ zàojiè miàn líng huózhí xìn lài de chéng tōng chángzhè xiē jiè miàn yīnggāi shì píng tái guān de。 C++ de biǎo néng qiáng shǐ shǐ yòng liàng de hóng yìng gāi chéng zhè yào qiújiù suàn yòu xiē fāng bǎi fēn zhī bǎi de zūn shǒu zhè yuán yìng gāi jiāng duì píng tái chǎng jiā de lài xìng xiàn zhì láizhè biāo de wán chéng qíng kuàng fǎn yìng ruǎn jiàn gōng chǎn duì yìng yòng chéng kāi hángyè de guān zhù chéng huái qián duì xiē dekuà píng tái chǎng shāng lái shuōbìng cún zài xiāng yìng de shì chǎng guǒ néng gòu jiàn zhè yàng de shì chǎng néng gòu jìn chǎng shāng men wéi zuò chūzhēn zhèng yòu yòng dechǎn pǐn
  Lindholm: duì biān xiě dài de kāi zhě lái shuōzhù yào de dòng liàng réng jiāng shì liǎng wǎng luò fēn shì héng héng jiù shì shè kāi fēi dān ruǎn jiàn de qiú fēn de yìng yòng chéng jiāng huì shì líng líng yùn xíng zài dān shè bèi shàngér shì yùn yòng liǎo lèi EJB JSP zhī lèi shù depíng tái guān de fēn shì chéng chéng yuán men jiāng miàn duì fēn shì suàn de chóngchóng xiǎn zhè jiāng duì duō chéng yuán suǒ lài de shè shì shù zhí jué gòu chéng yán jùn de tiǎo zhànzhè shì xuǎn biān chéng yán zhī qián rèn shí dào dejìn guǎn tóng yán de shè xìng néng jìn huò zhě 'ài zhè zhuǎn huà
   zài wǎng luò yìng yòng de zēng cháng zhōng hěn zhòng yào de fēn shì xiǎo xíng dòng shè bèi shū Internet shè bèi de bào zhà xìng zēngzhǎngzhè xiē shè bèi yòu de cāo zuò tǒnghuò zhě zhǐ zài mǒu zhǒng dìng de shè bèi lǐng nèi yòu gòng tóng de cāo zuò tǒng men xiàn zài hái liè chū zhè xiē shè bèi héng héng jiā tíng jiē shè bèifēng diàn huàdiàn bào zhǐ、 PDA、 dòng wǎng luò shè bèi děng děngdàn shì zhè xiē shè bèi lǐng de shù liàng shēn chéng jiāng huì hěn kuài biàn nán gūliáng mendōu zhī dào zhè shì chǎng jīng rén, PC de xīng zhī xiāng guò xiǎo cài diéyīn zài zhè xiē shè bèi de yìng yòng chéng shì chǎng shàngjìng zhēng jiāng huì xiāng dāng cán huò shèng de zhòng yào shǒu duàn zhī jiù shì jìn kuài jìn shì chǎngkāi rén yuán yào yōu xiù de gōng xùn gāo xiào zhuàn xiě diào shì men de ruǎn jiànpíng tái guān xìng shì zhì shèng jué zhī shǐ chéng yuán néng gòu kāi chū zhī chí duō zhǒng shè bèi píng tái de ruǎn jiàn
   de lìng biàn huà shì men duì dài (Java) shù (XML) xié tóng xíng yìng yòng chéng de kāi néng jiāng huì duàn gāozhè zhǒng xié tóng shì kāi qiáng yìng yòng chéng de xīn biāo zhī men cóng XML de xùn liú xíng ebXML guī fàn de jìn zhǎn zhōng jīng kàn dào liǎo zhè shì。 ebXML shì zhēn duì diàn shāng guó mào de XML de kāi fàng shì chǔ gòu jiàyóu lián guó mào jìn diàn shāng zhōng xīn (UN/CEFACT) jié gòu xìng xìn biāo zhǔn tuī jìn zhì (OASIS) gòng tóng kāi
   men néng fǒu wàng chū xiàn zhēn zhèng de miàn xiàng jiàn (component-oriented) de yán de chuàng zào zhě huì shì shuí
  Stroustrup: huái zhè lǐng zhōng zhī suǒ quē chéng guǒzhèng shì yīn wéi rén men héng héng zhù yào shì xiē fēi chéng yuán men héng héng duì jiànzhè hán de yǎn liǎo tài duō de wàngzhè xiē rén shì mèng xiǎngyòu cháo jiàn huì mǒu zhǒng fāng shì chéng yuán gǎn chū shǐ tái hòu xiē chènzhí deshè yuánzhǐ yòng xiān tiáozhěng hǎo de jiàn shǔ biāo tuō tuō fàng fàngjiù tǒng chū láiduì ruǎn jiàn gōng chǎng shāng lái shuōzhè zhǒng xiǎng hái yòu lìng céng men rèn wéidào shí hòu zhǐ yòu men cái bǎo liú yòu yào de shùyòu néng biān xiě zhè yàng de jiàn
   zhè zhǒng xiǎng yòu zuì běn de miù zhè zhǒng jiàn hěn nán huò guǎng fàn huān yíng dān de jiàn huò kuàng jià (framework), guǒ néng gòu mǎn yìng yòng chéng huò zhě chǎn lǐng duì suǒ chū de fēn yào qiú de huàduì zhì zào zhě lái shuō jiù shì huá suàn de chǎn pǐnér qiě shù shàng shì hěn kùn nán shì gāi chǎn nèi de jìng zhēng zhě hěn kuài jiù huì xiàn guǒ suǒ yòu réndōu cǎi yòng zhè xiē jiàn me zhī jiān de chǎn pǐn jiù huì biàn tiān xià tóngméi shí me bié men jiāng lún wéi jiǎn dān de bàn shì yuánzhù yào rùn jiāng zuàn jìn xiē jiàn / kuàng jià gōng yìng shāng de yāo bāo
   xiǎo jiànhěn yòu yòng guò chǎn shēng liǎo de gàng gān xiào yìngzhōng xíng degèng tōng yòng de jiàn fēi cháng yòu yòngdàn shì gòu zào shí yào fēi tóng xún cháng de tánxìng
   zài C++ zhōng men zōng yùn yòng tóng gòng xiǎng xíng shì de lèi (classhierarchies), shǐ yòng templates jīng xīn zào de jiē kǒuzài zhè fāng miàn liǎo dìng de jìn zhǎn dài zài zhè lǐng xiē yòu yòu yòng de chéng guǒ guò rèn wéi zhè zhǒng chéng guǒ hěn néng shì zhǒng xīn de C++ chéng shè fēng ér shì zhǒng xīn de yán
  Lindholm: biān xiě miàn xiàng jiàn de yìng yòng chéng hǎo xiàng gèng duō de shì tóu shè chéng yuán guǎn fāng miàn de wèn ér shì biān chéng yán wèn dāng rán mǒu xiē yán zài zhè fāng miàn yòu xiān tiān yōu shì guò guǒ shuō yòu shénme shù bān de xīn yán néng gòu jiǎn huà jiàn de biān xiě nán chún cuì shì zhǒng dǎo
   wēi ruǎn jīng jiāng quán zhù zài C# shàng yán cóng
  Stroustrup:C++ zài xià shí nián réng rán jiāng shì zhǒng zhù liú yánmiàn duì xīn de tiǎo zhàn huì fèn yìng duì chuàng zào liǎo me duō chū tǒng de yánjué huìzuò shì luò huā liú shuǐ chūn ”。
   wàng wēi ruǎn rèn shí dào zài C++( zhǐ de shì ISO biāo zhǔn C++) shàng yòu zhe de , C++ shì IT shì jiè nèi rén zhī jiān de zuò qiáo liángshì gòu zào xíng tǒng qiàn shì tǒng de yòu xiào gōng shì mǎn gāo xìng néng qiú de yán gèng zhù zhòng xiē píng wěn de shāng yòng chéng
   jìng zhēng
  C# huì huì huò guǎng fàn de jiē shòubìng qiě diào de yán
  Lindholm: tōng cháng zhǒng yán huì cóng bié de yán huò huì bèi diào xiē jiān dìng de Fortran chéng yuán hái yòng zhe Fortran duì rén lái shuō yán de xuǎn dāng rán yīn shí 'ér dàn jiù zhěng 'ér yán yán de zhǒng lèi zhǐ huì zēng jiù shì shuō men zhī jiān de guān shìyòu yòu ér shìyòu méi ”。
   duì xīn yán de jiē shòu chéng wǎng wǎng jué néng suǒ 。 Java shù bèi xùn jiē shòuyuán yīn shì duō fāng miàn de, Internet WorldWideWeb jiē kǒuzài shù miàn qián de cuò zhé gǎnduì Java shù zhǎn fāng xiàng de quán miàn yǐng xiǎng néng dōushì yuán yīnlìng zhòng yào de yuán yīn shì Java chǎng shāngzhè wèi zhe zài jiān róng chǎn pǐn miàn qián cóng róng xuǎn
  C# shì fǒu huì huò guǎng fàn jiē shòushì qíng kuàng 'ér dìngzǒng de lái shuō xiē duì píng tái guān xìng chǎng shāng guān xìng guān xīn de chéng yuán néng huì huān C#。 xiē gēn wēi ruǎn píng tái kǔn zài rén dāng rán néng xiǎng yào xún zhǎo VB VC de chū de dài pǐndàn shì duì chéng kuà píng tái zhí xíng néng bié guān zhù de chéng yuánjiāng huì jiān shǒu Java zhī lèi de yánzhè zhǒng néng duì duō zhòng fǎng wèn shè bèi( multipleaccessdevices) fēn shì suàn xíng zhì guān zhòng yàoér Java yán gōng liǎo biāo zhǔn de chǎng shāng yùn xíng shí huán jìng
  Stroustrup:C# de liú xíng chéng jīhū wán quán jué wēi ruǎn tóu de jīn duō shǎokàn shàng C# de xīng kěn dìng huì shēng diào xiē yán de dàn shì shì shí shàng wèi 。 Java de péng zhǎn bìng méi yòu gěi C++ dài lái shuāi bài。 C++ de yìng yòng réng rán zài wěn dìng zēngzhǎngdāng rán jīng shì bào zhà xìng de zēngzhǎng liǎo)。 de yán hái néng huò de zhī
   guò shí zài kàn chū yòu shénme yào zài míng zhǒng xīn de zhuān yòu yán bié shì wēi ruǎn shēng VB, C#?
tóng oop yán yòu shénme yōu shì liè shì
  Stroustrup: C++ de yōu diǎn shǐ zhì zhōng dōushì zhè me tiáolíng huógāo xiàoér qiě bìng fēi zhuān yòu yánxiàn zài ISOC++ biāo zhǔn de chū xiàngǒng liǎo zuì hòu diǎn
   rèn wéi C++ de gāo xiào shì zuì běn de yōu diǎnzhè zhǒng gāo xiào lái yòu de shù suàn xíngjiào zhī Java C#, zhè zhǒng xíng gèng jiā tiē jìn guò xiē chéng cái zhēn zhèng wàng zhè me gāo de xiàolǜzhè shì wèn rèn wéi zhè lèi chéng fēi cháng duōrén men duì suàn de wàngyǒng yuǎn chāo yuè yìng jiàn de zhǎn hěn xiǎn rán, Java C# de shè zhě de xiǎng tóng men rèn wéizài hěn duō fāng xiàolǜ wèn guān jǐn yào
  C++ zhù yào de quē diǎnguī zuì zāo gāo de jiào shì xiē shǐ zhōng rèn wéi C++ shì chún cuì miàn xiàng duì xiàng yán de rén xiē C++ dàngchéng C yán biàn de rén dǎo zhì liǎo zhè zhǒng qíng kuàng), guī zuì tóng píng tái shàng de zhì xìngguī zuì wán zhěng biāo zhǔn de biān shí xiànguī zuì píng tái guān de tǒng chéng de quē shǎo
   zhè xiē wèn guī diǎnjiù shì quē zhuó yuè de chǎng shāngnéng gòu mǎn zhěng C++ shè de qiúyǒng tóu liàng de jīn kāi yào de chéng
  Lindholm:Java shù de chéng gōngshì yīn wéi zài shì de shí jiānchū xiàn zài shì de diǎnér qiě xuǎn liǎo yán suàn píng tái de zhī chí biāo。 Java bìng shì zài suǒ yòu chǎng yōu oop yándàn shì duì chū xiàn de xīn wèn néng gòu jiě jué hěn chū miàn xiàng Internet suàn huán jìng miǎn liǎo C++ zhōng huì de jié gòuchéng gōng fān yuè liǎo chéng zhì de nǎo rén wèn shōu zhì xiǎn zhù gāo liǎo shēng chǎn shuàijiàng liǎo zài wǎng luò bèi jǐng xià shǐ yòng yòu guān 'ān quán xìng dòng tài jiā zài de liè shè xuǎn yíng liǎo zhèng zài chū xiàn de qiú yuàn wàngzhè xiē xìng shǐ Java jǐn chéng wéi xiàn yòu chéng yuán de xīn ér qiě wéi xīn de chéng yuán chuàng zào liǎo fán róng de shì chǎng kōng jiān
   wài, Java yōng yòu biāo zhǔn huà deèr jìn zhì xíng shì de lèi gōng liǎo yào dedāng rán bìng fēi chōng fēn depíng tái chǎng shāng guān xìngpíng tái chǎng shāng guān xìng yào qiú xiàng shù yòu qīng de guī fànbìng xiē 'ài 'èr jìn zhì biāo zhǔn shí shī de xìng。 C++ suī rán yòu ISO biāo zhǔndàn shí shèn zhì duì xiāng tóng tǒng xiāng tóng zhǐ lìng de píng tái chū shí yòng de bǎn běn jiān róng de 'èr jìn zhì biāo zhǔn
   shǐ shàng hěn duō shǐ yòng de yán bǎo shòu zénànshì yīn wéi gòu chū de xìng néng wèn ér zhè yào guī guò huǎn màn de jiě shì zāo gāo de shōu 。 Java de zǎo shí xiàn yīn wéi tóng yàng de wèn shòu dào yán de píngdàn shì shí jiè xiàng xīn de shí xiàn shù tóu liǎo liàng jīn liǎo xiǎn zhù de xiào guǒ jīn zài fēn chǎng , Java de xìng néng gēn cháng guī de jìng tài biān yán xiāng háo xùn zhè shǐ chéng yuán zài huò píng tái chǎng shāng guān xìng de tóng shí chū xìng néng shàng de dài jià
  C++ bìng méi yòu qiáng zhì shǐ yòng miàn xiàng duì xiàng fāng yīn wèile biān xiě chū de miàn xiàng duì xiàng dài jiù yào qiú chéng yuán men yòu xiāng dāng qiáng de xìnghěn duō gōng jiù shì yīn wéi zhè yuán yīn fàng liǎo C++。 zuò wéi yán, Java de chū de yōu diǎn jiù shì qiáng zhì miàn xiàng duì xiàng fāng yǔn fēi miàn xiàng duì xiàng de jié gòu
  C# jiè C++ Java zhī jiānjiǎo liǎng zhǐ chuányīn gòu 'ān quányòu shī zhī
   duì gōng lái shuōcǎi yòng xīn de yán yào chū dài jià dào hǎo de chéng yuánméi rén shú zhè zhǒng xīn yán), péi xùn fèi yòng gāo jīng rénxué guò chéng zhōng shēng chǎn shuài chǎn pǐn zhì liàng xià jiàngduō nián de jīng yàn suí fēng xiāo shìděng děng zhǒng yán zhè xiē zhàng 'ài
  Lindholm: shuō hěn duìcǎi yòng xīn dōng què shí cháng cháng kāi xiāo guò wèn shìzhè xīn dōng shì fǒu néng gòu jié shěng gèng duō de kāi zhīhuò zhě gōng de gǎi jìnhuò de huí bàohěn duō gōng xiànzhuànxiàng Java shù lùn zài kāi de hòu duānjìn kuài jìn shì chǎngkuài dié dài kāi wéi jiǎn dān xìnghái shì qián duānkuà píng tái shì yòng fàn wéi cóng duān shè bèi dào gāo duān de shùān quán xìng), dōunéng jié shěng de kāi xiāo
   duì xīn shì de jiē cháng cháng shì zài tòng chǔ de zhī xiàhěn chéng shàngzhè zhèng shì Java suǒ jīng de。 Java de chǎn shēngshì duì dāng shí hěn duō tǒng de quē xiàn suǒ zuò chū de fǎn yìng。 Java shù tōng guò xià miàn de shǒu duàn jiǎn qīng liǎo kāi zhě de tòng chǔ: 1) liǎo wǎng luò suàn fāng miàn de qiúshì yìng yùn 'ér shēng。 2) zài shù néng de jué shàngbǎo chí liáng hǎo de pǐn wèi liǎo zhòng de xīn 。 3) cǎi yòng shì qiáng zhì xìng lüè tuī xíng shè jué dìng wài, Java shù jīng chéng wéi xué jiào xué zhōng de zhù liúzhè tóng yàng bǎo zhèng liǎo Java kāi zhě duì de duàn zhuàng
   dàn shì zuì zhòng yào de diǎn shìzài méi yòu lìng zhǒng chéng shè shùnéng gòu xiàng Java yàng yǔn chéng yuán kāi Internet de tóng píng tái zhī shàng de yìng yòng chéng 。 Java píng tái zài zhè fāng miàn de jié chū biǎo xiàn jīng bèi liàng de shí zhèng míng。 Java jīng chéng wéi Internet shàng de quē shěng yìng yòng chéng píng tái, JavaAPIs chéng wéi Internet yìng yòng chéng kāi de tiān rán píng tái
  Stroustrup: wēi ruǎnhuo Sun de jīn qián rēng zài Java、 VB C# zhōngbìng shì yīn wéi liáng xīn xiàn shì yīn wéi men zhēn de xiāng xìn zhè xiē yán néng gòu dài gěi chéng yuán gèng měi hǎo de shēng huóér shì shǐ rán
   yòu shuō rèn wéi ruǎn jiàn gōng chǎng shāng guǒ néng gòu yìng yòng chéng kāi zhě de zhuān shù rèn dān láijiāng huò de jīng duì bèi hòu de jīng fēn wéi huái rèn wéi zhè hěn nán chéng wéi xiàn shí bié shì dāng yìng yòng chéng kāi zhě shǐ yòng kāi fàng debiāo zhǔn huà de gōng shí men yòu duō zhǒng xuǎn cóng 'ér shǐ shàng miàn de xiǎng gèng jiā néng
   duō nián qián, C++ jiù jīng yòu fàn xíng néng ( jiù shì templates STL), yòu yùn suàn zhòng zàiyòu méi lèi xíng men huì huì zài Java de wèi lái bǎn běn zhōng kàn dào zhè xiē xìng? Java shì shì yīnggāi zhè xiē xìng
  Strousturp: cóng 1988-89 nián , C++ jiù jīng yòu liǎo templates。 dàn shì men huā liǎo shàoshí jiān lái liǎo jiě zuì hǎo yùn yòng zhè gōng zǎo chǎng jiā duì template de zhī chí zài pǐn zhì shàng yòu hěn de chā yòu xiē biān chǎng shāng dòng zuò chí huǎnzhì shǎo yòu zhù yào de biān chǎng shānghǎo xiàng shì zhǐ wēi ruǎnwēi ruǎn zài VisualC++4.0 cái kāi shǐ zhī chí template, zài zhī qián zhí shēng chēng template shì guò 'ér yòu méi shí me yòng de shùshí zhì jīn , VisualC++ duì template de zhī chí zài zhù liú biān zhōng shǔ zuì chā de dàng héng héng zhě zhùàn zhōng shēng míng lángjí de fǎn template xuān chuánzhí dào men zhōng xué huì liǎo zhè xiàng shù wéi zhǐzhí dào jīn tiānduì template de zhī chí zài pǐn zhì shàng réng rán yòu dài gǎi jìn
   shàng miàn dào de xiē xìng rèn wéi Java( hái yòu C#) yīnggāi kěn dìng huì zhú jiàn yǐn xiē duì chéng yuán lái shuō zuì yòu yòng de yán xìng gài niànjiāng huì zhú jiàn zhōngchéng wéi jiā zhù liú yán de rán zhī xuǎn jiù shì shuō rèn wéi lèi gòu hán shù múbǎn shū huà zhī lèi de zhìyuǎn yuǎn méi děng zhì zhòng yào duō
  Lindholm: Java shù chéng gōng de yuán yīn zhī jiù shì hěn qīng chǔ xiē gāi zuò men duō wèn wèishénmezhè xiàng xìng shì shì shǎozēng jiā huì dài lái xiē kāi xiāoyùn suàn zhòng zài shì C++ zhōng xiàng qiáng de xìngdàn shì zēng jiā liǎo C++ yán de hěn duō réndōu nán zhāo jià。 Java zài zhǒng néng de quán héng zhī zhōngzuò chū liǎo míng zhì de jué zhǎo dào liǎo néng qiú zhī jiān de wán měi píng héng diǎn
   dāng rán, Java huì zhǎnér qiě zuì zhòng yào de shìxiàn zài shì kāi zhě men zài tuī dòng zhǎn。 Java zēng jiā fàn xíng néng zhè jiàn shìhěn hǎo zhǎn shì liǎo Java shì tōng guò zhěng kāi zhě shè qún de cānyùzài quán héng zhōng jué dìng zhèng què de píng héng diǎnguān zēng jiā fàn xíng lèi xíng( generictypes) de“ Java guī shēn qǐng”( JavaSpecificationRequest,JSR) jīng jìn JCP( JavaCommunityProcess) chéng ér qiě jīng kāi liǎo hěn cháng duàn shí jiāncān jiàn http://java.sun.com/aboutJava/communityprocess/ zhī JSR-014)。 xiàn zàizài JCP zhōngyòu chāo guò 80 JSRs zhèng zài tǎo lùn zhōngzhè chōng fēn xiàn liǎo zhěng duì kāi zhě de fǎn kuì gāo zuòzhè zhèng shì dòng Java píng tái duàn jìn huà de dòng
zhǎn vs. xīn
  (Evolution vs. Revolution)
  C++ shì zhǒng zhǎn xíng de yán, Java C# gèng xiàng shì xīn xíng yán men shì cóng tóu shè de)? shénme shí hòu xīn xíng de yán cái shì de
  Lindholm:Java shù bìng fēi píng kōng chū shìfǎn 'ér gèng xiàng shì zhǎn xíng de。 Java suǒ yòu de xìngzài Java píng tái tuī chū zhī qián zhì shǎo jīng cún zài lìng zhǒng huán jìng zhī zhōng。 Java de gòng xiàn zài zài zhòng duō de xìng quán héng zhōngzuò chū liǎo de xuǎn shǐ chǎn pǐn shí yòngyòu yōu 。 Java shù duì chéng yuán de tài shì yǎngdàn 'ài
  Stroustrup: cóng shù shàng jiǎng bìng rèn wéi Java C# shì shénmecóng tóu shè de xīn xíng yáncháng ruò Java shì cóng shù yuán chū cóng tóu shè gài jiù huì fǎng C/C++ zhǒng chǒu lòu bìng tài de liǎo jīng , Stroustrup zài hěn duō chǎng biǎo shì guò, C++ cǎi yòng C de xíng shìshí zài shì jiān róng xìng běn rén gèng piān 'ài Simula de héng héng zhě)。
   rèn wéizhǐ yòu dāng chéng yuán men miàn duì de wèn shēng liǎo gēn běn de biàn huà de shí hòuhuò zhě dāng men xiàn liǎo quán xīn de yōu yuè de chéng shè shùyòu wán quán néng wéi xiàn cún yán suǒ zhī chí de shí hòu men cái yào quán xīn de yánwèn shì men kǒng yǒng yuǎn pèng dào xiēgēn běn”、“ quán xīnde qíng kuàng
   wéi cóng oop wèn shì lái chēng wéigēn běnde xīn xíng chéng shè shùwéi yòu fàn xíng chéng shè ( genericprogramming) shēng chéng shì chéng shè ( generativeprogramming) shùzhè liǎng xiàng shù zhù yào shì yuán C++templates shù de yùn yòng yòu fēn céng jīng bèi shì wéi miàn xiàng duì xiàng hán shù shì yán (functionallanguages) de yào chéngfènxiàn zài biàn chéng zhèng shì yòng chéng shòu de shù liǎo duì qián C++ múbǎn (template) chéng shè de chéng guǒ fēi cháng xīng fèn xiàng POOMA,Blitz++ MTL děng chéng zài hěn duō fāng gǎi biàn liǎo shù zhí suàn de fāng shì
  C# de mài diǎn”, jiù shì men de jiǎn dān xìngxiàn zài Java shì shì kuài shī zhè mài diǎn liǎo
  Stroustrup: xīn yán zǒng shì xuān chēng jiǎn dānduì lǎo yán de xìng duō fēi shí zhè zhǒng suǒ wèi dejiǎn dān xìng”, jiǎn dān shuōjiù shì chéng shú xìng yán de xìngshì zài jiě jué xiàn shí shì jiè zhōng wéi fán suǒ shū de wèn de guò chéng zhōng zhú jiàn zēng jiā de yán zhǐ yào huó de shí jiān gòu chángzǒng huì yòu mǒu xiē fāng zhú jiàn láihuò zhě shì yán běn shēnhuò zhě shì chéng gōng 。 C++ Java xiǎn rán dōubù wài kàn C# yàng guǒ zhǒng yán néng gòu guò de yòu nián shí dài huì xiàn lùn shì hái shì xìng dōudà zēng jiā liǎo
  Lindholm: Java shù dídí gōng néng zài zēng jiā yào xué de dōng zài zēng jiā guò gōng néng de zēng jiā bìng dìng dài lái xìng de zēng jiā。 Java shù de zhǎnbìng méi yòu shǐ xué xiàn gèng jiā dǒu qiàozhǐ shì ràng xiàng yòu fāng yán zhǎn liǎo
   biāo zhǔn
   biāo zhǔn huà yán kāi fàng xíng yán de yōu diǎn quē diǎn zài
  Lindholm: duì kāi fàng yǔn zhuān yòu kuò zhǎn yòu quán wēi de qiáng zhì xìng biāo zhǔn yán huò zhě yùn xíng huán jìng lái shuō cún zài shénme quē diǎnyǔn zhuān yòu kuò zhǎn jiù wèi zhe yǔn chǎng shāng xià tào bǎng jià bié zhòng yào de shì ràng zhěng píng táiér zhǐ shì zhōng fēn wán quán biāo zhǔn huàcái néng jué chǎng shāng men yòng gāo céng de zhuān yòu API xià tào yào qiú yòu xuǎn chǎng shāng de yóu men yào yòu chuàng zào xìngyòu yào jiān róng xìng
  Stroustrup: duì yán C/C++ lái shuōjiàn zhèng shì biāo zhǔn ISO biāo zhǔnzuì de hǎo chùzài fáng zhǐ mǒu chǎng shāng cāo zòng zhè zhǒng yán dàngchéng de yáo qián shùduō chǎng shāng de jìng zhēng gěi yòng dài lái de shì jiào de jià wèi jiào hǎo de wěn dìng xìng
   zhuān yòu yán de hǎo chù shì liú xíngèr shì piányí guò děng bèi tào láo liǎo zhī hòuqíng kuàng jiù huì biàn huà), sān shì duì shāng xìng qiú zuò chū kuài de fǎn yìng
   biāo zhǔn huà yán de diǎn zhī shì néng lüè shū yòng de qiú zài AT&T zhōng suǒ kǎo de dōng guī kào xìng xiàolǜ yào qiúgēn xiē tōng chǎng shāng guān zhù de zhòng ruǎn jiàn xiāng gēn běn tóng 'ér xiē gōng hěn rán zhǐ guān zhù zhù yào de qiú
   rán 'érduō shù gòu shēn chù qián yán de gōng dōuyòu zhe shū de qiú。 C++ de shè shì kāi fànglíng huó gāo xiào denéng gòu mǎn suǒ néng xiǎng xiàng de rèn qiúgēn de xiàn dài yán xiāng , C++ de jiāzhǎng shì zuò fēng wèi shǎo zhī yòu shǎoyuán yīn jiù zài zhèdāng rán néng zàn shǎng zhè diǎn de rén huì gòu bìng C++ dewēi xiǎn”。
   yōng yòu zhèng shì kāi fàng biāo zhǔn de yán zhù yào shì wéi biān chéng gōng de shǐ yòng zhě deér yōng yòu zhuān shǔbiāo zhǔnde yánzhù yào shì wéi chǎng shāng de
   xiāng guān tiáo: AOP
xiàngguāncí
phpmvcFramework