Математика | ||||
Designing Component Based Applications-Mary Kirtland 1999 | ||||
Acknowledgments........................................................................................x
Introduction................................................................................................xi Windows DMA................................................................................3 Business Problems, Architectural Solutions..............................................3 Application Architectures...................................................................4 Components......................................................................................8 Three-Tier Enablers...........................................................................8 Windows DNA Architecture.................................................................10 The Component Object Model.........................................................10 The Presentation Layer.....................................................................11 The Business Layer...........................................................................12 The Data Access Layer.....................................................................14 SUMMARY..........................................................................................15 The Component Object Model........................................................17 Why COM?.........................................................................................17 The COM Programming Model............................................................19 Objects...........................................................................................20 Interfaces........................................................................................21 Classes...........................................................................................29 Components....................................................................................30 Distributed COM..................................................................................36 COM Security.................................................................................37 Registration Revisited.......................................................................38 Remote Activation and Marshaling..................................................43 Automation..........................................................................................46 The IDispatch Interface....................................................................47 Type Libraries.................................................................................49 Dual Interfaces................................................................................50 SUMMARY..........................................................................................52 Data Access Fundamentals............................................................53 WhyMDAC?.......................................................................................53 Accessing Data....................................................................................54 ODBC.............................................................................................55 Universal Storage............................................................................55 Universal Data Access.....................................................................56 OLEDB................................................................................................57 ActiveX Data Objects...........................................................................60 Remote Data Service............................................................................62 SUMMARY..........................................................................................65 Microsoft Transaction Server..........................................................67 WhyMTS?...........................................................................................67 The Many Faces of MTS.......................................................................69 MTS as an ORB...............................................................................70 MTS as a COM Surrogate...............................................................72 MTS as a TP-Monitor.......................................................................72 The Application Server Programming Model.........................................80 Making It Easier..............................................................................80 Scalability Through Sharing.............................................................81 Rule 1: Call SetComplete.................................................................81 Rule 2: Acquire and Hold Interface Pointers.....................................85 Rule 3: Use and Release Resources..................................................85 Rule 4: Use Role-Based Security.......................................................86 Rule 5: Use Transactions..................................................................91 SUMMARY..........................................................................................94 ART Active Server Pages.......................................................................95 Why ASP?...........................................................................................95 Automation Components.................................................................97 The ASP Programming Model..........................................................98 Three-Tier Application Architectures.....................................................98 Integration with MTS............................................................................99 SUMMARY........................................................................................TOO Extending the Reach of MTS........................................................101 COM on UNIX...................................................................................101 XA Interoperability.............................................................................102 COM Transaction Integrator...............................................................104 The COMTI Architecture................................................................104 Creating a COMTI Automation Component....................................106 Microsoft Message Queue Server.......................................................106 Message Queuing.........................................................................107 Using MSMQ................................................................................108 SUMMARY........................................................................................110 Application Definition and Modeling............................................113 Creating an Application Definition.....................................................113 Defining the Business Problem .......................................................113 Defining the Functional Specifications............................................115 Establishing Application Requirements...........................................116 Modeling the Application...................................................................122 Modeling Persistent Data...............................................................122 Designing Classes.........................................................................127 Modeling the Data Objects............................................................130 Modeling the Business Objects.......................................................137 Modeling the Presentation Layer....................................................142 Defining the Physical Architecture.......................................................143 Grouping Classes into Components...............................................143 Grouping Components into Packages and Processes......................144 Assigning Packages and Processes to Machines.............................144 Documenting the Physical Architecture...........................................144 SUMMARY........................................................................................147 Щ Building Data Objects..................................................................149 Moving from Design to Implementation...............................................149 Implementing Components for MTS....................................................150 Data Object Technologies..................................................................153 Programming with ADO................................................................154 Implementing Data Objects................................................................159 Implementing db_CategoryC in Visual Basic..................................160 Implementing db_CustomerPassworc/C in Visual Basic....................181 A Quick Look at db_CustomerC.....................................................193 Implementing Data Objects in Visual C++......................................196 SUMMARY........................................................................................214 U Building Business Objects............................................................215 Moving from Design to Implementation...............................................215 Implementing Components for MTS....................................................216 Composing Functionality...............................................................217 Managing State............................................................................221 Handling Errors.............................................................................226' Securing Access to Your Components............................................228 Building Business Objects...................................................................230 Implementing bus_PaymenfC in Visual Basic..................................230 Implementing bus_/nvo/ceC in C++................................................238 Implementing uti/_TafceANumber Using the SPM............................255 SUMMARY........................................................................................261 fy Packaging the Components.........................................................263 Packages...........................................................................................263 Designing Packages...........................................................................265 Activation.....................................................................................266 Shared Resources..........................................................................266 Fault Isolation................................................................................267 Security Isolation...........................................................................267 Island Hopper Package Design......................................................268 Building Packages..............................................................................269 Creating Packages........................................................................270 Adding Components to a Package.................................................271 Setting Activation Properties..........................................................272 Configuring Security......................................................................273 Setting Transaction Properties........................................................278 Exporting Packages..........................................,............................280 SUMMARY........................................................................................282 Building the Presentation Layer....................................................283 Moving from Design to Implementation...............................................283 Types of Presentation Layer Applications........................................284 Selecting a Presentation Layer Architecture....................................285 Implementing Presentation Layers.......................................................290 Using Business Objects..................................................................290 Using RDS to Access Remote Objects.............................................293 Using Data-Binding.......................................................................294 Using ASP.....................................................................................295 Using Client-Side Components.......................................................297 Implementing the Island Hopper Application Presentation Layer..........298 Design Decisions...........................................................................298 Implementing the Classifieds Application .......................................298 Implementing the Internet Client.....................................................306 SUMMARY........................................................................................316 Debugging and Troubleshooting..................................................317 Component-Level Testing....................................................................317 Local Testing......................................................................................319 Debugging MTS Components........................................................320 Traces and Asserts........................................................................324 Decoding Error Messages..............................................................326 Troubleshooting Database Problems..............................................326 MTS Tools for Troubleshooting.......................................................327 The Windows NT Event Viewer......................................................330 Testing the Distributed Application.....................................................332 SUMMARY........................................................................................333 Performance Validation...............................................................335 Why Validate?...................................................................................335 The Validation Process.......................................................................336 Defining Performance Requirements...............................................337 Measuring Performance................................................................339 Identifying and Eliminating Bottlenecks..........................................341 Common Bottlenecks..........................................................................345 SQL Server Bottlenecks..................................................................345 Data Access Bottlenecks.................................................................345 Transaction Bottlenecks..................................................................346 Other Bottlenecks..........................................................................347 SUMMARY........................................................................................347 Щ Deploying Your Distributed Application........................................349 Choosing a Topology.........................................................................349 Integrating into the Existing Enterprise...........................................350 Meeting Performance Needs..........................................................350 Common Deployment Configurations.............................................351 Fault Tolerance..............................................................................357 The Deployment Process.....................................................................358 Installing a Prebuilt Package..........................................................359 Creating a Client Install Program...................................................360 Finalizing Package Settings...........................................................361 Installing Client Programs..............................................................363 SUMMARY........................................................................................364 •>. :>.W.^ Extending the Application............................................................367 Developing Components with COMTI.................................................367 Using the Component Builder........................................................368 Configuring a COMTI Component.................................................371 Developing Applications with MSMQ.................................................373 The MSMQ Application Model......................................................373 Programming MSMQ Applications................................................375 Configuring MSMQ Application Components................................381 SUMMARY........................................................................................381 Цена: 150руб. |
||||