▶Book Description
Object-oriented programming (OOP) is a programming paradigm organized around objects rather than actions, and data rather than logic. With the latest release of C#, you can look forward to new additions that improve object-oriented programming.
This book will get you up to speed with OOP in C# in an engaging and interactive way. The book starts off by introducing you to C# language essentials and explaining OOP concepts through simple programs. You will then go on to learn how to use classes, interfacesm and properties to write pure OOP code in your applications. You will broaden your understanding of OOP further as you delve into some of the advanced features of the language, such as using events, delegates, and generics. Next, you will learn the secrets of writing good code by following design patterns and design principles. You'll also understand problem statements with their solutions and learn how to work with databases with the help of ADO.NET. Further on, you'll discover a chapter dedicated to the Git version control system. As you approach the conclusion, you'll be able to work through OOP-specific interview questions and understand how to tackle them.
By the end of this book, you will have a good understanding of OOP with C# and be able to take your skills to the next level.
▶What You Will Learn
⦁ Master OOP paradigm fundamentals
⦁ Explore various types of exceptions
⦁ Utilize C# language constructs efficiently
⦁ Solve complex design problems by understanding OOP
⦁ Understand how to work with databases using ADO.NET
⦁ Understand the power of generics in C#
⦁ Get insights into the popular version control system, Git
⦁ Learn how to model and design your software
▶Key Features
⦁ Understand the four pillars of OOP; encapsulation, inheritance, abstraction and polymorphism
⦁ Leverage the latest features of C# 8 including nullable reference types and Async Streams
⦁ Explore various design patterns, principles, and best practices in OOP
▶Who This Book Is For
This book is designed for people who are new to object-oriented programming. Basic C# skills are assumed, however, prior knowledge of OOP in any other language is not required.
▶What this book covers
⦁ Chapter 1, Overview of C# as a Language, covers a basic overview of the C# programming language to enable the beginner to understand the language constructs. The chapter will also explain why .NET exists as a framework and how to utilize the .NET framework in programs. The chapter will conclude by introducing Visual Studio as an editor for developing C# projects.
⦁ Chapter 2, Hello OOP - Classes and Objects, explains the most basic concepts of objectoriented programming. We start by explaining what a class is and how to write a class.
⦁ Chapter 3, Implementation of OOP in C#, covers the concepts that make C# an OOP language. This chapter covers some very important topics of the C# language and how to utilize those in real-life programming.
⦁ Chapter 4, Object Collaboration, covers object collaboration, what it is, how objects relate to one another in a program, and how many types of relationships exist between objects. We will also discuss dependency Collaboration, Association, and Inheritance.
⦁ Chapter 5, Exception Handling, covers how to handle exceptions in your code while executing it. We will explore the different types of exceptions and how to use the try/catch block to eliminate problems in your code.
⦁ Chapter 6, Events and Delegates, covers events and delegates. In this chapter, we will cover what an event is, what a delegate is, how an event is connected to a delegate, and their respective uses.
⦁ Chapter 7, Generics in C#, introduces a very interesting and important topic – generics. We will learn what generics are and why they are so powerful.
⦁ Chapter 8, Modeling and Designing Software, covers the different Unified Modeling Language (UML) diagrams used in software design. We will talk in detail about the most popular ones, including the class diagram, the use case diagram, and the sequence diagram.
⦁ Chapter 9, Visual Studio and Associated Tools, covers the best editor for C# programming. Visual Studio is a very rich IDE. It has some awesome features that make the life of a developer super productive. In this chapter, we will introduce the different projects and windows available in Visual Studio.
⦁ Chapter 10, Exploring ADO.NET with Examples, covers the ADO.NET classes, along with the fundamentals of various data adapters, stored procedures, and object relationship models through the Entity framework. We will also discuss transactions in ADO.NET.
⦁ Chapter 11, New Features in C# 8, covers new features of the C# language, which is improving day by day as C# language engineers incorporate additional features into the language. In 2019, Microsoft announced that C# 8.0 will be released, and outlined the new features that will come with this version. This chapter will discuss the new features that are going to be introduced in C# 8.0. We will talk about Nullable Reference types, Async Streams, Ranges, default implementations of interface members, and several other topics.
⦁ Chapter 12, Understanding Design Patterns and Principles, contains information about design principles and some very popular and important design patterns.
⦁ Chapter 13, Git – The Version Control System, discusses the most popular version control system available today – Git. It is essential for all developers to learn Git.
⦁ Chapter 14, Prepare Yourself, Interview, and The Future, includes some of the most common interview questions and answers to those questions, so that you are prepared for your next interview. This chapter is mainly to give you an idea about potential interview questions.