views:

861

answers:

5

Does any one know in which programming language were Google Talk application developed. yes am asking about the windows client application. :)

+2  A: 

According to Steve Yegge, Google is using C++, Java, Python, and JavaScript. So the answer would be C++ :)

Aleris
+1  A: 

Do you mean the client side, or the server side ? The talk protocol is Jingle and libraries are available in C/C++/Java.

Ideally the protocol would be language independent, and consequently both sides (client and server) would not be constrained to a particular language.

Brian Agnew
Brian, the original question did have application in the title, so I'm assuming the Windows client. It's been edited out for some reason.
Pauk
There's been quite a lot of editing there - none by the original author - which is a bit disturbing
Brian Agnew
Yep! That's what I thought.
Pauk
+2  A: 

Google released an open source library for Google Talk called libjingle, which is written in C++. So logically, the Windows client would probably be C++ too.

Pauk
+5  A: 

http://www.google.ro/talk/

  • googletalk.exe -> Compiled with: Microsoft Visual C++ 7.0 [Debug]
  • gtalkwmp1.dll -> Complied with: Microsoft Visual C++ 7.1 DLL

So GTalk is written in C++

You'll find http://www.peid.info/ pretty useful for this kind of stuff.

daniels
A: 

According to this Google-talk Wiki, it uses libjingle which they've implemented in C++. However, a company as big as Google is big enough to develop their own in-house compilers with support for whatever dialect they prefer. This would be a sensible thing to do for Google, to have something which could be compiled for every operating system that they want to support.

I don't have Google-talk but I checked the binaties of Picasa, another Google application. It mentions the Visual C++ Runtime Library so I guess I'm wrong and Google is probably just using Visual Studio instead.

In general, C++ is a platform-independant language, making it the most appropriate language to use to write new projects. However, depending on the desired functionality, you do need the proper libraries for all the platforms you want to support and make sure they all expose the same methods. Java generates platform-independant binaries. As such, it's more powerful than C++ but those binaries depend on the Java Virtual Machine, which reduces their performance. This makes them less qualified. There are plenty of other languages that could have been used but Google is most likely using a language that supports as many platforms as possible. (Including the future Google Chrome Operating System.)

Workshop Alex