Should I start with Java or C#?
-
Hello! I am interested in starting programming, and I've recently started using C#. However, I have read a lot of good things about Java, and I was wondering if someone could write me some advantages and disadvantages with each language (with a focus on game programming). I know game programming is not the way to start, but my lifelong dream is to become a game programmer, so I thought that if I learned with game programming in mind, it would be a lot easier for me. I have had trouble getting started with learning programming in C# because I could not see any noticeable progress, and that demotivated me. Could someone link me to tutorials in Java/C# where I feel like I am making progress? The most advanced I can program in C#, currently, is a calculator! Thank you all for all future answers!
-
Answer:
I would say that just look at what your interest are and learn which one would help you first.
Jorge Vidal at Quora Visit the source
Other answers
I learned both Java and C#. I actually enjoy both. But for game programming There is a major upside to using C# and that is Unity. It is a low cost game engine that allows you to do your programming in C#. There are tutorials for Unity, though most seem to be in Javascript. But you can learn the C# outside of Unity and then apply it directly to building games.
Joseph Hopper
Psst... let me tell you a secret about C# and Java... They are very similar! Both are object oriented and awesome. Also each of them has their advantages and disadvantages. When it comes to language features and power, C# is a clear winner here. For example: it supported lambdas way before Java. Java introduced lambdas just 1 month ago! I could go on a lot more what C# can do and Java can't, but there are tons of comparisons just a Google search away. Java however has something big that C# does not: Cross platform compatibility. This is what makes Java famous, awesome and appealing. And actually there is nothing you can't do in C# that you can't do in Java (except Windows 8 apps, which is only a guess of mine). The other perks of being a Java programmer is that you get to write Android apps. Sure, you can use C# for Windows Phone apps, but Android is clearly superior to Windows Phone at the moment. It's not that you can't use C# for Android development though - Actually there are plenty of cross platform frameworks out there that let you do that. I wont say "Take Java" because my opinion is biased toward the lovely JVM. Whichever you take will be fine and once you've learned either of both, it will be a piece of cake to learn the other. P.S: Take Java. (Just kidding, haha) Edit: As for the gaming part, I'm not really sure. I've seen plenty of games written in Java, but in the end you're gonna have to rely on languages such as C++ in order to achieve ultimate success in the gaming area. All the mainstream games that we love most are usually created in C++.
Dukagjin Surdulli
Java is way more extended noy only in Oracle and IBM but also in Google and Open Source projects like the ones at Sourceforge. Start there. Then it is a matter of days to learn the differences in C# but your background and chances of developing will be bigger, the more used your languages are.
Raul Lapeira
Stop on both languages! They both absolutely suck as first programming languages and I say this as a 17+ year Java programmer! Both languages require you to do things without knowing the concepts behind them and get in the way of learning because you have to do certain things by rote without knowing why. And you're lacking the foundation to understand them until you get fairly deep into the language. This is very frustrating for new programmers since they ask "Why do we do this?" and teachers can't give an adequate answer because it is still weeks or months away in teaching the concepts of the language. Object oriented programming is NOT an introductory concept! You want to learn programming with an eye towards games? Python is your best friend. I recommend a book called "How to Program Python" by Deitel & Deitel. It's a chapter-by-chapter book with exercises and questions at the end (as it is used as a textbook). Start with Chapter 1. Each chapter builds on the next and eases you into programming concepts from the fundamentals forward. Python has all of the richness of Java and C# with the ability to use as little or as much advanced concepts as you choose. It is also interpreted so you can start small and use it interactively. Once you've gone through that book, look up a framework called PyGame. The website for the framework has a whole tutorial series. Dive in and start writing your games!
Matt Pickering
I feel that C# has a more elegant tenure, and it's easier to handle. It also has the advantage of having a better IDE, and, being born at a later time, it is a bit more mature than Java. It is backed by Microsoft and Microsoft loves developers that like it back.
Dorin LazÄr
it's question that every newbie asked but They don't see the common thing between these.Both languages are based on OOPS(object oriented approach) .So if you know C and C++ ,then you cam learn any languages within ome month.Only differences come is their syntax rule. Btw Java is better option to learn.Some reason : 1. Unlike C#, It is platform independent.C# run only on window platform. 2. Java also used in Android development. So you can easily switch to Android whenever you want. 3. A lot of online resources and tutorial . So don't think about different languages.Just command on core concept and you can learn whatever you want.
Amit Bhardwaj
I would say go with "JAVA". Java has enormous amount of resources and these resources are open source and growing rapidly. "Java" is big, its not easy to learn it in just a month or so. It takes time for sure. But most importantly, focus on specific topic. Just don't go and learn randomly.1. Learn CORE JAVA (Murach Programming) 2. Data Structures and Algorithms (http://rineshpk.weebly.com/uploads/1/8/2/0/1820991/data_structures_and_algorithms_in_javatqw_darksiderg.pdf) 3. Servlets & JSP ( https://www.youtube.com/user/koushks) 4. Struts (https://www.youtube.com/user/koushks) 5. Hibernate (https://www.youtube.com/user/koushks) 6. Springs (https://www.youtube.com/user/koushks) 7. JAX-RS Restful Services (https://www.youtube.com/user/koushks) 8. Soap (https://www.youtube.com/user/koushks)
Shiva Shinde
I love c#. I think the language is very elegant. This http://is.net default language and can be used to do anything. I have developed web apps, windows apps, web services, windows phone apps, windows 8 apps, windows services etc. C# is the default language for all these. Apart from language, I love how Microsoft is putting effort in its development. Features like generics, LINQ and anonymous types are amazing for productivity. C# also lets you do amazing cloud apps using Azure. Visual Studio is one of the best IDEs around. MSDN is a great support network. Channel9 is superb for learning new stuff. Give it a serious shot and I think you will fall in love with it \U0001f60a
Gaurav Sharma
Related Q & A:
- How to call java from c#?Best solution by Stack Overflow
- Can I use ajax to call c#?Best solution by Stack Overflow
- How to start learning Java?Best solution by Yahoo! Answers
- How do I start a consulting business with very little start-up capital?Best solution by Yahoo! Answers
- How do I travel to Forest hill C.I by TTC from Dunn and Springhurst and get back?Best solution by Yahoo! Answers
Just Added Q & A:
- How many active mobile subscribers are there in China?Best solution by Quora
- How to find the right vacation?Best solution by bookit.com
- How To Make Your Own Primer?Best solution by thekrazycouponlady.com
- How do you get the domain & range?Best solution by ChaCha
- How do you open pop up blockers?Best solution by Yahoo! Answers
For every problem there is a solution! Proved by Solucija.
-
Got an issue and looking for advice?
-
Ask Solucija to search every corner of the Web for help.
-
Get workable solutions and helpful tips in a moment.
Just ask Solucija about an issue you face and immediately get a list of ready solutions, answers and tips from other Internet users. We always provide the most suitable and complete answer to your question at the top, along with a few good alternatives below.