Elias Fofanov
Elias Fofanov
  • 60
  • 52 777
Software Architecture: Introduction to Dependency Injection in C# - Tutorial for Beginners
Build a solid foundation in software architecture applying Dependency Injection
In many of my courses I use techniques of Dependency Injection and each time students write me private messages saying that they don't understand what it is and thus they don't understand what's going on in the course I teach. This is very unfortunate from the learning perspectives.
Watch the full course here: bit.ly/2ncw0U3
Dependency Injection is the set of techniques that allow to supply dependencies to objects. Actually, if you have ever passed dependencies via constructors, then you applied the so-called constructor injection. Dependency Injection (DI) is simple and difficult at the same time. On one hand, DI is comprised of simple techniques and on the other hand, when we need to bring DI to the next level, we need to make things more complicated using the so-called DI or IoC (Inversion of Control) Containers.
If you still don't understand what am I talking about, just believe me, you absolutely need to know about Dependency Injection. This course will tremendously improve your understanding of how software architectures emerge. So, this course is "must watch" for anyone who still doesn't understand what is DI and IoC-Containers.
Content and Overview
This course is aimed at all kind of developers.
The course covers:
- Introduction to Inversion of Control: Dependency Inversion Principle (DIP), Inversion of Control (IoC), Dependency Injection (DI),
- Dependencies and their types, Pure DI and IoC-Containers, Service Locator
- The Architectural Implications of Dependency Injection
Переглядів: 440

Відео

