We may earn an affiliate commission when you visit our partners.
Course image
Course image
Coursera logo

Object-Oriented Data Structures in C++

Wade Fagen-Ulmschneider

This course teaches learners how to write a program in the C++ language, including how to set up a development environment for writing and debugging C++ code and how to implement data structures as C++ classes. It is the first course in the Accelerated CS Fundamentals specialization, and subsequent courses in this specialization will be using C++ as the language for implementing the data structures covered in class.

Enroll now

What's inside

Syllabus

Orientation; Writing a C++ Program
Understanding the C++ Memory Model
Developing C++ Classes
Read more
Engineering C++ Software Solutions

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Explores data structures and algorithms, which is a core topic in computer science
Beginners to C++ can start here as the course presumes no prior knowledge required
Builds a strong foundation for intermediate learners in C++
Taught by Wade Fagen-Ulmschneider, who are experts in the field of computer programming

Save this course

Save Object-Oriented Data Structures in C++ to your list so you can find it easily later:
Save

Reviews summary

Object-oriented data structures in c++

learners say this course effectively introduces Object-Oriented programming in C++, including important concepts like pointers, OOP syntax, and memory management, while offering engaging assignments and a well-structured curriculum. However, it is recommended for those with some prior programming experience and a basic understanding of C++ syntax.
The course features challenging assignments that test learners' understanding of the material and help them apply their knowledge.
"The assignments were pretty easy and were totally derived from the lessons done."
"Great course with a great lecture from the professor."
"Programming assignments for all the weeks were pretty easy and were totally derived from the lessons done."
"The final programming assignment was actually a normal coding assignment rather than pure C++ object oriented programming."
The course is concise and engaging, presenting the material in a clear and understandable way.
"The course is fun, challenging and fast paced."
"I have been having a really hard time dealing with C++ pointer and reference."
"I really love how this course is organized a punch of well-chosen topics instructed by brilliant professor filled a lot of gaps in my understanding "
"This course has been really a great help for my C++ programming skills."
The course places a strong emphasis on memory management, helping learners understand pointers, stack and heap memory, and memory allocation.
"The course and the 2 that follow in the specialization are exactly what I needed to fill in gaps in my understanding and knowledge between a BSEE and a MSCS."
"This course and the 2 that follow in the specialization are exactly what I needed to fill in gaps in my understanding and knowledge between a BSEE and a MSCS."
"The most well-laid out and documented course I have ever done on Coursera."
"I really liked this course. It is not a basic intro to programming course so you should have some exposure to programming before, otherwise it might be a little be challenging, otherwise it is a great course to expose you to the basic concepts of OOP in C++."
The course is taught by an experienced professor who provides clear explanations.
"Great course with a great lecture from the professor."
"Really great explanations and well written source code."
"The lecture of this course is outstanding."
"One of the best explanations of the memory model I have ever seen."
The course moves quickly through the material, which may be challenging for beginners.
"This course provided one of the best primers on C++ I've ever experienced."
"This course is indeed one of kind I would really recommand it to anyone seeking to improve their knowledge and hone their skills in the field of computer science more specifically in C++ programming."
"Courses is nice but they lock my course and i have reset my deadline but nothing happens now I'm trying to restet my deadline something even wrong problem is coming"
"I really found the discussion on pointers, memory allocation, and the address operators to be very useful, especially compared to other explanations that I have seen."
The course assumes some prior programming experience and a basic understanding of C++ syntax.
"This is a great course for anyone who wants to learn basics concepts of Object-Oriented Programming, without any prior knowledge."
"The course is focused on a fast-paced learning and it is expected to have at least some previous experience with strong-typed programming languages."
"This is a great course for those who have programming experience and want to learn something about C++, especially suitable for the engineering students not majoring in Computer Science but be willing to study the basic idea about C++."
"Definitely not for beginners."

Activities

Coming soon We're preparing activities for Object-Oriented Data Structures in C++. These are activities you can do either before, during, or after a course.

Career center

