RemObjects SDK makes remoting easy, even enjoyable, by allowing developers to create and access remote services (such as SOAP) just as they would local classes. Application writers can concentrate on their core task - implementing and consuming the services they need, while RemObjects SDK takes care of the entire infrastructure needed to bring clients and servers together.
RemObjects SDK is available in three separate editions for the major development platforms out there: For managed development using Microsoft .NET and Mono in Visual Studio, for native Windows development using Delphi, and for native Mac OS X and iPhone development using Cocoa and Xcode.
The RemObjects SDK library is rounded off by a wide variety of tools and deep integration into the supported Visual Studio and Delphi IDEs to provide the developer with the best possible experience and make working with the product a seamless process. Service Builder provides a language- and platform-agnostic interface for designing and defining services, event sinks and related types. Service Tester allows you to put your finished services through their paces and ensure they are ready to cope with the client load you are expecting. Templates and Wizards in the IDEs help you to get started with your projects, and run you through common tasks, such as adding server functionality to an existing project.
- Wide range of supported communication channels, including HTTP, TCP, Email, Named Pipes, and local/single-tier.
- Super TCP and New Super HTTP Communication channels for optimum performance.
- Support for different messaging formats, including the proprietary but very network-efficient BinMessage, as well as open standard SOAP and XML-RPC formats.
- RAD Service Builder tool for modelling and defining services.
- Comfortable Service Tester for profiling, bench-marking and stress-testing service applications to ensure they behave well in high-load scenarios.
- Support for a large variety of native and user-defined data types to be sent across the network, including custom structs, ANSI and Unicode string formats and XML.
- Full wire compatibility between platforms, allowing you to mix clients and servers implemented with different editions of the SDK or running on different operating systems.
- CodeGen for PHP client support, allowing users to access XML-RPC servers from PHP-implemented web sites.
- Absolutely no deployment license fees.
- Full support for C#, Oxygene, Visual Basic .NET (.NET Edition), Delphi/Win32 and Free Pascal (Delphi Edition) and Objective-C (OS X Edition).
- Experimental C++ Builder support in Delphi edition (available in the full version only, as it requires the source code). Library, IDE and code generation support is functional, but no project templates or samples yet.
- Support for creating Silverlight web clients (.NET edition).
Service Builder Features
- Support for a wide range of platforms, including 32-bit and 64-bit Windows, Linux, Mac OS X, iPhone and browser clients.
- Support for a wide range of tool chains, including .NET, Silverlight, Mono, Moonlight, Delphi, Free Pascal/Lazarus and Xcode.
- 100% native and platform-specific implementations, designed from the ground up for the individual platforms and architectures - Delphi/VCL, .NET and Cocoa, respectively.
- Full source code provided, allowing you to make changes or apply fixes and rebuild the library, if needed.
- Thread safe and fully object oriented architecture that was designed with statelessness and maximum scalability in mind.
- Extensible library implementation that allows developers to add their own channels, message formats or other replaceable parts of the framework to meet user-specific needs.
- Large and extensible set of class factories to control service-instantiation options (pooled, singleton, per-call and more).
- Integrated ZLib data compression to improve message transfer on slow networks.
- Integrated AES Encryption support on the message level.
- Extensible Message Envelope architecture enabled to add custom encryption or other message modifications, transparently to general communication flow.
- Support for server-to-client Push events and call-backs through Event Sinks.
- Build standalone executables, Windows Services, Unix Daemons, or host your projects in ASP.NET (.NET Edition) or ISAPI/Apache Web Servers (Delphi).
- Built-in security features to prevent DOS attacks and server exploits in Internet Pack for .NET.
- Full support for IPv6 in Internet Pack for .NET.
- Full support for Delphi 2009 Unicode Strings (and of course Unicode support in the .NET and OS X Editions).
IDE Integration features
- RAD user interface for defining services and related types in a platform-, language- and technology-agnostic manner.
- Create and Edit Services, Event Sinks, Structs, Arrays and Enums.
- Write documentation for your services and types right in Service Builder.
- Pluggable architecture, allowing users to extend Service Builder with custom plug-ins, including support for new languages.
Web Services / SOAP
- Full integration with the supported IDEs, including Delphi and Visual Studio.
- Extensive project templates and new project wizards.
- Project integration of Service Builder with the IDE, allowing you to edit your service definitions within the IDE's project system.
- Integration with Service Tester.
- New Welcome Page displayed after the first install to assist new users with getting acquainted with the product.
- Full support for development of SOAP based Web Services.
- Full support for consuming SOAP based Web Services provided by third parties and implemented using non-RemObjects SDK technology.
- Support for importing WSDL service definitions from external sources for service consumption.
- Support for the new Document/Literal and RPC/Literal encoding styles, in addition to RPC/Encoding.
- Full support for WS-I Compliance
(Note: Because the first version of RemObjects SDK for OS X concentrates on client development, it provides only a subset of the range of features available in Delphi and .NET. In particular, in concentrates on BinMessage and a handful of commonly used default channel types, and does not include Service Builder and Service Tester, yet.)