We may earn an affiliate commission when you visit our partners.
Gill Cleeren

C# is an object-oriented and strongly-typed language. This course will teach you how to design and build your classes and class hierarchies using OO principles.

Read more

C# is an object-oriented and strongly-typed language. This course will teach you how to design and build your classes and class hierarchies using OO principles.

Object-orientation allows us to map real-world objects to classes and objects in code. In this course, Object-oriented Programming in C#, you’ll learn to how to write C# code following OO principles. First, you’ll explore how to translate business requirements into a class model, applying abstraction and encapsulation. Next, you’ll discover how to create a class hierarchy through the use of C# inheritance. Finally, you’ll learn how to create and use interfaces, another type built-in to C#. When you’re finished with this course, you’ll have the skills and knowledge of write object-oriented C# code needed to create and maintain any real-world C# application.

Enroll now

What's inside

Syllabus

Course Overview
Understanding Object-orientation in C#
Designing an Object-oriented Solution from a Business Case
Creating the Classes
Read more
Using and Testing Classes
Working with Class Hierarchies
Reusing Code through Interfaces

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Explores object-orientation concepts, a standard in software development
Taught by Gill Cleeren, who is recognized for their expertise in object-oriented programming
Develops the skills and knowledge necessary to create object-oriented C# code, which is crucial for building enterprise software
Covers core object-oriented concepts, making it a solid choice for beginners looking to build a foundation in object-oriented design

Save this course

Save Object-oriented Programming in C# 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 Object-oriented Programming in C# with these activities:
Head First Design Patterns
Delve deeper into OOP design patterns and their practical applications by reading and analyzing a classic book in the field.
Show steps
  • Read the book and take notes on key design patterns and their usage.
  • Identify how the patterns relate to the concepts covered in the course.
  • Apply the patterns in your own C# code.
C# Class Hierarchy and Design Exercise
Reinforce your understanding of class hierarchies and design principles by creating a comprehensive class hierarchy for a real-world scenario.
Show steps
  • Identify the entities and their relationships in the given scenario.
  • Design a class hierarchy that models the identified entities and their relationships, applying OOP principles.
  • Implement the class hierarchy in C#, ensuring proper encapsulation, inheritance, and polymorphism.
Show all two activities

Career center

Learners who complete Object-oriented Programming in C# will develop knowledge and skills that may be useful to these careers:
Software Engineer
Entry-level Software Engineers are responsible for performing unit testing, system testing, debugging, and resolving software issues. They are also tasked with designing, coding, and implementing software systems as directed by senior level engineers. As your career progresses, you will build upon foundational knowledge and gain more responsibilities, which will include designing overall system architecture, leading teams through large software development projects, and potentially supervising more junior staff. The Object-oriented Programming in C# course may be useful in building a foundation for success in this career.
Programmer Analyst
A Programmer Analyst will use business requirements to create technical specifications for writing code. Writing the code is often their next task. They may work alone or as part of a team. Typically, their role is to solve technical problems. They bridge the gap between business users and IT. This makes attention to detail critical. Programmer Analysts must also be able to work closely with other team members and communicate with non-technical people. The Object-oriented Programming in C# course may be useful in building the foundation for success in this career.
Computer Programmer
Computer Programmers convert software designs into code. Their responsibilities may also include testing code, writing technical documentation, and modifying existing code. Computer Programmers are responsible for producing code that is reliable, efficient, and maintainable. The Object-oriented Programming in C# course may be useful in building a foundational knowledge needed to find entry-level employment.
Web Developer
Web Developers write code and implement back-end and front-end website functions. As a Web Developer, you will build websites that meet a specific need. This need is typically defined by individuals with little to no coding knowledge. The Object-oriented Programming in C# course may be useful for building a foundation for success in entry-level roles. However, earning additional certifications or learning additional in-demand programming and web development languages would be needed to compete for roles at top tech firms.
Software Developer
Software Developers design and create software applications for personal computers, mobile devices, and other electronic products. These applications are designed around specific sets of goals and use-cases. As a Software Developer, you will meet with customers and users to analyze needs and design solutions that will meet those needs. Often, your work will draw upon your understanding of computer science principles, programming languages, and software development tools. The Object-oriented Programming in C# course may be useful in building your foundation for a career in Software Development.
Front-End Developer
Front-End Developers design and implement the user interface of a website or web application. They work closely with designers and back-end developers to ensure a cohesive user experience. The Object-oriented Programming in C# course may be useful for building a foundation for success; however, extensive experience in front-end development frameworks and programming languages is typically required.
Computer Systems Analyst
Computer Systems Analysts understand the technology needs of businesses and organizations. They provide solutions to those technology needs by designing and implementing computer systems and applications. The Object-oriented Programming in C# course may be useful in building a foundation, but further study in systems analysis, data science, or other technical fields would be needed to find success in this role.
Systems Administrator
Systems Administrators are responsible for the day-to-day operations of computer systems. They also plan for future needs and provide technical support. Some industries refer to this role as an IT Systems Administrator. The Object-oriented Programming in C# course may be useful for building a foundation for a career in Systems Administration. However, most roles will require additional specialized skills and knowledge.
Data Engineer
Data Engineers are responsible for managing and analyzing data. They create and maintain data pipelines, design data models, and develop data-driven solutions. The Object-oriented Programming in C# course may be useful for building a foundation for success. However, fluency in SQL and other data engineering technologies and concepts is needed to be successful.
Applications Architect
Applications Architects design, build, and oversee the implementation of enterprise applications. They work with end-users and stakeholders to gather requirements and translate these into real-world solutions. C# is a widely-used language in the enterprise. So, the Object-oriented Programming in C# course may be useful for building a strong knowledge base.
Quality Assurance Analyst
Quality Assurance Analysts review and test computer programs and applications to verify whether they function the way they were designed to function. They may write test plans, run tests, and provide documentation to other staff. C# is used in a wide range of applications. So, this course may be useful for building a foundation for a career in this field.
Database Administrator
Database Administrators ensure databases are running efficiently. They install, configure, and maintain databases and also ensure data security. In many cases, proficiency in C# is needed for scripting and other tasks. This course may thus be useful for building a foundation for a career as a Database Administrator.
Technical Writer
C# is a widely-used programming language in the technology industry. Therefore, developing a foundational knowledge of C# can be useful for a Technical Writer working in the technology sector. The Object-oriented Programming in C# course may be useful for building a foundation for success in this field.
User Experience Designer
User Experience Designers are responsible for designing and evaluating the user experience of products. They may work on websites, mobile apps, or other digital products. The Object-oriented Programming in C# course may be useful for building a general foundation in technology. However, additional coursework and experience in user experience design would be needed to gain the skills and knowledge needed to be successful in this career.
Business Analyst
Business Analysts work with businesses to understand their needs and develop solutions to meet those needs. They may write requirements documents, create prototypes, and conduct feasibility studies. The Object-oriented Programming in C# course may be useful for building a foundation in a technology track for this field.

