Page 1 of 2 [ 25 posts ]  Go to page 1, 2  Next

Pieplup
Veteran
Veteran

User avatar

Joined: 15 Dec 2015
Age: 20
Gender: Non-binary
Posts: 2,658
Location: Maine

10 Aug 2016, 8:22 am

I want to learn C/C++ to develop programs possibly for a career path. So I'm wondering how did You (Assuming you know C/C++) I think it is a good place to start. I'm okay with Html. It's alot like BBCode. Though I think C++ Would be a good choice for a first language cause it is very Common.


_________________
ever changing evolving and growing
I am pieplup i have level 3 autism and a number of severe mental illnesses. I am rarely active on here anymore.
I run a discord for moderate-severely autistic people if anyone would like to join. You can also contact me on discord @Pieplup or by email at [email protected]


saxgeek
Veteran
Veteran

Joined: 18 Jul 2015
Age: 28
Gender: Male
Posts: 730

11 Aug 2016, 10:25 pm

I actually found C a lot easier to learn after programming in assembly for a while. When I first started to learn C/C++, I followed some online guides, and there were a lot of holes and missing details in the explanations, and the code didn't make a lot of sense. After knowing about registers, memory layout, pointers, and the stack from learning assembly language, C programming really clicked for me since I knew what was going on at a lower level.



Chronos
Veteran
Veteran

User avatar

Joined: 22 Apr 2010
Age: 44
Gender: Female
Posts: 8,698

11 Aug 2016, 11:28 pm

Pieplup wrote:
I want to learn C/C++ to develop programs possibly for a career path. So I'm wondering how did You (Assuming you know C/C++) I think it is a good place to start. I'm okay with Html. It's alot like BBCode. Though I think C++ Would be a good choice for a first language cause it is very Common.


C was one of the first languages I learned, but I like C++ better because it looks cleaner, and I'm a visual person.

For C++, to do hard core programming as a career path, I would go the CS route and take a few C++ courses at a college. They are getting more difficult to find as many colleges are phasing them out in favor of Java, but I don't think C++ will go the way of FORTRAN any time soon.

Also, there are a lot of C++ books. They are usually thick beasts that are needlessly complicated, but two that I highly recommend are one ofthe C++ for Dummies books to start, and C++: Classes and Data Structures by Jeffery Childs for the concepts in the name of the title. By far these two are my favorite C++ books.

C++ is one of those languages, where if you know, it's often easier to learn other languages.



saxgeek
Veteran
Veteran

Joined: 18 Jul 2015
Age: 28
Gender: Male
Posts: 730

12 Aug 2016, 10:55 am

I think C looks cleaner than C++, but to each his own. My university almost exclusively uses Java for teaching things, but the syntax of Java is almost the same as C/C++, so it's easy to apply the concepts to other languages. I don't think C/C++ will ever become completely phased out by Java in the real world, especially in embedded systems, because Java requires a lot of extra baggage to run, like a JVM and a really bloated class library that takes up hundreds of MB of space, whereas, C and C++ use simple libraries, and compile directly to executable machine code.



Pieplup
Veteran
Veteran

User avatar

Joined: 15 Dec 2015
Age: 20
Gender: Non-binary
Posts: 2,658
Location: Maine

12 Aug 2016, 11:00 am

Okay, I'll look into assembly langauge.


_________________
ever changing evolving and growing
I am pieplup i have level 3 autism and a number of severe mental illnesses. I am rarely active on here anymore.
I run a discord for moderate-severely autistic people if anyone would like to join. You can also contact me on discord @Pieplup or by email at [email protected]


saxgeek
Veteran
Veteran

Joined: 18 Jul 2015
Age: 28
Gender: Male
Posts: 730

13 Aug 2016, 11:26 pm

If you have any specific questions about C/C++ or assembly, feel free to PM me.



Chichikov
Veteran
Veteran

User avatar

Joined: 27 Mar 2016
Age: 50
Gender: Male
Posts: 1,151
Location: UK

14 Aug 2016, 7:31 am

If you're looking for a career then you may find yourself more limited if you go for lower-level languages, especially assembler which is used quite rarely. You might want to consider higher-level languages like java, c# etc.



saxgeek
Veteran
Veteran

Joined: 18 Jul 2015
Age: 28
Gender: Male
Posts: 730

14 Aug 2016, 10:52 am

I was just recommending learing it because it helped me understand C and C++ better. And languages like Java and C# are almost variations of C++, so it's easy to learn them once you know C++. I find programming easy to learn once you know what's going on under the hood and can make sense of it.



marshall
Veteran
Veteran

User avatar

Joined: 14 Apr 2007
Gender: Male
Posts: 10,752
Location: Turkey

14 Aug 2016, 2:40 pm

I'd recommend learning straight C first, then Java, then C++. It's nice to learn OO programming in Java because it forces you to follow a strict OO convention. It also doesn't require you to do memory management. I's also nice the that Java is not just a language but really almost a virtual operating system, complete with it's own GUI features. You don't need to know the operating system to create interactive environments beyond a simple text console.

