Ice helps you network your software with minimal effort. By taking care of all interactions with low-level network programming interfaces, Ice allows you to focus your efforts on your application logic. When using Ice, there is no need to worry about details such as opening network connections, serializing and deserializing data for network transmission, or retrying failed connection attempts (to name just a few of dozens of such low-level details).
You can download Ice releases from ZeroC's website. Use this GitHub repository to build from source; see branches for more information.
Ice supports the following programming languages:
- C#
- C++
- Java
- JavaScript
- Objective-C
- PHP
- Python
- Ruby
Ice runs on a wide range of platforms:
- Android
- iOS
- Linux
- Linux on embedded devices
- Node.js
- macOS
- Web Browser
- Windows
- Universal Windows
- Efficient, high-performance binary protocol
- Supports a wide range of programming languages and platforms
- Easy to use and type-safe API, with your own interfaces and types defined in a programming language neutral IDL, Slice
- Supports secure, encrypted communications by taking advantage of your platform's native SSL/TLS stack
- Familiar object-oriented programming model, with the ability to transmit proxies (references to remote objects) to remote applications
- Supports synchronous and asynchronous calls, for both client-side invocations and serv