C++ vs JAVA
Bl8ckr0uter
Inactive Imported Users Posts: 5,031 ■■■■■■■■□□
in Off-Topic
Ok guys I have a little issue. Basically due to some scheduling issues with school (and me) If I want to add the software development track to my degree I would need to do C++ and JAVA. Since I want to graduate from school by the end of the summer quarter next year, it would be impossible for me to do both languages UNLESS I test out of one sequence. Which do you guys think would be easier to learn on your own (a few hours a week or so) C++ or JAVA. I'm thinking C++ for some reason but I don't know why. Anyone else have any other thoughts?
Oh and just in case you were wondering, I want to get out by then because I don't want to be there when they switch from quarters to semesters. It is going to be messy.
Oh and just in case you were wondering, I want to get out by then because I don't want to be there when they switch from quarters to semesters. It is going to be messy.
Comments
-
mikej412 Member Posts: 10,086 ■■■■■■■■■■If your school will accept the SCJP Certification to place out of the Java class -- then I'd go with that.
Otherwise I'd still think Java is "easier" -- but that's probably because I've done a lot more Java programming in the last 10 years than C++ programming.:mike: Cisco Certifications -- Collect the Entire Set! -
eMeS Member Posts: 1,875 ■■■■■■■■■□I'd say that Java would be much easier to pick up on your own. The languages are very similar, however, I think it's fair to say that C++ allows you to dig a little deeper under the hood...
For example, one of the challenges that I always had with debugging C++ code in the past involves whenever pointers are used, whereas in Java you really don't access memory in the same way and therefore don't have the same types of debugging issues...
The other thing that I'd add is that developing strong logic skills will be something that will apply roughly the same in any programming language, then it's just a matter of learning the specific syntax.
MS -
Chris:/* Member Posts: 658 ■■■■■■■■□□Java is easier to learn but as eMeS stated C++ allows you to get closer to the hardware. If you are going to continue down the security track I suggest C++, Java will still help you but C++ would be betterDegrees:
M.S. Information Security and Assurance
B.S. Computer Science - Summa Cum Laude
A.A.S. Electronic Systems Technology -
UnixGuy Mod Posts: 4,570 ModI say C++ and use this book:
C++ How to Program, 4/e
that's what I used at uni, and it's really good. Java is an object oriented programming language, and IMHO I think you need to learn basic programming ( control structrutre, loops, data strcutures..etc) before you start using inherited objects and built-in libraries like in Java, because you might get lost - or you might not, it depends on you. Personally, I recommend C++ -
Chris:/* Member Posts: 658 ■■■■■■■■□□For C++ I recommend:
Amazon.com: The C++ Programming Language: Special Edition (0785342700732): Bjarne Stroustrup: Books: Reviews, Prices & more
Amazon.com: C++ Primer (4th Edition) (9780201721485): Stanley B. Lippman, Josée Lajoie, Barbara E. Moo: Books
For Java I recommend:
Amazon.com: Core Java(TM), Volume I--Fundamentals (8th Edition) (9780132354769): Cay S. Horstmann, Gary Cornell: Books: Reviews, Prices & more
Amazon.com: Core Java, Volume II: Advanced Features [CORE JAVA VOLUME II ADVD FEATU]: Books
Amazon.com: Effective Java (2nd Edition) (9780321356680): Joshua Bloch: Books: Reviews, Prices & more
There are other great books out there but these will give you a pretty solid foundation.Degrees:
M.S. Information Security and Assurance
B.S. Computer Science - Summa Cum Laude
A.A.S. Electronic Systems Technology -
Bl8ckr0uter Inactive Imported Users Posts: 5,031 ■■■■■■■■□□Interesting guys. To add a few things:
My school said they would accept SJCA or SJCP for the 2 Java classes but apparently no one has every tried to do it.
I was thinking C++ would be easier because it would tie into my linux studies pretty well. -
earweed Member Posts: 5,192 ■■■■■■■■■□Since I don't know if you have a way to test out of C++ then you are probably going to have to test out of Java. WGU used to have all IT people do the SCJA and I've heard even that test is fairly hard. They used the Big Java text but I think the books that Chri:/* recommended above would probably be better. I worked through the Big Java book myself and found it to be less than satisfactory. I forget which book I used to supplement it (it's on books 24x7) but it resembled the effective Java book (judging just by the TOC)
I didn't have to complete the Java course because of a program change but I continued working through to the end of the books just to learn some Java. I've never programmed in C++, just Fortran ( 4 different "flavors"), Basic (old school), some assembler, and a little unix (long time ago)No longer work in IT. Play around with stuff sometimes still and fix stuff for friends and relatives. -
Chris:/* Member Posts: 658 ■■■■■■■■□□SCJA would encompass everything in Java Head First and a few bits afterward. SCJP is not easy you really have to understand the processes in Java and what errors you will see and the probable output. SCJP really does require practice doing programs in Java and then studying for the exam.Degrees:
M.S. Information Security and Assurance
B.S. Computer Science - Summa Cum Laude
A.A.S. Electronic Systems Technology -
eMeS Member Posts: 1,875 ■■■■■■■■■□I say C++ and use this book:
C++ How to Program, 4/e
that's what I used at uni, and it's really good. Java is an object oriented programming language, and IMHO I think you need to learn basic programming ( control structrutre, loops, data strcutures..etc) before you start using inherited objects and built-in libraries like in Java, because you might get lost - or you might not, it depends on you. Personally, I recommend C++
C++ is also an OO language, and also has libraries and inheritance.
MS -
UnixGuy Mod Posts: 4,570 ModC++ is also an OO language, and also has libraries and inheritance.
MS
yes indeed it is..I noticed schools when they teach C++ they start from the beginning, while with Java(and C#) they usually start with built-in objects. The book I suggested (which is used by many universities) starts from the scratch up to the point where u build your own objects and start inheritance..or that's the way I learned it
The 2nd book which "Chris" suggested "C++ primer" has a different approach, it starts from the top down. I guess there are many ways to learn the same topics in both languages. -
Chris:/* Member Posts: 658 ■■■■■■■■□□I prefer teaching Object Oriented programming from the beginning otherwise people use bad habits. Since C++ can be programmed completely procedural because of its C roots I am a firm believer that OO programming and explanation has to be taught from the beginning.
On a side note if OO concepts are hard to understand a good book would be:
Amazon.com: The Object-Oriented Thought Process (3rd Edition) (9780672330162): Matt Weisfeld: Books: Reviews, Prices & moreDegrees:
M.S. Information Security and Assurance
B.S. Computer Science - Summa Cum Laude
A.A.S. Electronic Systems Technology -
Met44 Member Posts: 194Do you already have experience with any other languages?
In my opinion, it's a shame you can't start with C. Good assignments in C will take away much of the mysticism you'll see in C++ or (particularly) Java as you start out.
That said, I think that diving into C++ without having some background in C would be a bit more confusing than Java. Some double-features, such as structures/classes, and pointers/references, seem less confusing, knowing the goals and history of both C and C++. Of course, knowing C is definitely not a requirement to learn C++ -- you'll learn the overlap as you go.
Java doesn't hold much interest for me personally -- I like being closer to the hardware, and I really enjoy C. So I'm inclined to like C++.
What is easier to learn? I think Java. It doesn't have "baggage" from C. Java is not my cup of tea, but it could be yours. If you end up looking for a C++ book, I highly recommend C++ Primer Plus, by Stephen Prata.The other thing that I'd add is that developing strong logic skills will be something that will apply roughly the same in any programming language, then it's just a matter of learning the specific syntax.
Very good point. One learns to program once per paradigm, the rest is mostly syntax. -
Bl8ckr0uter Inactive Imported Users Posts: 5,031 ■■■■■■■■□□Do you already have experience with any other languages?
Sort of. ASP.NET, mysql and HTML from way back but I have forgotten most of it. My school doesn't offer C otherwise I would take it. I am going to check with my school tomorrow to see if I actually have to take the JAVA classes to get the degree or if I can do only the C+ track. If I can't, I don't know what I will do. Since Java has a cert program, I will probably self study JAVA because i am more interested in C++ anyway so I would like some formal instruction. Plus the CS programs around here seem to be more C/C++ focused than JAVA focused. -
Chris:/* Member Posts: 658 ■■■■■■■■□□The .Net languages come from a different school of thought with the way they were designed. The old school Hungarian syntax has really influenced the future development of those Languages. You will have an understanding of the use of data and data passing but it really won't help much learning either of the two languages unless you had some C# experience.Degrees:
M.S. Information Security and Assurance
B.S. Computer Science - Summa Cum Laude
A.A.S. Electronic Systems Technology -
gulatisneha56 Member Posts: 5 ■■□□□□□□□□
To learn any Programming Languages I would recommend you to Prefer Sumita Arora for C++ which is used as main book in grade 11th and 12th CBSE schools.
And then for Java would like to ask you to study for Oracle certification books i.e., SCJP and OCJP books, they are available online.