C++ is a lot like Java, but it's way more flexible and you have to deal with cleaning up memory. The flexibility of C++ can be confusing. If you want to program like Java in C++, you have to learn the Standard Template Library. It has flexible array structures like lists. In C++ you don't have a standard virtual operating system to work with, so you eventually have to learn operating system functions native to the machine you're working on. I only really know a little of the windows OS API and it's kind of a mess to learn.

Java is easier for doing GUI stuff quickly. That's why I'd learn it first. Java also doesn't crash hard without giving you a descriptive error message. C/C++ can be harsh when it comes to debugging. You'll often get OS "fatal exception" errors and have to search for where you went wrong with some pointer somewhere. It can be a pain.



beneficii
Veteran
Veteran

User avatar

Joined: 10 May 2005
Age: 40
Gender: Female
Posts: 7,245

14 Aug 2016, 4:17 pm

I agree with the comment above. C is like a machine-portable assembly in terms of the way you will be working with memory. In assembly, you worry about things like immediate addressing, direct addressing, and indirect addressing, which in C are equivalent to constants, variables, and pointers. Pointers are the mainstay of C and very powerful, but they can also cause you to shoot yourself in the foot if you're not careful, so if you can understand how they work you can do a lot.


_________________
"You have a responsibility to consider all sides of a problem and a responsibility to make a judgment and a responsibility to care for all involved." --Ian Danskin


goatfish57
Veteran
Veteran

User avatar

Joined: 12 Nov 2015
Gender: Male
Posts: 617
Location: In a village in La Mancha whose name I cannot recall

16 Aug 2016, 11:17 am

Python has a nice OO flavor and easy to learn. I have been writing code for the better part of 40 years.

Java has one of the nicest and richest programming environments. I use Eclipse.

The best place to start is Python and then Java.

Good luck


_________________
Rdos: ND 133/200, NT 75/200

Not Diagnosed and Not Sure


Campin_Cat
Veteran
Veteran

User avatar

Joined: 6 May 2014
Age: 62
Gender: Female
Posts: 25,953
Location: Baltimore, Maryland, U.S.A.

16 Aug 2016, 11:51 am

saxgeek wrote:
And languages like Java and C# are almost variations of C++, so it's easy to learn them once you know C++. I find programming easy to learn once you know what's going on under the hood and can make sense of it.

I AGREE!! I think learning Java, etc. is like learning math WITH a calculator----whereas learning C++ is like learning math, WITHOUT a calculator (like YOU said, "what's going-on under the hood")----and, I've always felt one should learn math without a calculator, FIRST. It's gonna be tough / intimidating, at first, though----most definitely WAAAAAY more involved than HTML / BBCode----but, it's totally worth it, IMO, cuz, like others have said, you can go ANYWHERE, basically, from there.



Chichikov
Veteran
Veteran

User avatar

Joined: 27 Mar 2016
Age: 50
Gender: Male
Posts: 1,151
Location: UK

16 Aug 2016, 12:11 pm

goatfish57 wrote:
Python has a nice OO flavor and easy to learn. I have been writing code for the better part of 40 years.

Java has one of the nicest and richest programming environments. I use Eclipse.

The best place to start is Python and then Java.

Good luck

Eclipse is garbage, all these open source tools and languages are garbage. Spend a few grand on a professional IDE and you'll see what you're missing. If these tools seem good to you it's simply because you have no frame of reference.



goatfish57
Veteran
Veteran

User avatar

Joined: 12 Nov 2015
Gender: Male
Posts: 617
Location: In a village in La Mancha whose name I cannot recall

16 Aug 2016, 12:19 pm

I was suggesting a place for a beginner to start. You do not know me or the labs I worked in.


_________________
Rdos: ND 133/200, NT 75/200

Not Diagnosed and Not Sure


Pieplup
Veteran
Veteran

User avatar

Joined: 15 Dec 2015
Age: 20
Gender: Non-binary
Posts: 2,658
Location: Maine

16 Aug 2016, 12:49 pm

Chichikov wrote:
If you're looking for a career then you may find yourself more limited if you go for lower-level languages, especially assembler which is used quite rarely. You might want to consider higher-level languages like java, c# etc.

I'm looking for a place to start..


_________________
ever changing evolving and growing
I am pieplup i have level 3 autism and a number of severe mental illnesses. I am rarely active on here anymore.
I run a discord for moderate-severely autistic people if anyone would like to join. You can also contact me on discord @Pieplup or by email at [email protected]


Pieplup
Veteran
Veteran

User avatar

Joined: 15 Dec 2015
Age: 20
Gender: Non-binary
Posts: 2,658
Location: Maine

16 Aug 2016, 12:51 pm

goatfish57 wrote:
Python has a nice OO flavor and easy to learn. I have been writing code for the better part of 40 years.

Java has one of the nicest and richest programming environments. I use Eclipse.

The best place to start is Python and then Java.

Good luck

I look into it when I get home from school or even now :?


_________________
ever changing evolving and growing
I am pieplup i have level 3 autism and a number of severe mental illnesses. I am rarely active on here anymore.
I run a discord for moderate-severely autistic people if anyone would like to join. You can also contact me on discord @Pieplup or by email at [email protected]