HOME > IT & Software > Comprehensive Software Development Using C++

Comprehensive Software Development Using C++

SynopsisComprehensive Software Development Using C++, available at $7...
Comprehensive Software Development Using C++  No.1

Comprehensive Software Development Using C++, available at $74.99, has an average rating of 4.45, with 126 lectures, 1 quizzes, based on 110 reviews, and has 1569 subscribers.

You will learn about Be able to write clean and efficient C++ programs Learn the Data Structures and Algorithms concepts needed to pass interviews Feel confident with Object Oriented Programming Concepts such as Polymorphism, Encapsulation, and Inheritance Learn about additional topics such as Virtual Memory, Debuggers, and multiple development environments Demystify confusing Recursive problems with the help of visualizations Learn not only about code but also about important Computer Science Theory such as Binary/Hex/Octal, Logic and Algorithm Analysis This course is ideal for individuals who are Learners who want to understand modern programming practices, design techniques, and how to write efficient code. It was designed with the intention to give students enough information to prepare for a career in software development. It is particularly useful for Learners who want to understand modern programming practices, design techniques, and how to write efficient code. It was designed with the intention to give students enough information to prepare for a career in software development.

Enroll now: Comprehensive Software Development Using C++

Summary

Title: Comprehensive Software Development Using C++

Price: $74.99

Average Rating: 4.45

Number of Lectures: 126

Number of Quizzes: 1

Number of Published Lectures: 126

Number of Published Quizzes: 1

Number of Curriculum Items: 135

Number of Published Curriculum Objects: 135

Original Price: $39.99

Quality Status: approved

Status: Live

