Companies Home Search Profile

Beginning Object-oriented Programming with C#

Focused View

Zoran Horvat

6:49:46

2 View
  • 001 Introducing the C# Programming Language.mp4
    04:24
  • 001 M01-C01-slides.pdf
  • 002 M01-C02-slides.pdf
  • 002 What Follows in This Course.mp4
    02:48
  • 003 Installing the Visual Studio.mp4
    02:11
  • 004 M01-C04-code.zip
  • 004 M01-C04-slides.pdf
  • 004 The Dawn of Computer Programming.mp4
    03:52
  • 005 Inventing Procedural Programming Constructs.mp4
    07:37
  • 005 M01-C05-code.zip
  • 006 M01-C06-slides.pdf
  • 006 Summary.mp4
    01:43
  • 001 Hitting the Limitation of Procedural Programming.mp4
    04:01
  • 002 Seeing the First Glimpse of Objects.mp4
    04:15
  • 003 The Dawn of Objects.mp4
    04:42
  • 004 Speaking the Language of Objects.mp4
    04:27
  • 005 Managing Memory Allocations.mp4
    03:32
  • 006 Summary.mp4
    03:07
  • 001 Introducing C# Language Syntax.mp4
    04:41
  • 002 Outlining Code Blocks and Instructions.mp4
    02:33
  • 003 Defining Block Instructions.mp4
    02:05
  • 004 Method Definitions in C#.mp4
    06:30
  • 005 Understanding Access Modifiers.mp4
    05:05
  • 006 Understanding Program Entry Point.mp4
    06:22
  • 007 Running the Console Application.mp4
    06:34
  • 008 Exercise.mp4
    01:50
  • 009 Summary.mp4
    03:50
  • 001 M04-C01-code.zip
  • 001 M04-C01-slides.pdf
  • 001 Understanding the Need to Vary Implementation.mp4
    05:16
  • 002 Inventing Polymorphic Classes.mp4
    07:59
  • 002 M04-C02-code.zip
  • 003 Inventing Virtual Functions.mp4
    05:41
  • 003 M04-C03-code.zip
  • 003 M04-C03-slides.pdf
  • 004 Implementing Polymorphic Method Calls.mp4
    06:51
  • 004 M04-C04-code.zip
  • 005 M04-C05-code.zip
  • 005 Understanding Virtual Functions.mp4
    03:56
  • 006 M04-C06-code.zip
  • 006 Virtual Methods in C#.mp4
    06:29
  • 007 Exercise.mp4
    01:32
  • 007 M04-C07-slides.pdf
  • 008 M04-C08-slides.pdf
  • 008 Summary.mp4
    02:09
  • 001 M05-C01-slides.pdf
  • 001 Understanding .NET Assemblies.mp4
    07:21
  • 002 M05-C02-code.zip
  • 002 Understanding Solution and Project Elements.mp4
    07:05
  • 003 Introducing Customers Requirements.mp4
    08:31
  • 003 M05-C03-slides.pdf
  • 004 Designing Classes.mp4
    07:41
  • 004 M05-C04-code.zip
  • 004 M05-C04-slides.pdf
  • 005 Initializing Objects.mp4
    07:17
  • 005 M05-C05-code.zip
  • 005 M05-C05-slides.pdf
  • 006 M05-C06-slides.pdf
  • 006 Summary.mp4
    02:23
  • 001 Adding Behavior to Classes.mp4
    05:01
  • 001 M06-C01-code.zip
  • 001 M06-C01-slides.pdf
  • 002 Implementing the ToString Method.mp4
    04:44
  • 002 M06-C02-code.zip
  • 003 M06-C03-code.zip
  • 003 M06-C03-slides.pdf
  • 003 Modeling the Domain with Classes.mp4
    07:33
  • 004 M06-C04-code.zip
  • 004 M06-C04-slides.pdf
  • 004 Removing Code Duplication.mp4
    03:13
  • 005 M06-C05-code.zip
  • 005 M06-C05-slides.pdf
  • 005 Naming Domain-related Methods.mp4
    03:57
  • 006 Implementing Domain-related Methods.mp4
    04:55
  • 006 M06-C06-code.zip
  • 006 M06-C06-slides.pdf
  • 007 M06-C07-code.zip
  • 007 M06-C07-slides.pdf
  • 007 Stepping from Procedural to Object-oriented Programming.mp4
    03:25
  • 008 M06-C08-code.zip
  • 008 Providing Placeholders for Unimplemented Methods.mp4
    03:29
  • 009 Autonomous Exercise.mp4
    00:58
  • 009 M06-C09-slides.pdf
  • 010 M06-C10-slides.pdf
  • 010 Summary.mp4
    03:08
  • 001 Chaining Method Calls.mp4
    04:44
  • 001 M07-C01-code.zip
  • 001 M07-C01-slides.pdf
  • 002 Introducing Expression-bodied Methods.mp4
    05:44
  • 002 M07-C02-code.zip
  • 003 Introducing the Tell, Dont Ask Principle.mp4
    02:42
  • 003 M07-C03-code.zip
  • 003 M07-C03-slides.pdf
  • 004 Implementing Private Methods on a Class.mp4
    05:44
  • 004 M07-C04-code.zip
  • 005 M07-C05-code.zip
  • 005 M07-C05-slides.pdf
  • 005 Pattern Matching Expressions in C#.mp4
    04:48
  • 006 Completing the Calendar Model.mp4
    04:09
  • 006 M07-C06-code.zip
  • 007 M07-C07-code.zip
  • 007 M07-C07-slides.pdf
  • 007 Understanding the Top-down Development Style.mp4
    04:09
  • 008 Completing the Model.mp4
    05:38
  • 008 M07-C08-code.zip
  • 008 M07-C08-slides.pdf
  • 009 Demonstrating the Model.mp4
    01:07
  • 009 M07-C09-code.zip
  • 010 M07-C10-slides.pdf
  • 010 Summary.mp4
    02:31
  • 001 Benefiting from the Deep Domain Model.mp4
    04:47
  • 001 M08-C01-code.zip
  • 001 M08-C01-slides.pdf
  • 002 Combining Existing Features to Build New Ones.mp4
    07:03
  • 002 M08-C02-code.zip
  • 002 M08-C02-slides.pdf
  • 003 M08-C03-code.zip
  • 003 Understanding Method Overloading.mp4
    02:04
  • 004 Introducing Requests for Polymorphism.mp4
    07:41
  • 004 M08-C04-code.zip
  • 004 M08-C04-slides.pdf
  • 005 M08-C05-code.zip
  • 005 M08-C05-slides.pdf
  • 005 Ordering User Stories before Implementing Them.mp4
    03:28
  • 006 Introducing the Open-closed Principle.mp4
    06:39
  • 006 M08-C06-code.zip
  • 006 M08-C06-slides.pdf
  • 007 Isolating Varying Operations in Classes.mp4
    03:37
  • 007 M08-C07-code.zip
  • 007 M08-C07-slides.pdf
  • 008 Autonomous Exercise.mp4
    01:31
  • 008 M08-C08-slides.pdf
  • 009 M08-C09-slides.pdf
  • 009 Summary.mp4
    03:13
  • 001 M09-C01-code.zip
  • 001 M09-C01-slides.pdf
  • 001 Revisiting Dynamic Method Calls.mp4
    06:20
  • 002 M09-C02-code.zip
  • 002 M09-C02-slides.pdf
  • 002 Understanding Dependencies and Dependency Injection.mp4
    06:30
  • 003 Implementing Dependency Injection.mp4
    02:33
  • 003 M09-C03-code.zip
  • 004 M09-C04-code.zip
  • 004 Using the Dependency.mp4
    05:44
  • 005 M09-C05-code.zip
  • 005 Pulling Out a Derived Class.mp4
    04:11
  • 006 M09-C06-code.zip
  • 006 Understanding Abstract Methods and Classes.mp4
    05:10
  • 007 M09-C07-code.zip
  • 007 M09-C07-slides.pdf
  • 007 Practicing Object Substitution Principle.mp4
    04:40
  • 008 M09-C08-code.zip
  • 008 M09-C08-slides.pdf
  • 008 Substituting Objects at Run Time.mp4
    02:12
  • 009 M09-C09-slides.pdf
  • 009 Summary.mp4
    02:31
  • 001 How to Learn Programming.mp4
    03:19
  • 001 M10-C01-slides.pdf
  • 002 M10-C02-slides.pdf
  • 002 Reiterating Classes and Objects.mp4
    05:44
  • 003 M10-C03-slides.pdf
  • 003 Reiterating Object-oriented Design.mp4
    05:09
  • 004 M10-C04-slides.pdf
  • 004 Reiterating Method Composition.mp4
    05:39
  • 005 M10-C05-slides.pdf
  • 005 Reiterating Dependency Injection and Object Composition.mp4
    05:46
  • 006 Designing for Evolution.mp4
    05:05
  • 006 M10-C06-slides.pdf
  • 007 M10-C07-slides.pdf
  • 007 Refactoring and Redesigning Code.mp4
    05:51
  • 008 M10-C08-slides.pdf
  • 008 Summary.mp4
    01:59
  • 001 Understanding the Need for Collections.mp4
    05:13
  • 002 Looping Through the Array.mp4
    03:00
  • 003 Initializing Arrays.mp4
    05:18
  • 004 Understanding Collection Polymorphism.mp4
    04:23
  • 005 Introducing Lists.mp4
    05:34
  • 006 Introducing the While Loop.mp4
    04:50
  • 007 Introducing Other Kinds of Loops.mp4
    03:32
  • 008 Introducing Numeric Types.mp4
    06:04
  • 009 Summary.mp4
    05:27
  • Description


    Learn OOP fundamentals applied to the C# programming language

    What You'll Learn?


    • Understand why C# is organized the way it is
    • Learn how to step from procedural to proper object-oriented design
    • Construct larger classes out of smaller ones
    • Combine behavior to construct complex features

    Who is this for?


  • Beginner C# developers curious about modern programming practices
  • C# programmers who wish to improve their fundamental skills
  • What You Need to Know?


  • Knowledge of any programming language (including C#) is a plus
  • More details


    Description

    In this course, you will learn the basic principles of object-oriented programming, and then learn how to apply those principles to construct an operational and correct code using the C# programming language and .NET. As the course progresses, you will learn such programming concepts as objects, method resolution, polymorphism, object composition, class inheritance, object substitution, etc., but also the basic principles of object-oriented design and even project management, such as abstraction, dependency injection, open-closed principle, tell don't ask principle, the principles of agile software development and many more.

    After completing this course, you will be qualified to continue learning the principles of object-oriented design, and to start developing applications that will be modeling different business domains.

    This course differs from other similar courses in that it first devises the C# programming language from scratch, and the .NET Runtime that makes the object-oriented code run. Only after completing this task shall we step on to using the programming concepts to implement customer's requirements in C#.

    The reason for such an extreme experiment is to teach the programmers that any object-oriented language is only a tool, which relies on a small set of operations that are already implemented for us - such as silently passing the this reference or resolving function addresses from the object reference at run time. I find great danger in writing code without understanding what happens when a piece of object-oriented code is taken for execution.

    Who this course is for:

    • Beginner C# developers curious about modern programming practices
    • C# programmers who wish to improve their fundamental skills

    User Reviews
    Rating
    0
    0
    0
    0
    0
    average 0
    Total votes0
    Focused display
    Zoran Horvat
    Zoran Horvat
    Instructor's Courses
    Zoran is Principal consultant at Coding Helmet Consultancy, speaker and author of 100+ articles, and independent trainer on .NET technology stack. You can find him speaking at conferences and user groups, promoting object-oriented development style, clean coding practices and techniques that improve longevity of complex business applications. Since 2014, Zoran is constantly publishing video courses, explaining object-oriented modeling and design as the central element of application design and relating it to other development aspects, such as persistence, UI and system integration.
    Students take courses primarily to improve job-related skills.Some courses generate credit toward technical certification. Udemy has made a special effort to attract corporate trainers seeking to create coursework for employees of their company.
    • language english
    • Training sessions 90
    • duration 6:49:46
    • English subtitles has
    • Release Date 2024/03/11