Learners who complete Object-Oriented Data Structures in C++ will develop knowledge and skills that may be useful to these careers:
Software Engineer
Software Engineers design, develop, test, and maintain software systems. This course may be useful for learning the C++ programming language, which is often used in developing software systems. The course also teaches learners how to implement data structures as C++ classes, which is a fundamental skill for Software Engineers.
Data Analyst
Data Analysts collect, clean, and analyze data to identify trends and patterns. This course may be useful for learning the C++ programming language, which is often used in developing data analysis applications. The course also teaches learners how to implement data structures as C++ classes, which is a fundamental skill for Data Analysts.
Data Scientist
Data Scientists use scientific methods, processes, algorithms, and systems to extract knowledge and insights from data in various forms, both structured and unstructured. This course may be useful for learning the C++ programming language, which is often used in developing data science applications. The course also teaches learners how to implement data structures as C++ classes, which is a fundamental skill for Data Scientists.
Software Developer
Software Developers write, maintain, and test software applications that run on various devices, such as personal computers, mobile phones, and embedded systems. This course may be useful for learning the C++ programming language, which is often used in developing software applications. The course also teaches learners how to implement data structures as C++ classes, which is a fundamental skill for Software Developers.
Computer Programmer
Computer Programmers write, modify, and test code that allows computer applications and software programs to run. This course may be useful for learning the C++ programming language, which is often used in developing computer applications and software programs. The course also teaches learners how to implement data structures as C++ classes, which is a fundamental skill for Computer Programmers.
Computer Hardware Engineer
Computer Hardware Engineers design, develop, and test computer hardware. This course may be useful for learning the C++ programming language, which is sometimes used in developing computer hardware drivers. The course also teaches learners how to implement data structures as C++ classes, which is a fundamental skill for Computer Hardware Engineers.
Database Administrator
Database Administrators design, implement, and maintain databases. This course may be useful for learning the C++ programming language, which is sometimes used in developing database applications. The course also teaches learners how to implement data structures as C++ classes, which is a fundamental skill for Database Administrators.
Web Developer
Web Developers design and develop websites and web applications. This course may be useful for learning the C++ programming language, which is sometimes used in developing web applications. The course also teaches learners how to implement data structures as C++ classes, which is a fundamental skill for Web Developers.
Network Administrator
Network Administrators design, implement, and maintain computer networks. This course may be useful for learning the C++ programming language, which is sometimes used in developing network administration tools. The course also teaches learners how to implement data structures as C++ classes, which is a fundamental skill for Network Administrators.
Information Security Analyst
Information Security Analysts plan and implement security measures to protect information systems and networks from unauthorized access, use, disclosure, disruption, modification, or destruction. This course may be useful for learning the C++ programming language, which is sometimes used in developing information security applications. The course also teaches learners how to implement data structures as C++ classes, which is a fundamental skill for Information Security Analysts.
Computer Systems Analyst
Computer Systems Analysts design, implement, and maintain computer systems. This course may be useful for learning the C++ programming language, which is sometimes used in developing computer systems. The course also teaches learners how to implement data structures as C++ classes, which is a fundamental skill for Computer Systems Analysts.
Database Manager
Database Managers plan, direct, and coordinate activities in database administration departments. This course may be useful for learning the C++ programming language, which is sometimes used in developing database applications. The course also teaches learners how to implement data structures as C++ classes, which is a fundamental skill for Database Managers.
Computer and Information Systems Manager
Computer and Information Systems Managers plan, direct, and coordinate activities in computer and information systems departments. This course may be useful for learning the C++ programming language, which is sometimes used in developing computer systems. The course also teaches learners how to implement data structures as C++ classes, which is a fundamental skill for Computer and Information Systems Managers.
Information Technology Project Manager
Information Technology Project Managers plan, direct, and coordinate information technology projects. This course may be useful for learning the C++ programming language, which is sometimes used in developing information technology projects. The course also teaches learners how to implement data structures as C++ classes, which is a fundamental skill for Information Technology Project Managers.
Computer Support Specialist
Computer Support Specialists provide technical support to computer users. This course may be useful for learning the C++ programming language, which is sometimes used in developing computer support tools. The course also teaches learners how to implement data structures as C++ classes, which is a fundamental skill for Computer Support Specialists.

Reading list

We've selected ten books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Object-Oriented Data Structures in C++.
This classic book is commonly used to teach C++ at academic institutions. It provides good insight into the language and constructs as they were originally conceived and how they are implemented.
By the author of C++ introduces you to object oriented programming, the C++ language, and the standard template library.
Teaches the general principles of C++ and includes an introduction to its standard library. It is commonly used as a textbook or reference book.
Is suitable for developers with at least some programming experience as it covers C++ in detail. It provides valuable insight into the complexities of modern C++.
This advanced-level book is suitable for developers with significant experience. It explores modern C++ concepts and provides a deep dive into the language.
Suitable as a reference textbook, this book introduces you to C++ using practical examples. It good book for readers with some programming experience.
Collection of essays on the topic of exception handling in C++. It is not a comprehensive guide to C++, but it provides a deep dive into a critical aspect of the language.
Can be useful if you plan to work with concurrency in C++. It is commonly used by professional developers or at the post-graduate level.
This is an exhaustive reference book on C++ templates. It is more useful as a reference to look up specific things, rather than as a cover-to-cover read.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to Object-Oriented Data Structures in C++.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser