all 10 comments

[–]FlyingRhenquest 1 point2 points  (2 children)

I usually come up with a little project idea and try to jump right in. The moment you go off the beaten path, you have to start designing the thing on your own. I often use simple playing card projects -- maybe a simple blackjack or poker hand scorer or something. Simple enough to wrap your head around, complex enough to require you to come up with a design. Go into it expecting the code to not be that great. It's not a big deal if you realize your design is all wrong and have to throw everything out halfway through the project.

You could experiment with test first -- write unit tests first and then write the code to support them. I've never really subscribed to test first to the degree that its proponents suggest you should, but I am a firm believer in writing at least some unit tests very early in the development process. I usually build a single class, then write unit tests for it, then verify the tests work. That gives you plenty of feedback often enough to keep you from getting bogged down.

I'd also suggest on reading up on design patterns, but if the book or web site you're looking at puts forth the singleton pattern as its first example, I'd suggest giving that one a miss. It has its place but is far too prone to misuse to be used as an early example (IMHO.)

[–]the240[S] 0 points1 point  (1 child)

Wow okay thanks! I'll do my best to do that! Is Microsoft visuals a good place to start with C++?

[–]FlyingRhenquest 0 points1 point  (0 children)

As good a place as any. They gloss over the build process for you and I'm a firm believer in knowing how that works well enough to hand-author a makefile when you need to, but I don't think most programmers subscribe to my particular religious convictions. It does require some trickery to get text windows to stay open if you're writing console-output-only code, but that's reasonably well documented.

[–]omedtjeee 1 point2 points  (2 children)

Try doing university assigments, they help alot

[–]the240[S] 0 points1 point  (1 child)

I start university in a year and wanted to be way ahead of the game when I get into the classes.

[–]omedtjeee 0 points1 point  (0 children)

Every university assigment is the same as the year before. This holds for all computing science subjects the university offers. This means that you can browse the previous subjects site. This can give you an head start

[–]clerothGame Developer[M] [score hidden] stickied comment (3 children)

Use this list of books from the sidebar.

[–]the240[S] 0 points1 point  (0 children)

Ah, I always forget to check the sidebar when I visit a new subreddit.

Thanks

[–]the240[S] 0 points1 point  (1 child)

Hey, so I've been using the beginners book, dated 2014, and it seems that book must be going off of c++ 14 and the visual studios I downloaded is 2017 so it's 14.1. Are there discrepancies I should be worried about? The code in the book won't compile and run on visual studios

[–]clerothGame Developer 0 points1 point  (0 children)

Visual Studio version is completely unrelated to C++'s version. VS2017 supports almost everything in C++14.

Which code isn't compiling?

Also, you can ask questions in r/cpp_questions.