چه کسانی این کتاب را می‌خوانند

دانشجوعلاقه‌مند یادگیری
کتابخوان حرفه‌ایلذت مطالعه
نویسندهالهام‌گیری

Advanced CORBA(R) Programming with C++

Henning, Michi; Vinoski, Steve

قیمت نهایی

۴۰٬۰۰۰ تومان۴۹٬۰۰۰ تومان۱۸٪ تخفیف
  • تخفیف زمان‌دار−۹٬۰۰۰ تومان

۹٬۰۰۰ تومان صرفه‌جویی نسبت به قیمت اصلی

بلافاصله پس از خرید، فایل کتاب روی دستگاه شما آمادهٔ دانلود است.

تحویل فوری
پرداخت امن
ضمانت فایل
پشتیبانی

نسخه اصلی و اورجینال

فایل دیجیتال کامل و بدون دستکاری — همان نسخه‌ای که پس از خرید دریافت می‌کنید.

مشخصات کتاب

سال انتشار
۱۹۹۹
فرمت
PDF
زبان
انگلیسی
حجم فایل
۵٫۰ مگابایت

دربارهٔ کتاب

Written for the experienced C++ developer facing real-world CORBA for the first time, Advanced CORBA Programming with C++ is a useful guide to today's most popular standard for distributed computing.After a quick tour of CORBA basics, the authors jump right in with a minimum skeleton application written in C++. From there, they provide truly extensive coverage of CORBA IDL, along with many tips for using IDL data types in C++. (They cover advanced features such as any, TypeCode, and DynAny later in the book.).Next the book unveils its sample application - a distributed climate control system. Material on the Portable Object Adapter and the Object Life Cycle, including garbage collection strategies, rounds out this section. Additional chapters examine the details of Object Request Brokers (ORBs), including Internet Inter-ORB Protocol (IIOP), repositories, and binding. The authors also present CORBA's built-in APIs for Naming, Trading, and Event Services (including asynchronous event handling), which is most useful as reference material.Final sections examine strategies for better scalability, including multithreading and optimizing network traffic for CORBA objects. The authors provide numerous short excerpts of C++ code, though it must be said that much of this book is reference material rather than a hands-on programming tutorial. Advanced CORBA® Programming with C++ 1 Review 3 Dedication 6 Table of Contents 7 Preface 13 Prerequisites 14 Scope of this Book 14 Acknowledgments 16 Chapter 1. Introduction 18 1.1 Introduction 18 1.2 Organization of the Book 20 1.3 CORBA Version 21 1.4 Typographical Conventions 21 1.5 Source Code Examples 21 1.6 Vendor Dependencies 22 1.7 Contacting the Authors 22 Part I: Introduction to CORBA 23 Chapter 2. An Overview of CORBA 24 2.1 Introduction 24 2.2 The Object Management Group 25 2.3 Concepts and Terminology 28 2.4 CORBA Features 29 2.5 Request Invocation 36 2.6 General CORBA Application Development 44 2.7 Summary 45 Chapter 3. A Minimal CORBA Application 47 3.1 Chapter Overview 47 3.2 Writing and Compiling an IDL Definition 47 3.3 Writing and Compiling a Server 48 3.4 Writing and Compiling a Client 53 3.5 Running Client and Server 55 3.6 Summary 56 Part II: Core CORBA 57 Chapter 4. The OMG Interface Definition Language 58 4.1 Chapter Overview 58 4.2 Introduction 58 4.3 Compilation 59 4.4 Source Files 62 4.5 Lexical Rules 63 4.6 Basic IDL Types 64 4.7 User-Defined Types 68 4.8 Interfaces and Operations 81 4.9 User Exceptions 89 4.10 System Exceptions 93 4.11 System Exceptions or User Exceptions? 95 4.12 Oneway Operations 96 4.13 Contexts 97 4.14 Attributes 98 4.15 Modules 100 4.16 Forward Declarations 101 4.17 Inheritance 103 4.18 Names and Scoping 110 4.19 Repository Identifiers and pragma Directives 113 4.20 Standard Include Files 117 4.21 Recent IDL Extensions 117 4.22 Summary 121 Chapter 5. IDL for a Climate Control System 122 5.1 Chapter Overview 122 5.2 The Climate Control System 122 5.3 IDL for the Climate Control System 124 5.4 The Complete Specification 129 Chapter 6. Basic IDL-to-C++ Mapping 131 6.1 Chapter Overview 131 6.2 Introduction 131 6.3 Mapping for Identifiers 132 6.4 Mapping for Modules 133 6.5 The CORBA Module 135 6.6 Mapping for Basic Types 135 6.7 Mapping for Constants 138 6.8 Mapping for Enumerated Types 140 6.9 Variable-Length Types and _var Types 141 6.10 The String_var Wrapper Class 145 6.11 Mapping for Wide Strings 157 6.12 Mapping for Fixed-Point Types 157 6.13 Mapping for Structures 161 6.14 Mapping for Sequences 166 6.15 Mapping for Arrays 183 6.16 Mapping for Unions 185 6.17 Mapping for Recursive Structures and Unions 192 6.18 Mapping for Type Definitions 193 6.19 User-Defined Types and _var Classes 193 6.20 Summary 203 Chapter 7. Client-Side C++ Mapping 204 7.1 Chapter Overview 204 7.2 Introduction 204 7.3 Mapping for Interfaces 204 7.4 Object Reference Types 206 7.5 Life Cycle of Object References 207 7.6 Semantics of _ptr References 213 7.7 Pseudo-Objects 220 7.8 ORB Initialization 221 7.9 Initial References 223 7.10 Stringified References 227 7.11 The Object Pseudo-Interface 229 7.12 _var References 236 7.13 Mapping for Operations and Attributes 247 7.14 Parameter Passing Rules 249 7.15 Mapping for Exceptions 278 7.16 Mapping for Contexts 291 7.17 Summary 291 Chapter 8. Developing a Client for the Climate Control System 293 8.1 Chapter Overview 293 8.2 Introduction 293 8.3 Overall Client Structure 293 8.4 Included Files 294 8.5 Helper Functions 295 8.6 The main Program 299 8.7 The Complete Client Code 306 8.8 Summary 310 Chapter 9. Server-Side C++ Mapping 313 9.1 Chapter Overview 313 9.2 Introduction 313 9.3 Mapping for Interfaces 314 9.4 Servant Classes 316 9.5 Object Incarnation 317 9.6 Server main 318 9.7 Parameter Passing Rules 320 9.8 Raising Exceptions 336 9.9 Tie Classes 341 9.10 Summary 345 Chapter 10. Developing a Server for the Climate Control System 347 10.1 Chapter Overview 347 10.2 Introduction 347 10.3 The Instrument Control Protocol API 347 10.4 Designing the Thermometer Servant Class 350 10.5 Implementing the Thermometer Servant Class 352 10.6 Designing the Thermostat Servant Class 355 10.7 Implementing the Thermostat Servant Class 357 10.8 Designing the Controller Servant Class 360 10.9 Implementing the Controller Servant Class 362 10.10 Implementing the Server main Function 366 10.11 The Complete Server Code 368 10.12 Summary 378 Chapter 11. The Portable Object Adapter 379 11.1 Chapter Overview 379 11.2 Introduction 379 11.3 POA Fundamentals 379 11.4 POA Policies 382 11.5 POA Creation 393 11.6 Servant IDL Type 397 11.7 Object Creation and Activation 400 11.8 Reference, ObjectId, and Servant 436 11.9 Object Deactivation 438 11.10 Request Flow Control 440 11.11 ORB Event Handling 445 11.12 POA Activation 451 11.13 POA Destruction 457 11.14 Applying POA Policies 458 11.15 Summary 466 Chapter 12. Object Life Cycle 468 12.1 Chapter Overview 468 12.2 Introduction 468 12.3 Object Factories 469 12.4 Destroying, Copying, and Moving Objects 480 12.5 A Critique of the Life Cycle Service 494 12.6 The Evictor Pattern 499 12.7 Garbage Collection of Servants 515 12.8 Garbage Collection of CORBA Objects 523 12.9 Summary 526 Part III: CORBA Mechanisms 527 Chapter 13. GIOP, IIOP, and IORs 528 13.1 Chapter Overview 528 13.2 An Overview of GIOP 528 13.3 Common Data Representation 530 13.4 GIOP Message Formats 533 13.5 GIOP Connection Management 541 13.6 Detecting Disorderly Shutdown 542 13.7 An Overview of IIOP 543 13.8 Structure of an IOR 545 13.9 Bidirectional IIOP 547 13.10 Summary 548 Chapter 14. Implementation Repositories and Binding 549 14.1 Chapter Overview 549 14.2 Binding Modes 549 14.3 Direct Binding 549 14.4 Indirect Binding via an Implementation Repository 553 14.5 Migration, Reliability, Performance, and Scalability 563 14.6 Activation Modes 566 14.7 Race Conditions 567 14.8 Security Considerations 569 14.9 Summary 572 Part VI: Dynamic CORBA 574 Chapter 15 C++ Mapping for Type any 575 15.1 Chapter Overview 575 15.2 Introduction 575 15.3 Type any C++ Mapping 578 15.4 Pitfalls in Type Definitions 598 15.5 Summary 599 Chapter 16. Type Codes 600 16.1 Chapter Overview 600 16.2 Introduction 600 16.3 The TypeCode Pseudo-Object 600 16.4 C++ Mapping for the TypeCode Pseudo-Object 609 16.5 Type Code Comparisons 620 16.6 Type Code Constants 626 16.7 Type Code Comparison for Type any 629 16.8 Creating Type Codes Dynamically 630 16.9 Summary 638 Chapter 17. Type DynAny 639 17.1 Chapter Overview 639 17.2 Introduction 639 17.3 The DynAny Interface 640 17.4 C++ Mapping for DynAny 653 17.5 Using DynAny for Generic Display 663 17.6 Obtaining Type Information 665 17.7 Summary 667 Part V: CORBAservices 668 Chapter 18. The OMG Naming Service 668 18.1 Chapter Overview 668 18.2 Introduction 668 18.3 Basic Concepts 668 18.4 Structure of the Naming Service IDL 670 18.5 Semantics of Names 671 18.6 Naming Context IDL 675 18.7 Iterators 691 18.8 Pitfalls in the Naming Service 699 18.9 The Names Library 700 18.10 Naming Service Tools 700 18.11 What to Advertise 701 18.12 When to Advertise 702 18.13 Federated Naming 702 18.14 Adding Naming to the Climate Control System 706 18.15 Summary 712 Chapter 19. The OMG Trading Service 713 19.1 Chapter Overview 713 19.2 Introduction 713 19.3 Trading Concepts and Terminology 713 19.4 IDL Overview 719 19.5 The Service Type Repository 719 19.6 The Trader Interfaces 735 19.7 Exporting Service Offers 740 19.8 Withdrawing Service Offers 746 19.9 Modifying Service Offers 747 19.10 The Trader Constraint Language 748 19.11 Importing Service Offers 752 19.12 Bulk Withdrawal 766 19.13 The Admin Interface 767 19.14 Inspecting Service Offers 769 19.15 Exporting Dynamic Properties 770 19.16 Trader Federation 773 19.17 Trader Tools 784 19.18 Architectural Considerations 784 19.19 What to Advertise 786 19.20 Avoiding Duplicate Service Offers 787 19.21 Adding Trading to the Climate Control System 788 19.22 Summary 792 Chapter 20. The OMG Event Service 793 20.1 Chapter Overview 793 20.2 Introduction 793 20.3 Distributed Callbacks 793 20.4 Event Service Basics 799 20.5 Event Service Interfaces 803 20.6 Implementing Consumers and Suppliers 810 20.7 Choosing an Event Model 821 20.8 Event Service Limitations 823 20.9 Summary 825 Part VI: Power CORBA 827 Chapter 21. Multithreaded Applications 827 21.1 Chapter Overview 827 21.2 Introduction 827 21.3 Motivation for Multithreaded Programs 827 21.4 Fundamentals of Multithreaded Servers 831 21.5 Multithreading Strategies 837 21.6 Implementing a Multithreaded Server 838 21.7 Servant Activators and the Evictor Pattern 851 21.8 Summary 852 Chapter 22. Performance, Scalability, and Maintainability 853 22.1 Chapter Overview 853 22.2 Introduction 853 22.3 Reducing Messaging Overhead 853 22.4 Optimizing Server Implementations 862 22.5 Federating Services 864 22.6 Improving Physical Design 865 22.7 Summary 868 Appendix A. Source Code for the ICP Simulator 869 Appendix B. CORBA Resources 877 Bibliography 880 Advanced CORBA® Programming with C++......Page 1 Review......Page 3 Dedication......Page 6 Table of Contents......Page 7 Preface......Page 13 Scope of this Book......Page 14 Acknowledgments......Page 16 1.1 Introduction......Page 18 1.2 Organization of the Book......Page 20 1.5 Source Code Examples......Page 21 1.7 Contacting the Authors......Page 22 Part I: Introduction to CORBA......Page 23 2.1 Introduction......Page 24 2.2 The Object Management Group......Page 25 2.3 Concepts and Terminology......Page 28 2.4 CORBA Features......Page 29 2.5 Request Invocation......Page 36 2.6 General CORBA Application Development......Page 44 2.7 Summary......Page 45 3.2 Writing and Compiling an IDL Definition......Page 47 3.3 Writing and Compiling a Server......Page 48 3.4 Writing and Compiling a Client......Page 53 3.5 Running Client and Server......Page 55 3.6 Summary......Page 56 Part II: Core CORBA......Page 57 4.2 Introduction......Page 58 4.3 Compilation......Page 59 4.4 Source Files......Page 62 4.5 Lexical Rules......Page 63 4.6 Basic IDL Types......Page 64 4.7 User-Defined Types......Page 68 4.8 Interfaces and Operations......Page 81 4.9 User Exceptions......Page 89 4.10 System Exceptions......Page 93 4.11 System Exceptions or User Exceptions?......Page 95 4.12 Oneway Operations......Page 96 4.13 Contexts......Page 97 4.14 Attributes......Page 98 4.15 Modules......Page 100 4.16 Forward Declarations......Page 101 4.17 Inheritance......Page 103 4.18 Names and Scoping......Page 110 4.19 Repository Identifiers and pragma Directives......Page 113 4.21 Recent IDL Extensions......Page 117 4.22 Summary......Page 121 5.2 The Climate Control System......Page 122 5.3 IDL for the Climate Control System......Page 124 5.4 The Complete Specification......Page 129 6.2 Introduction......Page 131 6.3 Mapping for Identifiers......Page 132 6.4 Mapping for Modules......Page 133 6.6 Mapping for Basic Types......Page 135 6.7 Mapping for Constants......Page 138 6.8 Mapping for Enumerated Types......Page 140 6.9 Variable-Length Types and _var Types......Page 141 6.10 The String_var Wrapper Class......Page 145 6.12 Mapping for Fixed-Point Types......Page 157 6.13 Mapping for Structures......Page 161 6.14 Mapping for Sequences......Page 166 6.15 Mapping for Arrays......Page 183 6.16 Mapping for Unions......Page 185 6.17 Mapping for Recursive Structures and Unions......Page 192 6.19 User-Defined Types and _var Classes......Page 193 6.20 Summary......Page 203 7.3 Mapping for Interfaces......Page 204 7.4 Object Reference Types......Page 206 7.5 Life Cycle of Object References......Page 207 7.6 Semantics of _ptr References......Page 213 7.7 Pseudo-Objects......Page 220 7.8 ORB Initialization......Page 221 7.9 Initial References......Page 223 7.10 Stringified References......Page 227 7.11 The Object Pseudo-Interface......Page 229 7.12 _var References......Page 236 7.13 Mapping for Operations and Attributes......Page 247 7.14 Parameter Passing Rules......Page 249 7.15 Mapping for Exceptions......Page 278 7.17 Summary......Page 291 8.3 Overall Client Structure......Page 293 8.4 Included Files......Page 294 8.5 Helper Functions......Page 295 8.6 The main Program......Page 299 8.7 The Complete Client Code......Page 306 8.8 Summary......Page 310 9.2 Introduction......Page 313 9.3 Mapping for Interfaces......Page 314 9.4 Servant Classes......Page 316 9.5 Object Incarnation......Page 317 9.6 Server main......Page 318 9.7 Parameter Passing Rules......Page 320 9.8 Raising Exceptions......Page 336 9.9 Tie Classes......Page 341 9.10 Summary......Page 345 10.3 The Instrument Control Protocol API......Page 347 10.4 Designing the Thermometer Servant Class......Page 350 10.5 Implementing the Thermometer Servant Class......Page 352 10.6 Designing the Thermostat Servant Class......Page 355 10.7 Implementing the Thermostat Servant Class......Page 357 10.8 Designing the Controller Servant Class......Page 360 10.9 Implementing the Controller Servant Class......Page 362 10.10 Implementing the Server main Function......Page 366 10.11 The Complete Server Code......Page 368 10.12 Summary......Page 378 11.3 POA Fundamentals......Page 379 11.4 POA Policies......Page 382 11.5 POA Creation......Page 393 11.6 Servant IDL Type......Page 397 11.7 Object Creation and Activation......Page 400 11.8 Reference, ObjectId, and Servant......Page 436 11.9 Object Deactivation......Page 438 11.10 Request Flow Control......Page 440 11.11 ORB Event Handling......Page 445 11.12 POA Activation......Page 451 11.13 POA Destruction......Page 457 11.14 Applying POA Policies......Page 458 11.15 Summary......Page 466 12.2 Introduction......Page 468 12.3 Object Factories......Page 469 12.4 Destroying, Copying, and Moving Objects......Page 480 12.5 A Critique of the Life Cycle Service......Page 494 12.6 The Evictor Pattern......Page 499 12.7 Garbage Collection of Servants......Page 515 12.8 Garbage Collection of CORBA Objects......Page 523 12.9 Summary......Page 526 Part III: CORBA Mechanisms......Page 527 13.2 An Overview of GIOP......Page 528 13.3 Common Data Representation......Page 530 13.4 GIOP Message Formats......Page 533 13.5 GIOP Connection Management......Page 541 13.6 Detecting Disorderly Shutdown......Page 542 13.7 An Overview of IIOP......Page 543 13.8 Structure of an IOR......Page 545 13.9 Bidirectional IIOP......Page 547 13.10 Summary......Page 548 14.3 Direct Binding......Page 549 14.4 Indirect Binding via an Implementation Repository......Page 553 14.5 Migration, Reliability, Performance, and Scalability......Page 563 14.6 Activation Modes......Page 566 14.7 Race Conditions......Page 567 14.8 Security Considerations......Page 569 14.9 Summary......Page 572 Part VI: Dynamic CORBA......Page 574 15.2 Introduction......Page 575 15.3 Type any C++ Mapping......Page 578 15.4 Pitfalls in Type Definitions......Page 598 15.5 Summary......Page 599 16.3 The TypeCode Pseudo-Object......Page 600 16.4 C++ Mapping for the TypeCode Pseudo-Object......Page 609 16.5 Type Code Comparisons......Page 620 16.6 Type Code Constants......Page 626 16.7 Type Code Comparison for Type any......Page 629 16.8 Creating Type Codes Dynamically......Page 630 16.9 Summary......Page 638 17.2 Introduction......Page 639 17.3 The DynAny Interface......Page 640 17.4 C++ Mapping for DynAny......Page 653 17.5 Using DynAny for Generic Display......Page 663 17.6 Obtaining Type Information......Page 665 17.7 Summary......Page 667 18.3 Basic Concepts......Page 668 18.4 Structure of the Naming Service IDL......Page 670 18.5 Semantics of Names......Page 671 18.6 Naming Context IDL......Page 675 18.7 Iterators......Page 691 18.8 Pitfalls in the Naming Service......Page 699 18.10 Naming Service Tools......Page 700 18.11 What to Advertise......Page 701 18.13 Federated Naming......Page 702 18.14 Adding Naming to the Climate Control System......Page 706 18.15 Summary......Page 712 19.3 Trading Concepts and Terminology......Page 713 19.5 The Service Type Repository......Page 719 19.6 The Trader Interfaces......Page 735 19.7 Exporting Service Offers......Page 740 19.8 Withdrawing Service Offers......Page 746 19.9 Modifying Service Offers......Page 747 19.10 The Trader Constraint Language......Page 748 19.11 Importing Service Offers......Page 752 19.12 Bulk Withdrawal......Page 766 19.13 The Admin Interface......Page 767 19.14 Inspecting Service Offers......Page 769 19.15 Exporting Dynamic Properties......Page 770 19.16 Trader Federation......Page 773 19.18 Architectural Considerations......Page 784 19.19 What to Advertise......Page 786 19.20 Avoiding Duplicate Service Offers......Page 787 19.21 Adding Trading to the Climate Control System......Page 788 19.22 Summary......Page 792 20.3 Distributed Callbacks......Page 793 20.4 Event Service Basics......Page 799 20.5 Event Service Interfaces......Page 803 20.6 Implementing Consumers and Suppliers......Page 810 20.7 Choosing an Event Model......Page 821 20.8 Event Service Limitations......Page 823 20.9 Summary......Page 825 21.3 Motivation for Multithreaded Programs......Page 827 21.4 Fundamentals of Multithreaded Servers......Page 831 21.5 Multithreading Strategies......Page 837 21.6 Implementing a Multithreaded Server......Page 838 21.7 Servant Activators and the Evictor Pattern......Page 851 21.8 Summary......Page 852 22.3 Reducing Messaging Overhead......Page 853 22.4 Optimizing Server Implementations......Page 862 22.5 Federating Services......Page 864 22.6 Improving Physical Design......Page 865 22.7 Summary......Page 868 Appendix A. Source Code for the ICP Simulator......Page 869 Appendix B. CORBA Resources......Page 877 Bibliography......Page 880

