Dynamic Programming Interview Questions and Answers - 1

Question: 1

Which class is used for converting the data types?

The System.Convert class provides a complete set of methods for converting the data types.

Question: 2

What is the difference between dynamic and var data types?

The difference between the var and dynamic data types is that the var data type is strongly type checked  at the compile time; whereas, the dynamic data type is type checked by the compiler only at run time.

After declaring a var data type, you cannot explicitly change its type throughout the execution of the program; however, a variable of the dynamic data type can be changed during runtime.

Another major difference between the two is that dynamic type can also be used as the return type for methods, for which var cannot be used.

Question: 3

What is Dynamic Language Runtime (DLR)?

DLR is a runtime environment that allows you to integrate dynamic languages with the Common Language Runtime (CLR) by adding a set of services, such as expression trees, call site caching, and dynamic object interoperability to the CLR.

The System.Dynamic and System.Runtime.CompilerServices namespaces are used to hold the classes for DLR.

It also provides dynamic features to statically-typed languages, such as C# and Visual Basic to enable their interoperation with dynamic languages.

Question: 4

Name the binders provided by .NET Framework 4.0?

.NET Framework 4.0 provides the following binders:

Object Binder – Enables to communicate with .NET objects

JavaScript Binder – Enables to communicate with JavaScript in Silver light

Python Binder – Enables to communicate with Iron Python

Ruby Binder – Enables to communicate with Iron Ruby

COM Binder – Enables to communicate with COM

Question: 5

What are the advantages of DLR?

The various advantages provided by DLR are:

Allows you to easily implement the dynamic languages to the .NET Framework.

Provides dynamic features to statically- typed languages. The statically –typed .NET Framework languages, such as C# and Visual Basic can create dynamic objects and use them together with statically-typed objects.

Implements sharing of libraries and objects, which means that the objects and libraries implemented in one language can be used by other languages using DLR. The DLR also enables interoperation between statically-typed and dynamic languages.

Enables fast execution of dynamic operations by supporting advance caching.

Related Questions