Learn Unit Testing in C# with NUnit - Tutorial for Beginners
Переглядів 23 тис.5 років тому
This course is all about writing unit tests using C# programming language and NUnit as a unit testing framework. Today unit testing is an absolutely required skill from any professional developer. Companies expect from developers to know how to write unit tests. To watch the full course, go here: bit.ly/2nbJjTR Learning unit testing puts a powerful and very useful tool at your fingertips. Being...
Multithreading and Parallel Programming in C#
Переглядів 1,1 тис.5 років тому
For the last two decades, computers became faster by increasing the number of CPU cores. However, the fact of having more cores itself doesn’t make a computer drastically faster if those cores are not used by software properly. We, as software developers, should know how to write asynchronous and parallel executing code to make our applications faster and more responsive. Take this course here:...
Master the Art of Writing Clean Code in C#
Переглядів 1,7 тис.5 років тому
Owning skills of producing a well-designed and well-implemented types is the prerequisite for the other developers to treat you as a real professional. Learn how to design and implement types in C# so that the other developers won’t hate you when using one of the types developed by you. It means you are going to learn how to write code of the high quality: readable, understandable and reliable....
C# Best Practices: StringBuilder vs String in C#
Переглядів 6045 років тому
Learn what is the difference between StringBuilder and String in C#.
New Book - "Software Architecture: Meta and SOLID Principles in C#"
Переглядів 4956 років тому
My new book - "Software Architecture: Meta and SOLID Principles in C#" is released on Leanpub. Follow the link: leanpub.com/solid-principles/
Course Promo: TDD in C# From A to Z
Переглядів 2016 років тому
Learn test-driven development and make your code completely testable, robust and maintainable. Learn unit testing in C# via practicing TDD. View full course just for 10.99$: bit.ly/2w5TnWr • Intro to TDD: why TDD (implementing canonicalization algorithm), 3 laws of TDD, when TDD fails and many other topics • Practical TDD: implementing Fibonacci numbers generator, FizzBuzz, Parsing Roman Numera...
Functional Programming - Course Outline
Переглядів 976 років тому
www.udemy.com/functional-csharp/?couponCode=TUBE-FUNC
Dependencies: Volatile and Stable
Переглядів 4346 років тому
Learn about volatile and stable dependencies in a full course: www.udemy.com/dependency-injection/?couponCode=TUBE-DI
DIP and Dependency Injection
Переглядів 236 років тому
Learn what is DIP and how it relates do Dependency Injection.
Functional Programming in C#: Immutability and Temporal Coupling
Переглядів 5106 років тому
Learn what is Immutability and Temporal Coupling. These two lectures are from my new course "Functional Programming in C#". Functional C# - tutorial for beginners
C# DateTime Best Practices: Problems with Dates and Times
Переглядів 5206 років тому
Learn what the problems are related to processing date and time values. You'll learn about time zones, datetime struct and how to work with date and time in C# in general.
Course Promo: Date and Time Fundamentals in NET and SQL Server
Переглядів 626 років тому
View full course just for 10.99$: bit.ly/2DygPdY In short, the course covers the following topics: Date and Time Fundamentals: Gregorian calendar, UTC, GMT, Atomic Time, How Computers Store Time, NTP, Date and Time Formats based on Standards and Specifications, Epoch Time and Unit Time, Date and Time Scope and Perspective Time Zones: Definition (complex one), Daylight-Saving Time (DST), Provide...
Course Promo: C# in Depth: Puzzles, Gotchas, Questions at Interviews
Переглядів 796 років тому
View full course just for 10.99$: bit.ly/2FgfQQd This course contains mostly practical puzzles learning which you get a better C# developer. You can find out on the Internet tons of impractical puzzles which don’t make you a better C# developer. This is not about this course. Yes, of course, even impractical puzzles sometimes are helpful especially if you’re preparing for a C# interview. Howeve...
Course Promo: Learn Unit Testing in C# with NUnit
Переглядів 906 років тому
View full course just for 10.99$: bit.ly/2nbJjTR Learn deeply the concepts and tools that you will need to build maintainable and reliable software. We start with basics of unit testing. What is a unit test? What unit testing frameworks exist? How to run and debug unit tests. After getting acquainted with the basics, we will get to the NUnit framework. Here you’ll learn how to install the frame...
Course Promo: Software Architecture: Dependency Injection for C# Developers
Переглядів 756 років тому
Course Promo: Software Architecture: Dependency Injection for C# Developers
Course Promo: Software Architecture: Meta and SOLID Principles
Переглядів 506 років тому
Course Promo: Software Architecture: Meta and SOLID Principles
Meta and SOLID Principles in C# Video Series - SOLID vs Yagni
Переглядів 906 років тому
Meta and SOLID Principles in C# Video Series - SOLID vs Yagni
Meta and SOLID Principles in C# Video Series - SRP vs ISP
Переглядів 716 років тому
Meta and SOLID Principles in C# Video Series - SRP vs ISP
Meta and SOLID Principles in C# Video Series - DRY (Don't Repeat Yourself)
Переглядів 5996 років тому
Meta and SOLID Principles in C# Video Series - DRY (Don't Repeat Yourself)
Meta and SOLID Principles in C# Video Series - CQS (Command-Query Separation)
Переглядів 3416 років тому
Meta and SOLID Principles in C# Video Series - CQS (Command-Query Separation)
Meta and SOLID Principles in C# Video Series - SoC
Переглядів 1046 років тому
Meta and SOLID Principles in C# Video Series - SoC
Meta and SOLID Principles in C# Video Series - Conclusion
Переглядів 386 років тому
Meta and SOLID Principles in C# Video Series - Conclusion
Meta and SOLID Principles in C# Video Series - KISS (Keep it Simple Stupid)
Переглядів 1,1 тис.6 років тому
Meta and SOLID Principles in C# Video Series - KISS (Keep it Simple Stupid)
Meta and SOLID Principles in C# Video Series - Law of Demeter
Переглядів 1446 років тому
Meta and SOLID Principles in C# Video Series - Law of Demeter
Meta and SOLID Principles in C# Video Series - Architecture and Design
Переглядів 1256 років тому
Meta and SOLID Principles in C# Video Series - Architecture and Design
Meta and SOLID Principles in C# Video Series - Encapsulation
Переглядів 536 років тому
Meta and SOLID Principles in C# Video Series - Encapsulation
Meta and SOLID Principles in C# Video Series - API in C#
Переглядів 716 років тому
Meta and SOLID Principles in C# Video Series - API in C#
Meta and SOLID Principles in C# Video Series - Outline
Переглядів 4726 років тому
Meta and SOLID Principles in C# Video Series - Outline
Meta and SOLID Principles in C# Video Series - OCP vs YAGNI
Переглядів 686 років тому
Meta and SOLID Principles in C# Video Series - OCP vs YAGNI

