Description

This course introduces D, a systems programming language designed to offer the same power and flexibility as C++ coupled with the convenience of features found in modern programming languages such as C# or Java. D is a native, compiled object-oriented programming language that manages to avoid some of C/C++ shortcomings such as imprecise data types or the need for manual memory management. On the other hand, D lends itself to performance-critical tasks: if needed, it supports various performance-improving approaches such as an ability to disable array bound checks. This course covers the basic features of D, such as its type system, support for error handling, the way it handles OOP as well as D's approach to concurrency.