Click here to Skip to main content
15,897,187 members
Please Sign up or sign in to vote.
1.00/5 (1 vote)
See more:
I have heard that Google uses C,C++,Python,Java etc on server side. How do they integrate these languages? Can you please providee an example?

What I have tried:

I tried to do so but with no good. Please provide me a way out of this problem.
Posted
Updated 9-May-20 8:07am

Your code will need to provide some kind of standard interface that can be used by other languages, so maybe an http based API, or a TCP based interface. COM is another interface you can use if you're on a Microsoft platform.
 
Share this answer
 
Quote:
I have heard
Don't believe everything you hear.

Quote:
How do they integrate these languages?
Why don't you ask them, rather than some random strangers?
 
Share this answer
 
Mainly this is done to create a core system with a scripting capability. So you have core in c/c++ and the scripting on top of that. Scripting mainly reserved for the 3rd party users who write extensions. This pragma has been around for as long as the computing systems itself. Examples: DOS - Batch scripts, UNIX - bash scripts; etc.. Lately it has progressed from the operating systems down to an individual programs: Web Browser- Java Script; Unreal Game Engine - Unreal Script; MS Excel - VBA. It is an ongoing idea to extend an existing application with an unprecedented extensibility.

It is done by creating a BNF/EBNF syntax programs that hooks into the underlying core API(application programming interface)

Hope this explains it.
 
Share this answer
 
v4
Original Post:
How do they integrate these languages?
The way you implement disparate technologies is via compartmentalization into individual packages with some sort of interface to allow the individual units to talk to one another. Typically this would be some sort of server/client relationship such as an API.

A typical example of this is connecting an application to a database. Oracle, MySql, Sql Server have a completely different language set than what the calling application uses.
The Wikipedia entry for ADO.NET opens up with ADO.NET is a data access technology from the Microsoft .NET Framework that provides communication between relational and non-relational systems through a common set of components
 
Share this answer
 
It isnt so simple, because you need to provide and maintain the interfaces and handle a lot of errors. So normally it is done in BIGGER projects with a lot of teams, or to provide interoperability like between some stand alone products like databases, internet servers and operation systems.

One simple and plain approach is to start some executables of one language with parameters or setting via a config files which is writing its results to another file.

So normally developing in one language needs less overhead but when you have some complete solution part you try to find some interface like networking with some protocol like xml.

But in all cases you have a bunch of severe security problems, so it isnt the choice for a "lazy coder" to copy and paste some code to get it work. ;-)
 
Share this answer
 
A way that is very fashionable at the moment, especially when using microservices, is to use message queues, a well known example is RabbitMQ.
See overview here: message-queue-servers[^]

If you are wondering what microservices are, read: What is Docker, and why is it so popular? · Raygun Blog[^]
 
Share this answer
 
v2

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900