|
actually if it at least did that there's some hope for him as a front-end web designer.
Real programmers use butterflies
|
|
|
|
|
The lack of a space betwixt the command and the 'n' is a good sign of that as well!
"I have no idea what I did, but I'm taking full credit for it." - ThisOldTony
"Common sense is so rare these days, it should be classified as a super power" - Random T-shirt
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
|
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 ).
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?
modified 3-Jun-21 21:01pm.
|
|
|
|
|
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
modified 3-Jun-21 21:01pm.
|
|
|
|
|
C# isn't modified Java.
C# is what java would be if someone took Java and designed all of the mistakes out of it.
Real programmers use butterflies
|
|
|
|
|
Really? Oh that gives me hope. I order a book on C# and wanted to try it nut I thought it was modified Java so I caceled the order and thought that I force myself to study from my Java books.
modified 3-Jun-21 21:01pm.
|
|
|
|
|
If you've already coded in Java, C# will feel somewhat "familiar", but I think of it as more streamlined and more cohesive than Java. It's just more ... flowy to code in.
The hardest thing about it is getting used to MicrosoftPascalCasingSchemesInTheDnf
Like it's IPAddress, but DnsEntry. (if an acronym is 3 letters or more, it gets title case treatment)
Real programmers use butterflies
|
|
|
|
|
I will give it a try. It would be great to learn it because I can easily find a job and program games in Unity I give java another chance and start to learn c# as my lifebuoy in case I still have problems with java Thank's for advice.
modified 3-Jun-21 21:01pm.
|
|
|
|
|
Thanks for recommendation When I do my assignments for school I will give C# a look.
modified 3-Jun-21 21:01pm.
|
|
|
|
|
honey the codewitch wrote: The hardest thing about it is getting used to MicrosoftPascalCasingSchemesInTheDnf
That's because of Anders, I think.
"He was the original author of Turbo Pascal and the chief architect of Delphi. He currently works for Microsoft as the lead architect of C# and core developer on TypeScript."
|
|
|
|
|
For new work, I've been simply ignoring Microsoft PascalCase for member names, and use camelCase, instead. I got a few warnings about the style at first, then the warnings just stopped.
|
|
|
|
|
That's an almost exact description of kotlin - Intellij pretty much literally found the most disliked bits of java and cleaned them up.
|
|
|
|
|
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
modified 19-Jan-21 21:04pm.
|
|
|
|
|
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
modified 19-Jan-21 21:04pm.
|
|
|
|
|
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
modified 19-Jan-21 21:04pm.
|
|
|
|
|
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
|
|
|
|
|
foo(const foo& that) = default;
subject to some restrictions that make sense.
|
|
|
|
|
yeah something like that.
I just wish there was a way to do unions whose members had nontrivial albeit zero argument constructors but I understand why there's not. It would just be so convenient.
Real programmers use butterflies
|
|
|
|
|
What's this with ICloneable?
It adds a Copy function which you have to implement yourself.
Whether that's a shallow or deep copy or anything in between is up to the implementer.
Microsoft advices against the use of ICloneable (in public APIs) as it doesn't do anything and rolling out your own IDeepCloneable and/or IShallowCloneable would be more clear.
From the docs[^]: "Because callers of Clone() cannot depend on the method performing a predictable cloning operation, we recommend that ICloneable not be implemented in public APIs."
Maybe you're talking about Object.MemberwiseClone Method (System) | Microsoft Docs[^] (which returns a shallow copy)?
|
|
|
|
|
Ah, I wasn't aware of that fine print.
Well I always do implement my ICloneable as private and implement an ICloneable<T> type instead which (in my code) is always a deep copy. And "clone" really should imply that anyway.
And technically, what actually constitutes a "deep" copy is always up to the caller anyway. Some fields in a deep copy may indeed be shallow copied, like if the object uses string pooling or something, and I find Microsoft's docs to be characteristically trite on such matters.
Frankly, I know if I call ICloneable<t> I'm getting the counterpart to MemberwiseClone. That implies a deep copy. And as I said, what that is is always up to the caller in the end anyway. What's expected is a "copy" of the object, but again, when you throw things like pooling into the mix, what that means might be different than what you expect.
Real programmers use butterflies
|
|
|
|
|
Wow, that was some advance stuff here I'm not there yet, but will keep it in my head. I will surely have good use of that knowledge if I advance to that level someday
modified 3-Jun-21 21:01pm.
|
|
|
|