We may earn an affiliate commission when you visit our partners.
Course image
Dr Matthew Yee-King

This course is the second of five courses aiming to help you to become confident working in the object-oriented paradigm in the C++ language.

Read more

This course is the second of five courses aiming to help you to become confident working in the object-oriented paradigm in the C++ language.

This specialisation is for individuals who want to learn about objected oriented programming. It's an all-in-one package that will take you from the very fundamentals of C++, all the way to building a crypto-currency exchange platform.

During the five courses, you will work with the instructor on a single project: a crypto-currency exchange platform. Whilst building the project, you will learn about a range of programming techniques from basic control flow and input/output through to file parsing, object-oriented techniques and user interaction on the console.

In this second course, you will start learning about C++ classes. You will learn about header files, class member functions, and select appropriate data types to represent a dataset in a C++ program.

Upon completing the course, you will be able to:

* Select appropriate data types to represent a dataset in a C++ program

* Describe how a class can be used to combine multiple pieces of data into one unit

* Write a class with functions

Enroll now

What's inside

Syllabus

Using classes and variables to model data: the OrderBookEntry class, part 1
This week you will learn about the basic data types (numbers and strings) and classes and data.
Read more
Using classes and variables to model data: the OrderBookEntry class, part 2
This week you will learn about classes and data and classes and functions.

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Taught by an instructor recognized for their work in teaching C++
Teaches the basics of C++ from the fundamentals up to building a crypto-currency exchange platform
Develops foundational C++ programming skills by working on a project that involves building a crypto-currency exchange platform
Covers core C++ concepts such as classes, variables, data modeling, and functions
Assumes students have no prior C++ programming experience
Explores topics that are relevant to students interested in C++ and object-oriented programming

Save this course

Save C++ Programming: Classes and Data to your list so you can find it easily later:
Save

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in C++ Programming: Classes and Data with these activities:
Review basic data types
Refresh your knowledge of basic data types to strengthen your foundation for working with classes.
Show steps
  • Go over the different basic data types in C++, such as integers, floating-point numbers, and strings.
  • Practice declaring and using variables of different data types in simple C++ programs.
Organize and review existing materials
Improve your understanding and retention by organizing and reviewing existing notes, assignments, and other course-related materials.
Show steps
  • Gather all relevant course materials, including notes, assignments, and quizzes.
  • Organize the materials by topic or by order of completion.
  • Review the materials, taking notes and highlighting important concepts.
Tutorial: Creating custom data types
Enhance your understanding of creating custom data types by following a guided tutorial.
Browse courses on Custom Data Types
Show steps
  • Find a tutorial on creating custom data types in C++.
  • Follow the tutorial step-by-step, implementing the concepts in your own code.
  • Test your understanding by creating a custom data type for a specific problem.
Five other activities
Expand to see all activities and additional details
Show all eight activities
Practice getters and setters
Reinforce your understanding of getters and setters by completing repetitive exercises.
Show steps
  • Write a simple C++ class with private member variables.
  • Create getter and setter methods for each member variable.
  • Test the getter and setter methods by creating an instance of the class.
Write a blog post explaining class inheritance
Enhance your understanding of class inheritance by explaining it in a blog post, solidifying your grasp of the concept.
Show steps
  • Research and gather information about class inheritance.
  • Write a draft of the blog post, explaining the concepts clearly and concisely.
  • Edit and refine the blog post, ensuring accuracy and readability.
Project: Design a class to represent a book
Develop your skills in designing and implementing classes by creating a custom class to represent a book.
Show steps
  • Identify the attributes and behaviors of a book.
  • Design a class with appropriate member variables and methods.
  • Implement the class in C++.
  • Test your class by creating instances and manipulating their data.
Project: Start building a simple cryptocurrency exchange platform
Put your skills to the test by starting to build a simple cryptocurrency exchange platform as a hands-on project.
Show steps
  • Plan the architecture and functionality of the exchange platform.
  • Create classes and data structures to represent users, orders, and transactions.
  • Implement basic trading functionality, such as placing orders, executing trades, and managing balances.
Attend a workshop on advanced C++ techniques
Boost your skills by attending a workshop that delves into advanced C++ techniques, refining your knowledge and abilities.
Show steps
  • Identify and register for a suitable workshop on advanced C++ techniques.
  • Attend the workshop, actively participating and taking notes.
  • Implement what you've learned in your own projects or assignments.

Career center

