Combined languages in server and client implementations
You can choose to combine languages for the server implementation and the optional client implementations of your opaque data type: C or C++ for the server implementation and ActiveX for the client implementation.
The following table describes some of the advantages and disadvantages
to consider when you choose server and client implementation languages.
Option | Advantage | Disadvantage |
---|---|---|
Using the same server and client implementation language | You have less code to edit. With C++, much of the server and client code overlaps (see Choosing C++ for both client and server projects). |
C++ has restrictions on the functionality of the
opaque data type. You can use C++ to implement only opaque data types; you must use C or Java™ to implement other DataBlade® module objects. You cannot port a C++ server project from Windows™ to UNIX™ operating systems. See Limitations of opaque types for each language for more information. |
Using different languages for the server and client implementations | If you use C as the server language, you can implement functionality that is not available for Java or C++. | You have more code to edit because you have separate server and client source code. |
The following figure illustrates the advantage of choosing C++
for both the client and server implementations: much of the same generated
source code can be used to compile each project.
See Implement ActiveX value objects for more
information about the generated files.
Important: It is recommended that developers create DataBlade modules
in C++ only for client projects and for server projects that use HCL
OneDB™ on Windows only.