Reading list

We've selected 20 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 Programming in C# .
This classic work on design patterns provides a foundation for understanding and applying object-oriented design principles.
Is an invaluable reference tool for experienced C# developers, offering in-depth coverage of the language.
Comprehensive guide to object-oriented programming in C#. It covers all the basics of object-oriented programming, including classes, objects, inheritance, and polymorphism.
Comprehensive guide to the latest version of the C# language and the .NET Framework. It covers all the new features of C# 6.0 and the .NET 4.6 Framework, including async/await, generics, and lambda expressions.
Guide to software architecture that emphasizes the importance of creating clean, maintainable, and testable code. It valuable resource for any software developer who wants to learn how to design and build software that is more flexible, maintainable, and scalable.
Comprehensive guide to the latest version of the C# language and the .NET Core framework. It covers all the new features of C# 7.0 and the .NET Core 2.0 framework, including async/await, generics, and lambda expressions.
Valuable reference tool for developers, offering solutions to commonly encountered problems in C#.
Comprehensive guide to domain-driven design, a software development approach that focuses on modeling the real-world domain of the application. It valuable resource for any software developer who wants to learn how to design and build software that is more flexible, maintainable, and scalable.
Is particularly useful for those transitioning to C# 7.0, offering a thorough understanding of its new features and how to apply them.
Is useful as additional reading, providing practical tips and techniques to enhance C# coding skills.
Collection of recipes for solving common programming problems in C#. It useful reference for any C# developer who wants to learn how to solve specific problems.
Comprehensive guide to the Java programming language. It covers all the basics of Java programming, as well as more advanced topics such as object-oriented programming, design patterns, and Java libraries. It good choice for beginners who want to learn more about Java.
Adds depth and breadth by delving into the internals of the Common Language Runtime (CLR), which is essential for advanced understanding of C#.
Is an updated version of the C# in a Nutshell, providing a concise overview of the latest features introduced in C# 7.0.
Comprehensive guide to object-oriented design using the Unified Modeling Language (UML). It good reference for anyone who wants to learn more about object-oriented design principles and patterns.
Comprehensive guide to the Common Language Runtime (CLR), the virtual machine that executes .NET code. It valuable resource for any .NET developer who wants to learn more about the CLR and how it works.
Helps to build a solid foundation in object-oriented design and covers key concepts and principles like polymorphism and inheritance.
Popular guide to the Java programming language. It uses a graphical approach and fun exercises to explain the basics of Java programming. It good choice for beginners who want to learn more about Java.
Provides a beginner-friendly introduction to object-oriented programming in C#.

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 Programming in C# .
Object-Oriented Programming in Kotlin
Most relevant
Object Oriented Programming with Kotlin 1
Most relevant
Introduction to Object-Oriented Programming with Java
Most relevant
Teach teens computing: Object-oriented Programming in...
Most relevant
Classes and Object-oriented Programming in Python 3
Most relevant
Making Your Java 8 Code More Object-oriented
Most relevant
C++ Classes and Objects
Most relevant
Java Fundamentals: Object-oriented Design
Most relevant
Object-Oriented PHP
Most relevant
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