Learners who complete C++ Programming: Classes and Data will develop knowledge and skills that may be useful to these careers:
C++ Developer
C++ Developers are responsible for designing, developing, and implementing software solutions in the C++ programming language. This course can help you develop the foundational skills needed to embark on a career as a C++ Developer, including an understanding of data types, classes, and functions. By completing this course, you will gain the expertise to effectively represent and manage data in C++ programs, a crucial aspect of software development.
Software Engineer
Software Engineers are responsible for designing, developing, and maintaining software systems. This course can help you build a foundation in C++ programming, an essential skill for many roles in software engineering. The focus on data representation and management will provide you with a solid understanding of how to structure and manipulate data effectively, making you a more valuable asset to any software engineering team.
Data Engineer
Data Engineers are responsible for designing, building, and maintaining data pipelines and systems. This course can provide you with a strong foundation in data representation and management using C++, a valuable skill for Data Engineers. By understanding how to effectively work with data in C++, you can contribute to the efficient storage, processing, and analysis of large datasets.
Data Scientist
Data Scientists are responsible for extracting insights from data using statistical and computational techniques. This course can help you develop the programming skills needed to manipulate and analyze data in C++, a language commonly used in data science. By gaining proficiency in data representation and management, you can become more effective in building models, performing data analysis, and communicating insights.
Quantitative Analyst
Quantitative Analysts use mathematical and statistical models to analyze financial data and make investment decisions. This course can provide you with a strong foundation in data representation and management using C++, a valuable skill for Quantitative Analysts. By understanding how to effectively work with financial data in C++, you can contribute to the development and implementation of sophisticated trading strategies.
Game Developer
Game Developers are responsible for designing, developing, and maintaining video games. This course can provide you with a strong foundation in C++ programming, a language widely used in game development. The focus on data representation and management will provide you with a solid understanding of how to structure and manipulate game data, enabling you to contribute to the creation of immersive and engaging gaming experiences.
Systems Analyst
Systems Analysts are responsible for analyzing and designing business systems. This course can provide you with a strong foundation in data representation and management using C++, a valuable skill for Systems Analysts. By understanding how to effectively work with data in C++, you can contribute to the development and implementation of efficient and effective business systems.
Web Developer
Web Developers are responsible for designing, developing, and maintaining websites and web applications. This course can provide you with a strong foundation in C++ programming, a language occasionally used in web development. The focus on data representation and management will provide you with a solid understanding of how to structure and manipulate web data, enabling you to contribute to the creation of dynamic and interactive web experiences.
Database Administrator
Database Administrators are responsible for managing and maintaining databases. This course can provide you with a strong foundation in data representation and management using C++, a valuable skill for Database Administrators. By understanding how to effectively work with data in C++, you can contribute to the design, implementation, and maintenance of efficient and reliable database systems.
Business Analyst
Business Analysts are responsible for analyzing business processes and systems and recommending solutions to improve efficiency and effectiveness. This course can provide you with a strong foundation in data representation and management using C++, a valuable skill for Business Analysts. By understanding how to effectively work with data in C++, you can contribute to the development and implementation of data-driven solutions that improve business outcomes.
IT Consultant
IT Consultants provide advice and guidance to organizations on how to use technology to achieve their business goals. This course can provide you with a strong foundation in data representation and management using C++, a valuable skill for IT Consultants. By understanding how to effectively work with data in C++, you can contribute to the development and implementation of tailored technology solutions that meet the specific needs of organizations.
Technical Writer
Technical Writers create and maintain technical documentation, such as user manuals, white papers, and training materials. This course can provide you with a strong foundation in data representation and management using C++, a valuable skill for Technical Writers. By understanding how to effectively work with technical data in C++, you can contribute to the creation of clear and concise documentation that helps users understand and use technology products and services.
Project Manager
Project Managers are responsible for planning, organizing, and executing projects. This course may be useful for Project Managers who work with teams involved in software development or data analysis, as it provides a basic understanding of data representation and management in C++. By understanding the fundamentals of C++ programming, Project Managers can better communicate with technical team members and make informed decisions.
Data Analyst
Data Analysts collect, analyze, and interpret data to help businesses make informed decisions. This course may be useful for Data Analysts who work with large datasets or who need to develop custom data processing solutions. By understanding the basics of data representation and management in C++, Data Analysts can enhance their ability to manipulate and analyze data effectively.
Software Tester
Software Testers are responsible for testing software products to ensure they meet functional and quality requirements. This course may be useful for Software Testers who work with software written in C++, as it provides a basic understanding of the language's syntax and structure. By understanding the fundamentals of C++ programming, Software Testers can better understand the code they are testing and identify potential defects.

Reading list

We've selected 13 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 C++ Programming: Classes and Data.
Is the definitive reference for C++ programming. It was written by the creator of the language.
Classic reference for design patterns in object-oriented programming.
Provides a comprehensive guide to C++ templates.

Share

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

Similar courses

Here are nine courses similar to C++ Programming: Classes and Data.
Use C++ to build a Crypto Trading Platform: Final System
Most relevant
Working with Objects in C++
Most relevant
Object-Oriented Programming in C++: Functions
Most relevant
Introduction to Object-Oriented Programming in C++
Most relevant
Predicting Financial Time Series with Tensorflow 2
Most relevant
Object-Oriented Programming in Kotlin
Object-oriented Programming in C#
Cryptocurrency: Complete Bitcoin, Ethereum, Altcoins! (8...
Introduction to the C# Type System
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