Which programming language is mostly used today for developing corporate software
Basically, name of the subject says everything... I'm wondering which language is mostly used today for developing "serious" (corporate) software. Which are pros and cons for each? I'm not trying to start some flaming war... nothing similar!
I just want to hear your thoughts about those programming languages. If somebody has a good book regarding any of those languages, please, share the title and the author. Thank you. NOTE: if anybody thinks I should add another language, please, do recommend it! ;) |
Quote:
Quote:
Kevin Barry |
C++
What I like about it: - OO - Lots of great libraries (Qt, Boost, GTK+) - It makes sense to me and|because it's like Perl, the language I started programming in What I don't like about all the others: Java: - Slow - Sun - It's a lot of typing. C: - It feels too '80s - No OO - I'm bad at it :P C#: I've never tried programming in C#. Those are my personal opinions. Bear in mind that all of these are Turing Complete languages therefore anything you can do in one you can do in any of them. So it really comes down to your (or your Boss's) preferences. |
Quote:
Quote:
Cheers! |
I would say C or C++, but it depends on the corporation and their needs. I voted for C, it is much less bloated and has the best backwards compatibility.
|
I think it depends a great deal on the corporation you're talking about. Most companies I've worked for/with have a HUGE investment in Java. Over the past few years a lot of the Microsoft shops have done a lot in C#. I've also seen a lot of serious bioinformatics infrastructure written in Perl.
|
Am I misremembering, or did you change the question after I voted?
In the company where I work, we use mostly C++ but also other languages including C and C#. In the department where I work, we use exclusively C++ for the products we develop but several developers use Matlab's programming language for internal programs written for research purposes. I voted for C++ based on the original question. I think C++ is the only language appropriate for developing large projects. The bigger the project, the more reasons there are that all other languages fail. But I think C# is the language currently used most for developing commercial software. I think MS has a lot of clout and has used that clout to promote C#. With C# more than other languages, they are able to push the standard around to disadvantage non MS platforms. I personally think C# is a rotten language in general, but even if it were a good language I would prefer a language whose standard is less under MS's control. |
Quote:
Quote:
I do like C++, and the fact it is object oriented... Only thing I'm concerd is that you can cause a lot of memory leaking if you don't know what you are doing. Thank you for your opinion and, again, sorry if changing the thread name offended you somehow! :) |
Quote:
C and C++ have extremely flexible pointer support (beyond most other programming languages). That is a flexibility I would hate to try to program without. But it is a flexibility that makes life much harder for any automatic garbage collection system. Even without the flexibility of C pointers, any "one size fits all" system for deciding when to delete objects will be terribly wrong for at least some situations. C and C++ make the programmer take that responsibility, which means letting the programmer select a solution that fits the specific requirements of each situation. Quote:
BTW, you mentioned C++ specifically (not C) for memory leak issues. The memory management issues are identical between C and C++. The various solutions are syntactically easier in C++ than C. So given similar projects, C should be more prone to memory leaks than C++. There may be an attitude difference. C++ has so much more implicit functionality (things the compiler takes care of for you by default) that it may be easier to forget it doesn't manage object ownership. Quote:
Use std::vector, std::string, std::cin and std::cout as black box functionality without even trying to learn the C++ language features that make them possible. (Much later go back and learn those language features). Delay learning about C strings (char arrays used like strings) and all their associated functions until you are much more comfortable with pointers and C arrays in other contexts. Maybe delay learning scanf indefinitely. I would use struct rather than class for all objects in beginner C++ and delay learning about public vs. private vs. protected. But I expect a lot of other experts would be upset at such a proposal. |
Quote:
Thank you for your time and your suggestions johnsfine! You've been very helpful. Also big thanks to all other members that replied and voted in the poll! Best regards. |
Quote:
Kevin Barry |
Quote:
A struct can have public, private and protected members, can inherit from base classes, can have virtual functions and constructors and a destructor and anything else a class can have. A class could have all public members, all POD, like a C structure. Quote:
My earlier comment suggested delaying learning about C strings until after learning about C arrays. But that doesn't suggest learning about C arrays too early. A C beginner needs to learn about C strings early because beginning programming without strings is lame. So a C beginner usually misunderstands C strings (more than any other feature of C). A C++ beginner can learn std::string and leave C strings until much later. |
Quote:
Quote:
Quote:
|
OK, I didn't read everything up there, but I'm a bit surprised that no one mentioned any WEB stuff, since we're all supposed to be moving to the cloud and what not!....
Isn't Javascript important? I personally skipped C++ in favour of it. :) |
Quote:
Thank you for your reply! BTW... I also like JavaScript (but not as much as C or C++, even though I'm still beginner)! ;) Cheers! |
All times are GMT -5. The time now is 04:44 AM. |