Here is the CORBA book that every C++ software engineer has been waiting for. Advanced CORBA® Programming with C++ provides designers and developers with the tools required to understand CORBA technology at the architectural, design, and source code levels. This book offers hands-on explanations for building efficient applications, as well as lucid examples that provide practical advice on avoiding costly mistakes. With this book as a guide, programmers will find the support they need to successfully undertake industrial-strength CORBA development projects.

The content is systematically arranged and presented so the book may be used as both a tutorial and a reference. The rich example programs in this definitive text show CORBA developers how to write clearer code that is more maintainable, portable, and efficient. The authors' detailed coverage of the IDL-to-C++ mapping moves beyond the mechanics of the APIs to discuss topics such as potential pitfalls and efficiency. An in-depth presentation of the new Portable Object Adapter (POA) explains how to take advantage of its numerous features to create scalable and high-performance servers. In addition, detailed discussion of advanced topics, such as garbage collection and multithreading, provides developers with the knowledge they need to write commercial applications.

Other highlights

  • In-depth coverage of IDL, including common idioms and design trade-offs
  • Complete and detailed explanations of the Life Cycle, Naming, Trading, and Event Services
  • Discussion of IIOP and implementation repositories
  • Insight into the dynamic aspects of CORBA, such as dynamic typing and the new DynAny interfaces
  • Advice onselecting appropriate application architectures and designs
  • Detailed, portable, and vendor-independent source code

