Hey y'all, I'll be needing to choose either one of Java, python, c++ or web programming for my second semester in electronics and communications but i have no idea where to start from
I've learnt all the basics of c programming in my first semester and i have to choose between the above mentioned for the second semester and it's really rattling my brain
Which of them would be better for a beginner to programming language and which would be most helpful in the future, if you'd have to say?
Thanks in advance!
C++ /Python/Java Which one is best for placement.
Is programming in Python faster than in C, C++ or Java? - Software Engineering Stack Exchange
Should I learn Java as I know a little C++ for placements?
Why does it seem that python pays more than Java (from what little googling I’ve done)? I would assume that since Java runs faster and more efficient (and since it’s harder to learn, thus, making it a more scarce skill) that Java would be the higher paying language.
Videos
Ousterhout's article1 about scripting languages suggests that the higher level the programming takes place, the more productive the programmer is. If we take that, as Boehm says2, the number of lines a programmer can write in a given time is constant and not dependent on the language or its type (low level, system programming, scripting), one can easily believe the claim. The resulting instructions-per-source-code-line -ratio can be an order of magnitude (or several) better with scripting languages than with system programming languages.
As scripting languages heavily rely on ready-made utilities for common tasks (e.g. data structures, string manipulation), their main use usually is to enhance productivity with the cost of slower running speed by providing a syntax that's easy to learn and efficient to upkeep programs with. One doesn't resort to a scripting language when top execution speed is needed.
[1]: J. K. Ousterhout, Scripting: Higher Level Programming for the 21 Century, Computer (IEEE), 1998
[2]: B. Boehm, Software Engineering Economics, Prentice Hall, 1981
If you measure productivity as "time to write a specific simple program" then it depends so much more on programmer experience and quick mind than the language that you are really evaluating the programmer, not the language.
I believe timed code contests indicate that the language doesn't really matter for those kinds of tasks. There is no one language that wins such challenges easier than others (at least not if you allow for the relative popularity of languages).
If you measure performance as "the effectiveness of the best program" written in a given language, then it's even less language-dependent. See for example the results of the Galcon AI contest. The winner is written in Lisp. The next Lisp entry, however, is ranked #280. What does this tell us about the language's suitability for writing great AI efficiently? In my opinion, nothing. It just tells us that "bocsimacko" came up with and implemented the most effective algorithms. For the record, time was not a major factor in this contest - people had more than two months to develop their code.
Lastly, if you measure performance as "long-term cost of maintaining a project" then I think you're onto something. Especially if you hire only the best people for the job, and count cost in man-hours rather than dollars. I have a strong opinion on which languages are best for this, but having no hard evidence to link you to I'll leave this opinion out. Perhaps someone else has links for this type of performance.
So here's my background. I'm an Engineering student in computer science and I was from a non cs background and I learnt C in my first semester in college. Then I wanted to some other languages between C++, Java and python. As I knew C, I decided to learn C++ as its syntax is closer to C and builds upon it. I know basics to intermediate from control flow to OOPS. I'm also learning STL and planning to learn data structures and algorithms in C++.
But most of my friends are learning Java and practicing DSA in it. Some of them know C++ before learning java and as far as python is concerned, in India python is less preferred for interviews (atleast that's the notion many have) Another reason to go for java is it is a higher level language compared to C++ as it has automatic memory management, garbage collection, and python also takes care of more issues by the language itself.
I have no exposure to java and I can pickup python in a couple of weeks.
I can learn C++ and do DSA in it then pickup java or python, learn it then do dsa in it but its time consuming and I want to master (or atleast be good and comfortable) with one language and DSA in that language.
My requirement is to get the job done(solving problems) in the simplest and easiest way without having to worry about other things.
I saw a lot of advice that the best language for leetcode or interview is the one you are most comfortable with and I agree.
But I can easily switch to python if it gets the job done in the interviews more easily.
In many posts I've seen C++ complicates things in interview whereas java and especially python makes it simple as a lot of the internal details is handled by the language itself and provides a high level of abstraction.
Also while doing leetcode I was able to build correct logic, like my approach was correct but wasn't accepted due to some language specific quirks in C++ but the same answer in python was very simple and easy.
I can continue to learn C++ and trying be good in it or learn other languages and dsa in their respective language.
So I'm confused as what should I do. My goal is to master a specific skill by focusing on one thing only and get a high paying job.
Any suggestions and advice is greatly appreciated.
TL;DR I know C++, should I learn java or python and DSA in those languages(any one) and master that?