The Complete C# and Object-Oriented Programming Course
What you'll learn
- Install and work with Visual Studio 2019 (Windows and Mac)
- Learn the fundamentals of programming using C# 7.2 and C# 8
- Understand Iaas, PaaS, SaaS and Serverless
- Work with Azure Functions
- Working with nulls in C# 8
- Working The New Asynchronous Streams
- Understanding and working with positional patterns
- Work with object-oriented programming (OOP) as a professional.
- Master the classes and understand the different types of classes (static, abstract, partial, sealed and more).
- Learn the structures and enumerations and how to use them.
- The differences between classes and structs.
- Learn to encrypt and decrypt your data using C#.
- Understand Inheritance, Encapsulation, Polymorphism and Abstraction.
- Get familiar with Composition, Aggregation and Association.
- Understand the loops (For, Foreach, While and more).
- Master the powerful lambda expressions.
- Understand anonymous methods and how to create them.
- How to manipulate strings (Replace, Remove, Insert, Substring and more).
- Read and write files easily with C#.
- Build caesar cipher (encryption and decryption) yourself.
- Learn how to create different types of methods.
- The difference between static and non-static methods.
- How to use recursive methods.
- How to use the extension methods.
- Understand the difference between pass by reference and pass by value.
- How to use optional and named arguments.
- Work with arrays including multidimensional arrays and jagged arrays.
- Get familiar with the advanced concepts (Multithreading, Recursing, Generics & many more).
- Master the non-generics collections (ArrayLists, Hashtables, Stacks, Queues and more).
- Master the generics collections (List<T>, dictionary<K,V>, SortedList<K,V> and more).
- How to create generic classes, methods and arguments.
- How to debug and find errors easily in your code.
- Understand how stacks and queues work with real examples.
- How to handle exceptions (Exception Handling).
- How to use params keyword.
- How to use Stopwatch class.
- Understand how older tuples and new enhanced tuples work.
- Learn how to use NuGet and install packages.
- How to work with Delegates and Events.
- Delegates vs direct methods call.
- Work with Func, Action and Predicate delegates.
- Learn how to use timers in C#.
- Make your application speaks using SpeechSynthesizer.
- Dynamic and Var keywords and differences between them.
- How to use LINQ (Language-Integrated Query).
- How to check C# version and how to change it.
- Understand what is synchronous programming.
- Understand what is asynchronous programming.
- Differences between synchronous and asynchronous programming.
- Learn multi-threading theory and create multi-threaded applications.
- Understand deadlocks and how to solve them.
- Understand lock keyword, Mutex, Monitor and Semaphores.
- How to use tasks, manage them and even cancel them.
- How to work with async and await keywords.
- Understand what is Serialization and Deserialization and how to use them.
- How to use attributes and create custom attributes.
- Understand the preprocessor directives and how to use them.
- Understand assemblies and versions.
- Work efficiently and smoothly with Visual Studio 2017.
- Work with comparison operators.
- Learn how to create variables and convert their datatypes in different ways.
- Understand how compilers work
- Conditional statements (if and switch statements).
- How to use DateTime and TimeSpan.
- Understand the logical operators.
- How to use arithmetic operators.
- DLL files (Dynamic Link Libraries), How and why we use them.
- How to decompile DLL files.
- How to protect your DLL files.
- Building new switch expressions
- Using tuple like patterns on switch statements
- Using property patterns to match on properties
- Working with new range operator
- Using hat operator
- Visual Studio Community (The free edition of Visual Studio)
[Update C# 8]
The next major version of C# is officially released which is C# 8.0. We were expecting it for quite some time, we had the chance to learn all the minor features and enhancements included in C# 7.1, 7.2 and 7.3, and I can say I am quite excited about the new capabilities Microsoft keep adding to C#.
In chapter 11 we will be discussing the new features and enhancements of C# 8 with easy to follow examples to make you understand what each feature is about.
Hello and welcome to The Complete C# and Object-Oriented Programming Course, The one and only course you will need to learn C# and object-oriented programming. This is more like a collection of many courses brought together to help you learn C# and how to use it efficiently. This course is by far the most comprehensive and effective on the market. Here's why:
The course will teach you almost everything you need to know regarding the powerful C# language.
This course start with you from zero experience in programming and starts to level up to the object-oriented programming till you reach the advanced concepts and topics of C# (Asynchronous Programming, LINQ,Generics, Collections, Delegates and more).
It will help you learn any programming languages other than C# later, because the course discusses almost every programming concepts and of course how to implement it in C#.
You will experience more than 200 examples, 30 exercises, 24 assignments and over 150 quiz questions.
You will learn about the new features in C# (7.1 - 7.2 - 7.3 and 8) like Enhanced tuples, out variables, local functions, expression bodied members, pattern matching and other more features.
This course will cover different encryption and decryption methods, plus explaining the theory of cryptography.
You will be very familiar with Visual Studio and many of its features like snippets and how to use them and even create custom snippets.
You will learn about real world staff like naming conventions, the small little differences between data types, terminologies, programming concepts and more.
Understand the advanced concepts such as multithreading, the synchronous and asynchronous programming.
Get familiar with the .Net framework structure and understand is the .Net framework
Learn the history of C# language and differences between each version of C#.
Learn how to work like professionals.
What other students who have taken this course say:
"I enjoyed the course. It's comprehensive and covers most of everything you'd want to know about C# and .NET. There's plenty of exercises and assignments in the course to help reinforce lessons. The course could be improved with the addition of a course project, but the instructor has assured that there will be another course forthcoming that will cover this. I recommend this course for anyone who wants to learn more about C# and the .NET framework."
"I am about 1/4 throught this course, and i have to say its brilliant. I have tried to learn how to program with many different languages using may different courses on udemy and have given up either because the course moved to fast or was to technical for me to understand. However this course is fantastic the material presented is very easy to digest and very informative while still engaging. So far i have learnt about using build in metods such as DateTime methods for my programs, creating and useing classes using inheritance, encapsulation and polymorphism. The course progresses on a nice incline in difficulty to test you on what you have just learnt and it has coding exercises, assignments and also quizes to test yourself with. The instructor is also very friendly and is quick to answer your questions with a good level of detail. I would recommend this course for anyone wanting to learn c# or learn how to program in general using c# as a first language."
"This course clearly covered the topics to understanding the language from a first-steps approach. I highly recommend to anyone who wishes to learn the language and requires a video tutorial with enough exercises. -- Thanks Ahmad"
"I've enrolled in countless other C# courses on UDEMY but always end up either getting bored or end up getting confused. In this course so far, the course has assignments which keep it fun for me, plus it cover all topics clearly to prevent me from getting confused. Thank You."
"The course is comprehensive and well explained, undoubtedly the author knows what he is talking about and is pretty experienced with this kind of topics.Examples were short enough to make obvious what each pattern is all about. Author points out issues in different approaches and provides a solution.Never seen these kind of explanations before...Overall I find this course excellent"
"Great course!! The instructor has comprehensive knowledge about the C# language and is able to present the programming concepts and paradigms in a way that is easily understandable.The presentation is very detailed and concise which is greatly appreciated.I feel ready to implement the knowledge gained"
Students also said that this course was:
Direct & To-the-point
Get ready to start a journey of 20+ hours of C#, 20+ hours will make you a C# guru.
So what are you waiting for....let's start!
Who this course is for:
- Complete beginners, no prior experience is required.
- Developers switching from other languages.
- Programmers who are not feeling confident about their programming skills.
- People who are looking for a career change.
- Students looking for a course to refresh and incredibly increase their knowledge.
- If you want to take only one course to learn everything to be C# developer.
Hello there! My name is Ahmad Mohey I'm a senior full stack developer. I have been developing applications for the last 10 years and I hope more years of creative developing to come. I have been developing applications for oil and gas industry and the financial and human resources departments for many companies.
I love to learn about new technologies and what’s new in the world of development as it’s growing rapidly, I love to help people learn and solve their problems. I believe, we all shall share our knowledge and pass it to each others.
The path to become a developer or a programmer is never easy but it is not that hard, You just need to keep going and do not quit and always think of any skill you have now, remember that you did not master it from the first time, you had to keep trying to master it.
Far from the software world I love photography and you can check my photographs on my page on facebook or 500px website, I am passionate about learning management and emotional intelligence and I attended many courses about management, negotiations and leadership.
I love traveling a lot,I love to see new places, cities, countries, cultures and people if I were to choose one thing to continue doing the rest of my life I would choose traveling.
One last thing and I think it might be relevant for me being a developer, is that I love computer games maybe that’s why I love programming :) . I hope one day I will make my own games.
Finally thanks for your time reading about me.