Skip to content

immehulsolanki/cppnd

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Welcome to my c++ journey. This is my personal notes and I am updating it with my progress.

About Udacity c++ nanodegree

Udacity nanodegree uses learn by doing approach rather standard academic, but I found it most useful and intuitive. Because this way I get more insight why I am doing what I am doing!!!

Prerequisites:

Basics of programming (language independent), variables, loops and conditions.

The current nanodegree syllabus is as follows:

  • C++ Foundations

Learn how to develop, compile, and execute C++ programs as well as syntax, functions, containers, and how to link together multiple files. Project1: Route Planner

  • Object-Oriented Programming (OOP)

Learn to build classes, interfaces, and generic templates to create an object-oriented C++ program. Learn how modern C++ includes many tools for writing clean, reusable code.

Project2: Process Monitor

  • Memory Management

Learn to control static and dynamic memory in C++ using the Resource Acquisition Is Initialization pattern, pointers, references, and move semantics.

Project3: Memory Management Chatbot

  • Concurrency

C++ supports running multiple execution paths in parallel. Learn how to launch process and threads in order to execute logic in parallel. Then advance to thread synchronization and communication, to experience the full power of concurrent programming.

Project4: Concurrent Traffic Simulation

  • Capstone Project

In your Capstone Project, you will put all of your new C++ skills to use! Utilize the core concepts from this Nanodegree program - object-oriented programming, memory management, and concurrency - to build your own application using C++.

Project5: Capstone Project: Build Your Own C++ Application

Tools:

  • Standard GCC C++ compiler
  • VSCode IDE
  • Low speed Working internet connection

Why on github?

Well, I have two local machines and I work on both alternately, So, to manage my latest notes on both machines, git online repository helps me very seamless file synchronisation rather manual approach. I could have made my repository private, but making it public helps me to find new friends so we can share knowledge and have fun!

License, copyright etc...

Reach me by commenting or opening issue in case of any kind of problem.