If I find another programming language easier should I stay with it instead?
-
Be careful how you learn C++. It's not OOP, more like it's capable of OOP style things but a lot of people teach it as though it's "C with objects" which it's not. I highly recommend Accelerated C++ by Andrew Koenig and Barbara Moo. It's cheap, mercifully short, and is the *only* book I recommend for teaching C++ to anyone (even people that already "know" it) Java never clicked with me either, but I did find C# enjoyable. Maybe try C# and see if Java clicks better afterward, since conceptually they are very similar. C# is easy to learn. It shouldn't take you long.
Real programmers use butterflies
Actuallly the Deitel book is great and Bjarne's book... well he is the creator of the language so he knows what he is talking about. C++ is totaly different language than C. C doesn't even have classes and I didn't read any book on C++ yet which would learn C. I even think that books on C++ teach OOP better, better encapsulation with the C++ interface, I even learned to use getters and setters proparly. I thought about C# because I like Windows Environment but isn't it just modified java? If I struggle with advanced concept in java would it help to understand it in C# if they are so smiliar? Anyway thank's for your advices :)
-
Actuallly the Deitel book is great and Bjarne's book... well he is the creator of the language so he knows what he is talking about. C++ is totaly different language than C. C doesn't even have classes and I didn't read any book on C++ yet which would learn C. I even think that books on C++ teach OOP better, better encapsulation with the C++ interface, I even learned to use getters and setters proparly. I thought about C# because I like Windows Environment but isn't it just modified java? If I struggle with advanced concept in java would it help to understand it in C# if they are so smiliar? Anyway thank's for your advices :)
C# isn't modified Java. C# is what java would be if someone took Java and designed all of the mistakes out of it. :-D
Real programmers use butterflies
-
In the begining I would like to thank you for all your responses to my late topic on job :) I read them all. Now I have another question. I know I'm whining too much... :~ You probably think I'm acting like a prima donna. So, I heard some advices from the other programmers that If find a programming language hard, i shouldn't give up on programming and maybe try another. So I did it. About one month or two ago I started to learn c++. And immediately everything started to click. I even began to understand some java concepts that I couldn't get before. A week ago I read like about 600 pages of Deitel book on C++ like it was an interesting novel. Now I'm almost on the same productivity level as my java just in one week. I don't use pointers yet and don't allocate memory either, sometimes I have to check out the syntax but I can make simple console games(I struggle, i didn't finish any yet, but I can ;P ). I bought Bjarne Stroustup's book and I love it... I just want to learn more and program, but today I thought... damn.. I have to stop. I have assignments on java for school and I'm late. They will kick my out of college so I thought, I focus only on java. I thought: "It's a good language, it has great support for GUI, I can get job". So I woke up in the morning and thought: "I will read those java books with the same passion!" and I opened my java book... and that's it.... I can't go any further. I don't know if the problem is books themselves, are books on java really that horribly written or is it a language itself? I simply can get why and when I should use interfaces, why should I bother studying those (100 * infinity) libraries when I can write programs using just few. What is the purpose of abstract class, inner class, biolerplate code here, boilerplate code there... Plenty of lines just to print "Hello World!". I can't stand it anymore :(( Smart people, what should I do?
I was a C/C++ programmer before I learned Java and found it quite straightforward. My starting point was The Java™ Tutorials[^], which I recommend. Do it from the beginning and don't skip sections that seem too simple, and it should make sense.
-
In the begining I would like to thank you for all your responses to my late topic on job :) I read them all. Now I have another question. I know I'm whining too much... :~ You probably think I'm acting like a prima donna. So, I heard some advices from the other programmers that If find a programming language hard, i shouldn't give up on programming and maybe try another. So I did it. About one month or two ago I started to learn c++. And immediately everything started to click. I even began to understand some java concepts that I couldn't get before. A week ago I read like about 600 pages of Deitel book on C++ like it was an interesting novel. Now I'm almost on the same productivity level as my java just in one week. I don't use pointers yet and don't allocate memory either, sometimes I have to check out the syntax but I can make simple console games(I struggle, i didn't finish any yet, but I can ;P ). I bought Bjarne Stroustup's book and I love it... I just want to learn more and program, but today I thought... damn.. I have to stop. I have assignments on java for school and I'm late. They will kick my out of college so I thought, I focus only on java. I thought: "It's a good language, it has great support for GUI, I can get job". So I woke up in the morning and thought: "I will read those java books with the same passion!" and I opened my java book... and that's it.... I can't go any further. I don't know if the problem is books themselves, are books on java really that horribly written or is it a language itself? I simply can get why and when I should use interfaces, why should I bother studying those (100 * infinity) libraries when I can write programs using just few. What is the purpose of abstract class, inner class, biolerplate code here, boilerplate code there... Plenty of lines just to print "Hello World!". I can't stand it anymore :(( Smart people, what should I do?
You could also try one of these to learn Java: best-resources-to-learn-java[^]
-
You could also try one of these to learn Java: best-resources-to-learn-java[^]
Thank's but I'm more of a book reader-type and I learn best by reading well structured books. The problem is that all the books on Java, besides Deitel book are worthless. They are OK up to inheritance and after that they are just horrible. I read them and I ask myself: "Why to use that? When to use that? What's the point with this and that? Why do that?" and the authors never answer. C++ - books on the other hand are written in this manner "We use this, because of that, if you do this, that goes wrong, do this to make that right. You need this becuase it makes that easier". I don't know why java programming authors are so bad at teaching. 1000 pages after 1000 pages and still they don't expalin anything... like they want to hide something from you... I'm just frustrated.
-
In the begining I would like to thank you for all your responses to my late topic on job :) I read them all. Now I have another question. I know I'm whining too much... :~ You probably think I'm acting like a prima donna. So, I heard some advices from the other programmers that If find a programming language hard, i shouldn't give up on programming and maybe try another. So I did it. About one month or two ago I started to learn c++. And immediately everything started to click. I even began to understand some java concepts that I couldn't get before. A week ago I read like about 600 pages of Deitel book on C++ like it was an interesting novel. Now I'm almost on the same productivity level as my java just in one week. I don't use pointers yet and don't allocate memory either, sometimes I have to check out the syntax but I can make simple console games(I struggle, i didn't finish any yet, but I can ;P ). I bought Bjarne Stroustup's book and I love it... I just want to learn more and program, but today I thought... damn.. I have to stop. I have assignments on java for school and I'm late. They will kick my out of college so I thought, I focus only on java. I thought: "It's a good language, it has great support for GUI, I can get job". So I woke up in the morning and thought: "I will read those java books with the same passion!" and I opened my java book... and that's it.... I can't go any further. I don't know if the problem is books themselves, are books on java really that horribly written or is it a language itself? I simply can get why and when I should use interfaces, why should I bother studying those (100 * infinity) libraries when I can write programs using just few. What is the purpose of abstract class, inner class, biolerplate code here, boilerplate code there... Plenty of lines just to print "Hello World!". I can't stand it anymore :(( Smart people, what should I do?
Use the right tool for the right job. "Easier" is rarely "better". Learn D.
-
I was a C/C++ programmer before I learned Java and found it quite straightforward. My starting point was The Java™ Tutorials[^], which I recommend. Do it from the beginning and don't skip sections that seem too simple, and it should make sense.
I don't like tutorials. I just want to read one book from the begining to the end that will answer my queestion "What's the purpose of this and that". The problems are that tutorials are there, the books are there but the answers to questions "Why to use?" and "When to use?" aren't there. A simple example is java interfaces. When I'm reading books and whatching tutorials this is what i get "Interface is a contract. And know what java number this and that allows better interface" Ehhh okey.... but what is it exactly and why should I bother to use it? I cmade programs without it so far and everything is tip top, so why should I use it now? What's the point? "Because compiler doesn't know if a method exist" So what? Why should I write a method in an interface and not directly in a class? No answer there. I check a book on C++... Oh, Now I understand. It's an attempt to go back to multiple inheritance that was thrown away by java inventors X|
-
Be careful how you learn C++. It's not OOP, more like it's capable of OOP style things but a lot of people teach it as though it's "C with objects" which it's not. I highly recommend Accelerated C++ by Andrew Koenig and Barbara Moo. It's cheap, mercifully short, and is the *only* book I recommend for teaching C++ to anyone (even people that already "know" it) Java never clicked with me either, but I did find C# enjoyable. Maybe try C# and see if Java clicks better afterward, since conceptually they are very similar. C# is easy to learn. It shouldn't take you long.
Real programmers use butterflies
-
C++. It's not OOP
please explain in more details why not.
It does not solve my Problem, but it answers my question Chemists have exactly one rule: there are only exceptions
Don't take my word for it. Here's a ton of detail why it's not. https://www.stroustrup.com/oopsla.pdf[^] The takeway is you can do classes and objects with C++. It's so flexible you can do procedural too. But you can do generic programming and in C++ that's the preferred method for abstracting and composing functionality. That's also how the language - most specifically the STL was designed.
Real programmers use butterflies
-
Don't take my word for it. Here's a ton of detail why it's not. https://www.stroustrup.com/oopsla.pdf[^] The takeway is you can do classes and objects with C++. It's so flexible you can do procedural too. But you can do generic programming and in C++ that's the preferred method for abstracting and composing functionality. That's also how the language - most specifically the STL was designed.
Real programmers use butterflies
-
No, no, that is like the current president in US. Explain it or you fail ;)
It does not solve my Problem, but it answers my question Chemists have exactly one rule: there are only exceptions
I just thought you wanted an answer, not my answer. I figured I'd give you the "official" position. I edited my post since you responded. Maybe it will be more to your liking.
Real programmers use butterflies
-
Use the right tool for the right job. "Easier" is rarely "better". Learn D.
It seems like Java is the right tool for almost everything because it has good GUI support but... it so messy... Like it's ok up to inheritance and GUI and than... lambda this... abstract class this, inner class that, interface that, library this, library that. For a beginner like me it's a total chaos.
-
C# isn't modified Java. C# is what java would be if someone took Java and designed all of the mistakes out of it. :-D
Real programmers use butterflies
-
I just thought you wanted an answer, not my answer. I figured I'd give you the "official" position. I edited my post since you responded. Maybe it will be more to your liking.
Real programmers use butterflies
Don't take me too serious. Anyway I will check what you modified. Only my thoughts, c++ I like to have the possibilty/need to implement a copy and assignment op. Compared to the hell in c# with it's deep copy hell. Of course yes, also in c++ using pointers it can end in the same.
It does not solve my Problem, but it answers my question Chemists have exactly one rule: there are only exceptions
-
Don't take my word for it. Here's a ton of detail why it's not. https://www.stroustrup.com/oopsla.pdf[^] The takeway is you can do classes and objects with C++. It's so flexible you can do procedural too. But you can do generic programming and in C++ that's the preferred method for abstracting and composing functionality. That's also how the language - most specifically the STL was designed.
Real programmers use butterflies
-
I don't like tutorials. I just want to read one book from the begining to the end that will answer my queestion "What's the purpose of this and that". The problems are that tutorials are there, the books are there but the answers to questions "Why to use?" and "When to use?" aren't there. A simple example is java interfaces. When I'm reading books and whatching tutorials this is what i get "Interface is a contract. And know what java number this and that allows better interface" Ehhh okey.... but what is it exactly and why should I bother to use it? I cmade programs without it so far and everything is tip top, so why should I use it now? What's the point? "Because compiler doesn't know if a method exist" So what? Why should I write a method in an interface and not directly in a class? No answer there. I check a book on C++... Oh, Now I understand. It's an attempt to go back to multiple inheritance that was thrown away by java inventors X|
-
C++. It's not OOP
please explain in more details why not.
It does not solve my Problem, but it answers my question Chemists have exactly one rule: there are only exceptions
-
Don't take me too serious. Anyway I will check what you modified. Only my thoughts, c++ I like to have the possibilty/need to implement a copy and assignment op. Compared to the hell in c# with it's deep copy hell. Of course yes, also in c++ using pointers it can end in the same.
It does not solve my Problem, but it answers my question Chemists have exactly one rule: there are only exceptions
I wish newer C++ would provide an auto member-wise copy constructor if you explicitly asked for it. I don't know what that would look like though.
foo(const foo& rhs) auto;
or something One thing that's nice about C# is it does that for you. True if you're not used to it, ICloneable seems awkward but everything in the CLI/CLR including foreach enumerability is exposed through interfaces so it makes sense. At best C# could have added a language feature (syntactic sugar) to wrap it. Personally I find ICloneable intuitive after a learning curve, which is better than say, SQL.
Real programmers use butterflies
-
If you followed my suggestion you would find the answer: Lesson: Interfaces and Inheritance (The Java™ Tutorials > Learning the Java Language)[^].
Oh, I actually checked it :laugh: I just so some link and thought it would be some 13-year old youtuber showing how to copy and paste java syntax. You was right. That is really helpful. Still in written form and structured, so it's nice. I give it a shot. Thank's :)
-
Oh, I actually checked it :laugh: I just so some link and thought it would be some 13-year old youtuber showing how to copy and paste java syntax. You was right. That is really helpful. Still in written form and structured, so it's nice. I give it a shot. Thank's :)