.

, 1998 , Microsoft Systems Journal. , .

- 1980- . 1980- , . . , . C++ Smalltalk . , , , , . - , . , , Apple Object Pascal, SmallTalk ParePlace Digitalk, Turbo C++ Borland.

, , . , (collections) . C++:

 class Dog {     public:     virtual void Bark(void); }; class Pug : public Dog {     public:     virtual void Bark(void); }; class Collie : public Dog {     public:     virtual void Bark(void); }; 

Collie Pug Dog, (generic) :

 void BarkLikeADog(Dog& rdog) {     rdog.Bark(); } 

Bark , C++ . , BarkLikeADog , ; , , Dog. , - .

, . . , . . , , . Bark Pug:

 void Pug::Bark(void) {     this->BreathIn();     this->ConstrictVocalChords();     this->BreathOut(); } 

, Bark Dog , ? , , (barks) (dog)? , Pug Dog. . , , . .

, , , , , . , . , , , . - . . , . , . - . , . , - , (Component Object Model - ) Microsoft, Orbix Object Request Broker Iona Digitalk, - Java1.

, - , , " " " " , . Java:

 interface IDog {   public void Bark(); }; class Pug implements IDog {   public void Bark( ){...} }; class Collie Implements IDog {   public void Bark( ){...} }; 

Collie Pug IDog, :

 void BarkLikeADog(IDog dog) {     dog.Bark(); } 

, C++. , Bark IDog , IDog Pug Collie . , Pug, Collie , " " (bark), Pug Collie , IDog.

, ( , ). . .

, . , (opaque) . , , , , , , , . Excel, , . Excel 25 , (Linking, Embedding, Inplace Activation, Automation, Active Document Objects, Hyperlinking . .). (vptr) , 100 , , . , 100 , .

 .  1.     com

Excel , . QueryInterface. ( , IOleItemContainer), . , , , Excel , . , 1000 . , 16 Excel. , 1000 16 000 , . 100 , , . , 32 , . , , 1000- 32 100 , , Excel. , .

 .  2.

, Excel vptr, , . . A.1 . , , , vptr . , , , . . . vptr, . , vptr , . .2. , , , , .

, vptr, Excel . . 16 , 32 , vptr , . , - , 32 vptr . , Excel vptr, " " (cell-by-cell). , , vptr. " " (flyweight objects), , " " (tearoff) , " " (Crispin Goswell. Programmer's Cookbook) ( http://www.microsoft.com/oledev). (lazy evaluation) vptr.

, . . , , , , . , , , . , . Microsoft Transaction Server ( Microsoft MTS).

- , . MTS , . MTS , , . MTS , , , , (fine-grain). , vptr ( ). MTS , . MTS , , . , , , MTS . , MTS, MTS , .

, MTS, , . , , MTS, , . , , MTS . MTS , .

MTS Microsoft , MTS . - .


1 Java , , CORBA ( , Orbix Iona, DSOM IBM, Object Broker BEA).



Suschnost' tehnologii SOM
Essential COM
ISBN: 0201634465
EAN: 2147483647
Year: N/A
Pages: 103
Authors: Don Box

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net