What You Will Learn

  • Be able to write clean and efficient C++ programs
  • Learn the Data Structures and Algorithms concepts needed to pass interviews
  • Feel confident with Object Oriented Programming Concepts such as Polymorphism, Encapsulation, and Inheritance
  • Learn about additional topics such as Virtual Memory, Debuggers, and multiple development environments
  • Demystify confusing Recursive problems with the help of visualizations
  • Learn not only about code but also about important Computer Science Theory such as Binary/Hex/Octal, Logic and Algorithm Analysis
  • Who Should Attend

  • Learners who want to understand modern programming practices, design techniques, and how to write efficient code. It was designed with the intention to give students enough information to prepare for a career in software development.
  • Target Audiences

  • Learners who want to understand modern programming practices, design techniques, and how to write efficient code. It was designed with the intention to give students enough information to prepare for a career in software development.
  • This course focuses on bringing major software development concepts together and attempts to explain them in a detailed, yet easy to understand way. It also includes topics that are often overlooked, including: compilers, virtual memory layout, how to choose the right editor, or how to use a graphical or command line based debugger. It is somewhat of a 2-in-1 course in that it isn’t a Data Structures course with a crash course in programming, or vice versa, but rather a full coverage of the essential theoretical and practical aspects of writing software.

    Major topics include: Binary and Hexadecimal Numbering Systems, GDB, CLion, VSCode, VIM, Logic, ASCII, Control Structures, Dynamic Memory, Pointers, Virtual Address Space, inheritance, encapsulation, polymorphism, templates, Sorting, Searching, Stacks, Queues, Graphs, Linked Lists, Trees, Hash Tables, Dynamic Programming, Recurrence Relations, Big O Notation and More

    The course is broken into 3 sections:

  • An introductory section to prepare beginners to write C++ programs and introduce students to fundamental Computer Science topics.

  • A C++ programming section that covers all of the major programming concepts

  • Includes in-video challenges and solutions

  • Includes projects with solution files

  • Many Modern/C++11 syntax topics mixed in (initialization lists, nullptr, range based loops, auto, smart pointers)

  • A Data Structures and Algorithms Section

  • Includes many Data Structures ranging from Linked-Lists to advanced concepts like AVL trees

  • Includes practical Algorithm problems and solutions as well as academic topics like recurrence relations and summations

  •    

    This course is best taken from beginning to end, however, certain students may only be interested in the Data Structures and Algorithms section. Some of the Data Structures (i.e. Linked Lists) use some C++ language specific concepts like class templates. These students can always refer to the programming section to find supplementary lectures to fill in any missing C++ language gaps.

    Also, if you believe any content is missing, please send me a message or comment and I will try my best to accommodate your learning needs. Not every C++ specific concept is covered (Like C++20 specific features for example) as this is not an advanced C++ Language course, but rather a course to help aspiring Software Engineers/Developers prepare for a career or help students through their studies.

    Course Curriculum

    Chapter 1: Introduction and Setup (Beginners shouldnt skip this section)

    Lecture 1: Introduction and Course Overview

    Lecture 2: Introduction to Computer Science

    Lecture 3: Bits and Bytes: Fundamental computer number systems

    Lecture 4: Setting up a compiler for C++

    Lecture 5: Choosing an Editor (Lengthy Optional Video)

    Lecture 6: Using a lightweight IDE to write our first program

    Lecture 7: Using VIM to write our first program (Optional Video)

    Lecture 8: Using CLION IDE to write our first program (Optional video)

    Chapter 2: In-Depth Programming Concepts using C++

    Lecture 1: Hello World Deep Dive Part 1

    Lecture 2: Hello World Deep Dive Part 2

    Lecture 3: Variables and Data Types Part 1

    Lecture 4: Variables and Data Types Part 2

    Lecture 5: Logic Part 1

    Lecture 6: Logic Part 2

    Lecture 7: Conditional Statements Part 1

    Lecture 8: Conditional Statements Part 2

    Lecture 9: Conditional Statements Part 3

    Lecture 10: Arithmetic Operators Part 1

    Lecture 11: Arithmetic Operators Part 2

    Lecture 12: Memory and Containers Introduction

    Lecture 13: Arrays

    Lecture 14: Strings Part 1

    Lecture 15: Strings Part 2

    Lecture 16: Input Part 1

    Lecture 17: Input Part 2

    Lecture 18: Input Part 3

    Lecture 19: Input Part 4

    Lecture 20: Practice Problems 1

    Lecture 21: While Loops Part 1

    Lecture 22: While Loops Part 2

    Lecture 23: While Loops Challenge (Part 3)

    Lecture 24: For Loops Part 1

    Lecture 25: For Loop Practice (Part 2)

    Lecture 26: Functions Part 1

    Lecture 27: Functions Part 2

    Lecture 28: Functions Challenge (Part 3)

    Lecture 29: Functions Part 4

    Lecture 30: Functions Part 5

    Lecture 31: A Deeper Look at Virtual Memory

    Lecture 32: Pointers and Dynamic Memory 1

    Lecture 33: Pointers and Dynamic Memory 2

    Lecture 34: Pointers and Dynamic Memory 3

    Lecture 35: Dynamically Allocated Arrays

    Lecture 36: Nested Loops

    Lecture 37: 2 Dimensional Arrays (Matrices)

    Lecture 38: Dynamic 2d Arrays

    Lecture 39: Formatting Console Output

    Lecture 40: PROJECT 1

    Lecture 41: File Streams

    Lecture 42: Command Line Arguments

    Lecture 43: Exceptions

    Lecture 44: Vectors 1

    Lecture 45: Vectors 2

    Lecture 46: Programming Challenge (Sorting)

    Lecture 47: BubbleSort

    Lecture 48: A Better BubbleSort

    Lecture 49: InsertionSort

    Lecture 50: Programming Challenge (Searching)

    Lecture 51: Sequential Search

    Lecture 52: Binary Search

    Lecture 53: Graphical Debuggers (CLion)

    Lecture 54: Command Line Debuggers (GDB)

    Lecture 55: Introduction to Abstract Data Types

    Lecture 56: Structs 1

    Lecture 57: Structs 2

    Lecture 58: Object Oriented Programming 1

    Lecture 59: Object Oriented Programming 2

    Lecture 60: Object Oriented Programming 3

    Lecture 61: Object Oriented Programming 4

    Lecture 62: Destructors and Dynamically Allocated Objects

    Lecture 63: Copy Constructors and Smart Pointers

    Lecture 64: A Bit More on Smart Pointers

    Lecture 65: Overloaded Operators (Intro and Assignment Operator)

    Lecture 66: Overloaded Operators (Addition and Subtraction)

    Lecture 67: Overloaded Operators (Equality)

    Lecture 68: Overloaded Operators (Input and Output)

    Lecture 69: Inheritance (Introduction and UML)

    Lecture 70: Inheritance (Part 2)

    Lecture 71: Polymorphism (Part 1)

    Lecture 72: Polymorphism (Part 2)

    Lecture 73: Function Templates (Part 1)

    Lecture 74: Function Templates (Part 2)

    Lecture 75: Class Templates

    Chapter 3: Data Structures and Algorithms

    Lecture 1: Big O Notation

    Lecture 2: Linked Lists 1

    Lecture 3: Linked Lists 2

    Lecture 4: Linked Lists 3

    Lecture 5: Linked Lists 4 (Intro to Doubly Linked Lists)

    Lecture 6: Linked List Challenge 1 Solution

    Lecture 7: Making a better Append Function and Adding an Insertion Function (Linked Lists)

    Lecture 8: Linked List Challenge 2 Solution

    Instructors

  • Comprehensive Software Development Using C++  No.2
    Dylan Curry
    C++ and Python Developer
  • Rating Distribution

  • 1 stars: 0 votes
  • 2 stars: 4 votes
  • 3 stars: 6 votes
  • 4 stars: 33 votes
  • 5 stars: 67 votes
  • Frequently Asked Questions

    How long do I have access to the course materials?

    You can view and review the lecture materials indefinitely, like an on-demand channel.

    Can I take my courses with me wherever I go?

    Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don’t have an internet connection, some instructors also let their students download course lectures. That’s up to the instructor though, so make sure you get on their good side!