Booknews

Explains CORBA technology at the architectural, design and source code levels of commercial application construction, and offers examples that provide practical advice on avoiding costly mistakes. The guide features discussion of IDL-to-C++ mapping, the new portable object adapter (POA), garbage collection, multithreading, and the naming, trading and event services. For C++ engineers familiar with CORBA, inheritance, virtual functions, operator overloading, templates, and threaded code. Annotation c. by Book News, Inc., Portland, Or.

Here is the CORBA book that every C++ software engineer has been waiting for. Advanced CORBA® Programming with C++ provides designers and developers with the tools required to understand CORBA technology at the architectural, design, and source code levels. This book offers hands-on explanations for building efficient applications, as well as lucid examples that provide practical advice on avoiding costly mistakes. With this book as a guide, programmers will find the support they need to successfully undertake industrial-strength CORBA development projects. The content is systematically arranged and presented so the book may be used as both a tutorial and a reference. The rich example programs in this definitive text show CORBA developers how to write clearer code that is more maintainable, portable, and efficient. The authors'detailed coverage of the IDL-to-C++ mapping moves beyond the mechanics of the APIs to discuss topics such as potential pitfalls and efficiency. An in-depth presentation of the new Portable Object Adapter (POA) explains how to take advantage of its numerous features to create scalable and high-performance servers. In addition, detailed discussion of advanced topics, such as garbage collection and multithreading, provides developers with the knowledge they need to write commercial applications. Other highlights In-depth coverage of IDL, including common idioms and design trade-offs Complete and detailed explanations of the Life Cycle, Naming, Trading, and Event Services Discussion of IIOP and implementation repositories Insight into the dynamic aspects of CORBA, such as dynamic typing and the new DynAny interfaces Advice on selecting appropriate application architectures and designs Detailed, portable, and vendor-independent source code This book provides designers and developers the tools required to understand CORBA technology at the architectural, design, and code levels.This book offers hands-on explanations for building efficient applications, as well as lucid examples that provide practical advice on avoiding costly mistakes. With this book as a guide, programmers will find the support they need to successfully undertake CORBA development projects. The content is systematically arranged and presented so the book may be used as both a tutorial and a reference. The rich example programs in this definitive text show CORBA developers how to write clearer code that is more maintainable, portable, and efficient. The authors' detailed coverage of the IDL-to-C++ mapping moves beyond the mechanics of the APIs to discuss topics such aspotential pitfalls and efficiency. An in-depth presentation of the new Portable Object Adapter (POA) explains how to take advantage of its numerous features to create scalable and high-performance servers. In addition, detailed discussion of advanced topics, such as garbage collection and multithreading, provides developers with the knowledge they need to write commercial applications. Written for C++ practitioners, this book is the first to explore advanced Common Object Request Broker Architecture (CORBA) topics and techniques. Michi Henning and Steve Vinoski share the benefits of their extensive experience with CORBA programming, and arm the programmer with the skills necessary to overcome the intricate programming issues that arise in a real-world environment. By learning proven, hands-on explanations for building CORBA applications, the reader will be well on the way to building more successful distributed objects for industrial-strength development projects.

قیمت نهایی

۴۰٬۰۰۰ تومان