Should I learn C and Java simultaniously?

  • Java
  • Thread starter Nothing000
  • Start date
  • #1
403
0

Main Question or Discussion Point

Hello all. I have never taken a programming class, but this next semester I am taking two. One teaches you Java, and the other is C. Will it be hard to learn both at the same time. I am very dettermined, and a very hard studier and hard worker. Has anyone else here learned two languages at the same time. These are the only two languages I plan on learning. I chose the C class, but it is required for me to take the Java class. Would know these two languages be more benificial than just learning C? Because as I understand it, the most important language to learn is C or C++. What do you all think?
 

Answers and Replies

  • #2
dduardo
Staff Emeritus
1,890
3
Java is more closely related to C++ because both focus on object oriented programming. There is nothing wrong with learning Java and C at the same time but you might not have enough time to spend practicing both languages to complete understanding. What I have found is that if you learn C/C++ well you'll be able to pick up any other language very easily. Java tends to shield the programmer more and thus takes away what really is going on.
 
  • #3
403
0
Really? I have the choice of being in the C++ class instead of the C Class. I though C++ was harder than C
 
Last edited:
  • #4
dduardo
Staff Emeritus
1,890
3
C++ is an extension of C that adds object oriented concepts. C++ is only more complicated than C because you can do more with it. In most intro classes you won't even get to the advanced features of C++, so the difference between learning C and C++ are almost indistinguishable. Perhaps the only difference you'll see is the way you input and output data, which is only a small part of programming. You can literally take a class just on object oriented programming and that is why intro classes won't go into it. If you do have the choice between C and C++ you're probably better off with C++.
 
Last edited:
  • #5
403
0
I don't understand, you are saying that C++ is a little harder, but I should take it. Would you please explain that? I have to make the decision pretty soon before classes fill up. Would it be easier AND smarter to learn C++ with the required Java class, or C with the Java class?
 
  • #6
403
0
In my schools catalog it is recomended that one takes C before taking C++. That sounds right to me, becuase isn't C++ based on C. So wouldn't it be easier to learn C++ if you first understand C? I know very little about this, so if I am saying something stupid please forgive me.
 
  • #7
jtbell
Mentor
15,584
3,561
Nothing000 said:
I have never taken a programming class, but this next semester I am taking two.
Why? If you have never taken a programming class before, what leads you to think that you can successfully learn how to program, and two programming languages, all at once?

When you study your first programming language, you are really learning two things at once: how to program computers (in general), and the specific details of a particular programming language. I've taught introductory programming courses in Fortan, Pascal and C++. I've seen many students, even some very bright ones, have great difficulty with programming in general, regardless of the particular language being used.
 
  • #8
dduardo
Staff Emeritus
1,890
3
I have to agree with jtbell. Learning 1 language well will do you more good than trying to learn 2 not very well.

Programming is much more than just the language. It is about the way you approach the problems.
 
  • #9
403
0
It is just that I want to get into more advancecd classes faster, because I am thinking about minoring in computer science and I still want to get my bachelor degree in 4 years, and their is no other class that I can take that does not require a prerequisite that I have not taken yet.
 
  • #10
403
0
jtbell said:
When you study your first programming language, you are really learning two things at once: how to program computers (in general), and the specific details of a particular programming language.
Well, I am going to spend the entire Christmas break learning the first important thing you mentioned, about how computers are programmed. I am going to read these two books: Beginning programming for Dummies, and "Programming Logic and Design", by Joyce Farrel. The logic and design book is more like a text book, but it is for complete beginners. Neither of these books teach you a language, nor do either of them focus on a specific language. They both claim they just teach you how a computer is programmed in general. So I figure after I read these two books I will be ready to almost focus solely on learning programming language.
 
Last edited:
  • #11
1,356
2
www.libsdl.org[/url] [url]www.opengl.org[/URL]

just pick up any 1980s-90s C book...it'lll teach you majority of what you needfor intro course =]
 
