Handling Errors and Exceptions in C#. Part 3

This is the third and most comprehensive part about handling errors and exceptions in C#. Here are the first and the second part. Also, you can take a look at the blog post about global exceptions handling in WPF applications. Errors Handling and many other topics you’ll find in my new video course “API in C#: The Best Practices of Design and Implementation”. Take [...]

By |2019-01-11T11:14:50+03:00October 24th, 2016|.NET, Best Practices, C#, CodeProject, Refactoring|7 Comments

Abstract Class VS Interface in C#

You can open any C# tutorial and you’ll find some information about abstract classes and interfaces. Most likely, you’ll not find any information about what is the difference between abstract class and interface. This theme was discussed earlier on the Internet several times but I want to consolidate all the most important thoughts regarding the problem of choosing between an abstract class and interface [...]

By |2019-01-11T11:11:11+03:00July 22nd, 2016|.NET, Best Practices, C#, CodeProject, Design|5 Comments

Designing and Implementing API in C#

Nowadays I’m writing my new programming video course. I chose an interesting topic for the next course: “Designing and Implementing API in C#”. How to design API? In this course, you’ll 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 [...]

By |2016-07-23T15:47:19+03:00July 22nd, 2016|Best Practices, C#, Design, Refactoring, Video Courses, .NET|1 Comment

MVVM: When EventAggregator (aka MessageBus) is an Anti-Pattern

Very often we can see that developers tend to use static message buses for all kind of interactions between objects. For those, who unaware of this pattern I want to recall that this pattern allows organizing loosely coupled communication channel between objects which don’t want (or can’t) to know each other. Let’s have a brief look at how a regular example of using this [...]

By |2019-01-11T11:14:06+03:00June 28th, 2016|WPF, .NET, Best Practices, CodeProject, Design|2 Comments

C# Static Code Analysis with NDepend

Have you heard about the “goto fail” fail? This is a security bug which was introduced by Apple in one of the iOS updates. Long story short, there was a piece of unreachable code which had to perform an important security check of a certificate. But it was unreachable. This is a huge defect in the software of this kind. Any meaningful static analysis [...]

By |2016-06-28T11:14:58+03:00April 24th, 2016|C#, .NET|1 Comment

Learn Enterprise WPF with XAML from Scratch

My first course "Learn Enterprise WPF with XAML from Scratch" went live on Udemy.com and it will cost you just 10$! It is a great WPF tutorial for beginners! In this course you can learn deeply the concepts and tools that you will need to build fully functional UI-applications with the modern UI-building framework, Windows Presentation Foundation (WPF).

By |2016-09-03T08:08:34+03:00April 18th, 2016|.NET, WPF, Video Courses|1 Comment

Objects Equality in C#. Important Facts That You Should Know

Don’t forget that if you want to get my upcoming video courses with 50% discount, then fill the following  form. C# provides many ways to compare objects, not only to compare class instances, but also structures. Actually, there are so many ways, that it requires to put them in order. All those possible options of comparing confuse people in case of misunderstanding them and [...]

By |2016-04-26T16:47:23+03:00April 2nd, 2016|.NET, Best Practices, C#, CodeProject|0 Comments

Cryptography in .NET for Beginners

This is a brief introduction into .NET cryptography. Hashes Hashing is a transformation process of some input data of an arbitrary length into an array of bytes of fixed size. Hash is a one-side transformation function, the result of which cannot be reversed for receiving original input data. Very often it is used to store passwords. Even if an attacker gets a hash, he [...]

By |2016-04-26T16:36:17+03:00March 18th, 2016|.NET, CodeProject, Security & Cryptography|1 Comment
Go to Top