SmartObjects

What is SmartObjects?

SmartObjects is a middleware framework based up on own Interface Definition Language (SmartIDL). SmartObjects simplifies your work for coding network protocols, load-balancing, availability and  helps to implement your
distributed systems and modules. It's easy to use, open source and support  C++ and Java (Sun JVM and Android Dalvik)




Main features
  • Fully free and open source framework released under the terms of the Apache License
  • High performance implementation for Java/C++ 
  • Balanced for size and interface backward compatibility binary network protocol 
  • Human readable Interface Definition Language
  • Framework is not required Application Servers or too much 3rdparty libraries
  • Flexible and easy to learn programming API
  • Security layer for data encoding and connection based authentication
  • Standard load-balancing and fault tolerance features

Yet again middleware framework?

Yes, SmartObjects is one again framework like CORBA (Common Object Request Broker Architecture)™, WSDL/SOAP frameworks, EJB (Enterprise JavaBeans), Ice ( Internet Communications Engine )™. All popular architectures have similar concepts like RPC styles, IDL, network abstraction model and etc.

There are main SmartObjects advantages in relation to other popular frameworks/architectures.
  • Why not CORBA™? CORBA specifies tons complex specifications. IDL is not always friendly and complex (especially in CORBA v3). There is no one full implementation of CORBA v3. There is no industry progress for CORBA core for a long time.
  • Why not WSDL/SOAP? All popular implementations of SOAP stack has performance issues. WSDL is complex, redundant, hard human readable IDL language. Has many additional complex specifications from more than one organization (W3C, OASIS, WS-I, OMG) - e.g. for security.
  • Why not EJB™? EJB doesn't specified language neutral IDL. EJB doesn't have RPC asynchronous model, only MDB. All popular implementations required heavy JavaEE Application Servers.
  • Why not Ice™? Ice is a good middleware framework, but it is GPL and non comfortable for small commercial products.