The rise of object-oriented middleware in the mid-nineties was an important step forward toward making distributed computing available to application developers. For the first time, it was possibe to build ...
The rise of object-oriented middleware in the mid-nineties was an important step
forward toward making distributed computing available to application developers.
For the first time, it was possibe to build distributed applications without having to
be a networking guru: the middleware platform took care of the majority of
networking chores, such as marshaling and unmarshaling (encoding and decoding
data for transmission), mapping logical object addresses to physical transport
endpoints, changing the representation of data according to the native machine
architecture of client and server, and automatically starting servers on demand.
Despite these advances, the leading object-oriented middleware platforms
suffered from a number of serious practical limitations that prompted ZeroC to
develop the Internet Communications Engine, or Ice for short.1 The main design
goals of Ice are:
• Provide an object-oriented middleware platform suitable for use in heteroge-
neous environments.
• Provide a full set of features that support development of realistic distributed
applications for a wide variety of domains.
• Avoid unnecessary complexity, making the platform easy to learn and to use.
• Provide an implementation that is efficient in network bandwidth, memory
use, and CPU overhead.
• Provide an implementation that has built-in security, making it suitable for use over insecure public networks.
To be more simplistic, the Ice design goals could be stated as “Let’s build a more
powerful middleware platform that makes the developer’s life easier and avoids
the mistakes of its predecessors.”
This book is divided into four parts and a number of appendixes:
• Part I: Ice Overview provides an overview of the features offered by Ice and
explains the Ice object model. After reading this part, you will understand the
major features and architecture of the Ice platform, its object model and
request dispatch model, and know the basic steps required to build a simple
application in C++, Java, C#, Visual Basic, Objective-C, Python, and Ruby.
• Part II: Slice explains the Slice definition language. After reading this part,
you will have detailed knowledge of how to specify interfaces and types for a
distributed application.
• Part III through Part IX cover language mappings. Each section shows how to
implement an application in your language of choice.
• Part X: Advanced Ice presents many Ice features in detail and covers advanced
aspects of server development, such as properties, threading, object life cycle,
object location, persistence, and asynchronous as well as dynamic method
invocation and dispatch. After reading this part, you will understand the
advanced features of Ice and how to effectively use them to find the correct
trade-off between performance and resource consumption as appropriate for
your application requirements.
• Part XI: Ice Services covers the services provided with Ice, such as IceGrid (a
sophisticated deployment tool), Glacier2 (the Ice firewall solution), IceStorm
(the Ice messaging service), and IcePatch2 (a software patching service).2
• Appendixes contain Ice reference material and explain the feature differences
between Ice and Ice-E (the version of Ice for embedded systems).
Our reader reviews allow you to share your comments on titles you liked,
or didn't, with others. By submitting an online review, you are representing to
Barnes & Noble.com that all information contained in your review is original
and accurate in all respects, and that the submission of such content by you
and the posting of such content by Barnes & Noble.com does not and will not
violate the rights of any third party. Please follow the rules below to help
ensure that your review can be posted.
Reviews by Our Customers Under the Age of 13
We highly value and respect everyone's opinion concerning the titles we offer.
However, we cannot allow persons under the age of 13 to have accounts at BN.com or
to post customer reviews. Please see our Terms of Use for more details.
What to exclude from your review:
Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the
information on the product page, please send us an email.
Reviews should not contain any of the following:
- HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
- Time-sensitive information such as tour dates, signings, lectures, etc.
- Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
- Comments focusing on the author or that may ruin the ending for others
- Phone numbers, addresses, URLs
- Pricing and availability information or alternative ordering information
- Advertisements or commercial solicitation
Reminder:
- By submitting a review, you grant to Barnes & Noble.com and its
sublicensees the royalty-free, perpetual, irrevocable right and license to use the
review in accordance with the Barnes & Noble.com Terms of Use.
- Barnes & Noble.com reserves the right not to post any review -- particularly
those that do not follow the terms and conditions of these Rules. Barnes & Noble.com
also reserves the right to remove any review at any time without notice.
- See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend
Create a Pen Name
Welcome, penname
You have successfully created your Pen Name. Start enjoying the benefits of the BN.com Community today.
If you find inappropriate content, please report it to Barnes & Noble
Overview
The rise of object-oriented middleware in the mid-nineties was an important step
forward toward making distributed computing available to application developers.
For the first time, it was possibe to build ...