I am A MCA 2009 Pass out and I like programming in C#.Net and also know PHP/MySQL, Java. I am confused which programming language should I choose (C#, PHP, Java) will have great future. I love all the three languages and also interested in learning new languages. But want to concentrate on any one language. Can you suggest me?
All three have long future.
Choose on the basis what you like the most and/or what will give you better career perspectives in the region you live in or intend to work.
Nobody can choose for you. Depends on your interest and how you can fit into the technology spirit. If you already have experience with all of them (.net/Java/php) and all three are here to stay, why not going for the one you enjoyed working with more?
Good luck ;)
I would choose Java or C# over PHP as they allow you to build both desktop and web applications. Between Java and C# I must say that my personal preference is clearly C# (my final recommendation). Why? New, but fairly mature modern language. Great community.
All 3 are good choices...
You should take decision depending on following things :
- Your personal preference.
- Demand of particular technology in your local market ( If you are aiming for job )
To know about the demand of particular technology, you can visit web sites of companies in your local town and note down the technologies they work on. Check Local job postings on job boards, eMail groups and local news papers.
Ask Help from your seniors ( Of your college.)
last words : Whatever you choose, make sure you work hard to learn its basics and try to achieve at least intermediate level in it as soon as possible.
What do your friends use? (yes, talking to friends about programming when you start your career was something I learned a lot from.. And if you use the same language it will be more productive in the beginning)
But generally I would suggest C#. Cause it's really easy to get started. Instead of choosing between tons of different framework's, you can put effort into programming. Since the .net framework is rather big.
(preparing myself for down votes and burning comments about not being language agnostic)
Do you prefer desktop or web, or like to mix it up?
If you like web stuff, PHP and C# are both great for that, as is Java apparently (I have no personal experience with client-side or server-side Java).
If you like desktop stuff then C# and Java can serve your needs, though personally I find Java apps slow and annoying... the same can be said about poorly written C# or horrid UIs done in WPF (used with C#).
Java is often sold as a multi-platform solution, so if you want to develop for multiple operating systems that's a good choice. C# also has Mono for Unix/Mac... read up if you're keen on it, Google will give you plenty of good sites to look at.
Each language can provide plenty of areas for growth, depending where you want to go.
Just my personal thoughts: for the best overall options and a language that is constantly growing I would recommend C#. You can start basic and work up to things like generics and lambda. Microsoft are always expanding it and adding more.
Well, all 3 languages are great and have a bright future. You should just choose the language you like the most. Or you could just go and search for a job and take the language which gets you a job first. ;)
I would drop PHP. If nothing else you will earn more as a Java/C# programmer (at least around here). As for Java vs C#...it doesn't really matter. Best would be to keep up with both, but there are differences which make it difficult. Still they are fairly compatible and it will make you a better programmer if you are doing both.
If you must choose, choose Java. Why? Because I don't like MS. No, that is not a good reason. I'm not sure there is one.
If you think of learning new language my fingers directly point you to the Ruby On Rails which is easier to learn and make your programming easier
Really agree with other people when the best initial choice is either C# or Java since both will provide enough work opportunities and are pretty "fun" ;-).
I am a Java programmer myself but probably C# is easier to start with since the abundance of Java frameworks that are used can be quite intimidating at the beginning.
But in the end just choose the one you like the most, even if it is just based on syntax or whatever, but also keep an eye on the languages you don't choose from time to time, that's never a bad thing..
Read thison why mastering one language is important. PHP has started to gain ground and its definately a language to look out for. But being conservative, i l suggest you to choose Java or .NET. There are lots of jobs in all the three technologies. I regard each of them as a platform. When you say java, you need to learn all that comes when java is used in developing products. For eg: web technologies(ajax,JSF,jquery), Framework (Spring,hibernate,axis), IDE (Eclipse,IntelliJ), docs/community/tutorial (java docs), build and proj mgmt tools (Maven,cruise control etc). Although java applications support any db vendor, one does more often learn/work with Oracle. Similarly, in MS world, you have their web technologies(Silverlight,ASP.NET),C#, MS SQL Server (most likely), build related tools (cruise control). So when you to start to learn a language,you aim to master a platform (technologies/tools complementing the language). So think over all these. I still doubt whether PHP can address all the above criteria as good as Java or C# can. i m sure PHP purists will argue on this. Neverthless java or c# a good programmer can make money in both of them.
I think you answered your own question without realizing it:
I love all the three languages and also interested in learning new languages.
Successful programmers never stop learning. I would avoid the urge to specialize in one language at the expense of the others. Look at it this way: a Java programmer can get hired to write Java. A C# programmer can get hired to write C#. But a great programmer can get hired anywhere.