Last edited by a moderator:
  • #12
403
0
So do you guys think that it will be too difficult to actually learn and fully understand two programming languages at the same time? I will also be taking Calculus 2, Engineering Physics 2, and General Chemistry 2.
 
  • #13
Learning Java and C at the same time seems like a good thing. If anything, it actually seems pretty ideal. This is because regardless of language, you will develop a set of misconceptions and bad habits that will only be removed by years of experience. By that time, regardless of starting language, you will be able to pick up most any other language.

Now, certain language designs disallow for some types of bad habits to develop and their form allows one to appreciate proper programming paradigms most quickly. Of the two, I would name Java as being that. But then C is a systems language whose low to the metal nature allows you to program most efficiently in terms of developing system optimized code. By learning the two at once, you get some of both worlds and can reinforce your programming ability as the two interact to disallow certain misconceptions to form that would have because of such things as your assume using pointers is the only way or that the object model is the only way to go and abuse polymorphism.

That is my opinion.
 
  • #14
403
0
Wow, it sounds like learning C and Java at the same time would be very beneficial. But I must say, accorrding to what these other people are saying I am begining to have doubts about taking both at the same time. I am starting to think that my workload will be so great that I will not have enough time to learn them as good as I would like to.
 
  • #15
I think getting overwhelmed might be the only problem. I think if you can make the time you should try it (and blog about it too, so those of us who learned differently can see what it is actually like :D). While you might not master the syntax of both as you might have otherwise done, I argue you would be a better programmer for that very reason. Attatchment to syntax and language derived specific ways of thinking are one of the main hurdles towards writing elegant code.
 
  • #16
403
0
You sure are making a strong case for me to learn both at the same time Deenicus. If I don't learn C this semester though, I will just learn it next semester, this is the way that the Computer Science department at my school recomends it.
 
  • #17
403
0
I just realized that I titiled this thread as "Should I learn C and Java AT THE simultaniously?"! How dumb of me.
 
  • #18
513
0
I would recommend that you do NOT take both classes at the same time. I just don't see a reason for it. Study one language for a semester -- learn the concepts and fundamentals which are similar for all programming languages (and certainly Java and C). Once you have a very firm grasp of programming fundamentals in general, and classes you take afterwards will be MUCH easier and you will understand and learn much, much more from them.
 
  • #19
chroot
Staff Emeritus
Science Advisor
Gold Member
10,226
34
C and Java are similiar enough in syntax that what you learn about basic program features like loops, conditionals and the like will directly translate from one language to the other.

The only problem I see is that C is a procedural language, and Java is an object-oriented language. While the syntax may look similar when looking at small pieces of code, the overall approach one would take to solve high-level problems is quite different in one language than the other. Some problem-solving skills in C won't be directly applicable in Java, and vice versa.

To clarify this a bit more, imagine that someone gave you a fragment of three lines of code, and asked you to determine its language. There are many such fragments of code which are literally identical in both languages, and many more which have only slight differences. However, if someone gave you an entire module of code, it would be readily apparent which language was used; the differences in overall structure are very large between C and Java.

However, as dduardo points out, most of these first-semester language courses are not going to address broad system-level problem-solving; they're going to focus on syntax and basic flow-control and computational tasks, which are quite similar in both languages.

If you're sharp and can manage to keep track of the (sometimes small) differences between the two languages, I don't think you should have a problem taking both classes at once.

- Warren
 

Related Threads on Should I learn C and Java simultaniously?

  • Last Post
Replies
1
Views
2K
  • Last Post
Replies
1
Views
4K
  • Last Post
Replies
1
Views
2K
  • Last Post
Replies
1
Views
2K
  • Last Post
Replies
9
Views
1K
  • Last Post
Replies
1
Views
1K
Replies
5
Views
2K
Replies
7
Views
4K
Replies
4
Views
4K
Top