КОМЕНТАРІ

  • @smilingcookie1672
    @smilingcookie1672 11 місяців тому

    Fantastic!

  • @inakollusadananda2034
    @inakollusadananda2034 Рік тому

    How we do nunit test for aspx pages methods

  • @Ty1er
    @Ty1er Рік тому

    really really helpful a bunch .

  • @loganmedia1142
    @loganmedia1142 Рік тому

    Only one I'd really disagree with is not capitalising constants.

  • @BorisH2000UK
    @BorisH2000UK Рік тому

    Nice tutorial, but why are you multiplying fahrenheit by 32 in ToCelsius() method? 32 Fahrenheit, not 1, is 0 Celsius

  • @winnielWinnieLim
    @winnielWinnieLim 2 роки тому

    thank you so much! learn a lot from this tutorial.

  • @mohammadhosseinnezhadhendi6819
    @mohammadhosseinnezhadhendi6819 3 роки тому

    Thanks a lot

  • @fresh_wind87
    @fresh_wind87 3 роки тому

    А на русском как Вас послушать?)

  • @malikimrankhan9714
    @malikimrankhan9714 3 роки тому

    Hi Sir I will help you for your channel promotion & 1000 organic subscribers

  • @SomeBody-bk5op
    @SomeBody-bk5op 3 роки тому

    Hi Elias - How do we create extent report in html format for thee tests? please explain.

  • @brahmcdude685
    @brahmcdude685 3 роки тому

    wow. terrific video.

  • @dalamattho2307
    @dalamattho2307 3 роки тому

    Thank u so much. It gives complete explanation.

  • @thesuperiorman8342
    @thesuperiorman8342 3 роки тому

    Excellent tutorial. I learnt so much. Thank you

  • @ravikumarmalipeddi1171
    @ravikumarmalipeddi1171 3 роки тому

    Very informative, Well framed and in detail demonstration of DI and related principles. Awesome...!

  • @chinmayshetye3
    @chinmayshetye3 3 роки тому

    Very informative and helpful tutorial. Thanks a lot Elias.

  • @amitamit6564
    @amitamit6564 3 роки тому

    I am using a class which implements IDispose there is property colors having datatype list<string> in the class. I want to call Dispose methods to cleanup the resource and I have few questions. 1. Is list<string> managed? Can I call it resource? 2. To clear the list at the end of program.can this be done in Public void Dispose() { Colors. Clear() ; } Or do I need to implement Dispose pattern. I have few more questions which I will ask after I get above response

    • @EliasFofanov-aka-EngineerSpock
      @EliasFofanov-aka-EngineerSpock 3 роки тому

      You don't need to do anything because list is a managed object.

    • @amitamit6564
      @amitamit6564 3 роки тому

      @@EliasFofanov-aka-EngineerSpock in a xunit framework they said to use dispose to do clean up work. Which in my case were list<strings>. They were not getting emptied after each test run

    • @amitamit6564
      @amitamit6564 3 роки тому

      @@EliasFofanov-aka-EngineerSpock by the way your article is very good. I appreciate

  • @drallstars263
    @drallstars263 4 роки тому

    A fine lesson.

  • @ravikumarmalipeddi1171
    @ravikumarmalipeddi1171 4 роки тому

    Nice demonstration. Kindly share the code for "Character" class for better understanding.

    • @mohamedelbasmy5160
      @mohamedelbasmy5160 4 роки тому

      you can find all files here onedrive.live.com/?authkey=%21AJGV2YuEdiS5Tv8&cid=D0486487037850AB&id=D0486487037850AB%21795768&parId=D0486487037850AB%21795767&action=locate

  • @m.a.g.r1858
    @m.a.g.r1858 4 роки тому

    Such a comprehensive tutorial ! Thank you ! I was expecting to see tests on higher order functions. I can't seem to find them anywhere

  • @bryanstark324
    @bryanstark324 4 роки тому

    The voice sounds like Dennis Panjuta.

  • @jett27
    @jett27 4 роки тому

    Straight and to the point. Thanks for not wasting my time!

  • @user-yh6wy1mi7k
    @user-yh6wy1mi7k 4 роки тому

    thank you for this comprehensive tutorial it really helped me to understand the concept unit testing and working with nunit

  • @cleoresemanes8852
    @cleoresemanes8852 4 роки тому

    Thank you so much this is very helpful

  • @shuttereff3ct593
    @shuttereff3ct593 4 роки тому

    Thank you

  • @Tall-Cool-Drink
    @Tall-Cool-Drink 5 років тому

    Hate it when a developer talk like tech-robot.

  • @John_Ridley
    @John_Ridley 6 років тому

    Cool. Though 1775ms is "only" about 500 times sloer than 4ms not 1000x :)

  • @Tracks777
    @Tracks777 7 років тому

    Nice content! Keep it up!