Java, C++, C# and PHP. The Differences.

Many of the students that come to learn in my courses already know other programming languages. In order to assist my students I chose to create a summery for all the differences between the four main programming languages I teach. If there is a topic in which a comparison is required please don’t hesitate and […]

Tel Hai C# Fundamentals Autumn 2011 INFO

During the coming semester (Autumn 2011) I am going to deliver a detailed C# course in Tel-Hai. This course is delivered as part of Tel-Hai Computers Science BSc academic program. It is an introductory course to software development using the .NET framework and the C# programming language. We are going to cover the fundamental topics […]

The Israeli Guide to C# INFO

During the past 2 years I have been working on a short practical guide for learning C#. The guide includes texts and video clips. The texts were written in Hebrew. The video clips were taken in Hebrew as well. You can find it at www.CSharpBook.co.il. I have recently upgraded this website.

Asynchronous Methods in C# PRO

When developing a server side application in .NET that handles high volume of traffic there is always a place to consider the implementation of the Asynchronous Method pattern. Implementing this pattern will allow our application to handle a bigger number of clients. I have just updated the Asynchronous Methods slides in my C# Fundamentals course, […]

Tuples in C# PRO

Tuples were introduced in .NET 4.0. While arrays hold objects of the same type, tuples can hold objects of different types. The eight different generic Tuple classes are available for the purposes of having tuples with diferent number of types. Once a tuple was created the type of its fields cannot be changed. In a […]

The C# Pragma Directive PRO

Using the #paragma directive we can supress warning messages for specific code segments. The following short video clip shows that. One of the scenarios in which this directive can be useful is the case of having multiple warning messages. When their number is small it is easy to track. When there are many of them […]

Covariance and Contravariance in C# 4.0 PRO

Covariance and Contravariance deal with the oredering of types from narrower to wider and their interchangeability or equivalence in specific cases. When a software programming language supports covariance it means that in specific cases (such as function parameters, generics and function returned types) it supports the conversion from a narrower type (e.g. int) to a […]

C# Named Parameters PRO

As of C# 4.0 we can call a function and specify for each and every argument we pass over in our call the parameter it targets. We can take advantage of this capability when dealing with functions that were defined with optional parameters. The following video clip explains this possibility. I have just completed to […]

C# Optional Parameters PRO

As of C# 4.0 we can define a function and set default values for the parameters we choose. Doing so, those parameters become optional ones. When calling the function we don’t have to pass over values to those parameters. The following video clip explains this possibility. I have just completed to update my C# Fundamentals […]

C# Dynamic Typing PRO

As of C# 4.0 we can define a variable using the dynamic keyword. Doing so, the exact type of the variable will be set during the execution of our code in according with the type of value we assign. The following video clip explains this capability. I have just completed to update my C# Fundamentals […]

Skip to content Update cookies preferences