educative.io

Programming in D: The Ultimate Guide for Software Engineers (Ali Çehreli)


Immutability - Should a Parameter be const or immutable? This lesson explains when a parameter should be const and when it should be immutable. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/N7wzoNEq1Lv). Immutability - Immutability of the Slice Versus the Elements This lesson explains immutability of the slice versus the elements and use of immutability in general. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/BnWqk23M71Y). Value Types and Reference Types - Value Types This lesson introduces the concept of value types and discusses the & operator in more detail. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/RMl2r9rP2rw). Value Types and Reference Types - Reference Types In this lesson, you will learn how variables of reference types maintain values. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/B6VMwj7AjwN). Getting Started With D - writeln and write This lesson explores the difference between writeln and write with the help of a coding example. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/xlQQpD5roWB). Function Parameters - Function Parameters This lesson covers function parameters and explains why parameters are always copied. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/m7qDvJ684p3). Getting Started With D - Solution: Fix the Code This lesson provides a solution to the challenge given in the previous lesson. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/7n0oYJk5pry). Arithmetic and Logical Operations on Data Types - Challenge: Fix the Code This lesson explains the usage of logical expressions with the help of a coding challenge. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/RMLnJKLjEAV). Arithmetic and Logical Operations on Data Types - Detecting Overflow and Truncation in Integers This lesson explains how overflow and truncation can be detected and prevented. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/x13qZv5wJ19). Arithmetic and Logical Operations on Data Types - Challenge: Find Twice and One Fifth of a Floating Point Value Here is a coding challenge related to floating point types and arithmetic operations. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/mym9zxNk5Kp). Arithmetic and Logical Operations on Data Types - Solution: Find Twice and One Fifth of a Floating Point Value Here is the solution to the challenge asked in the previous lesson. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/NEPDv0Ew50m). Arithmetic and Logical Operations on Data Types - Quiz Here is a short quiz to test the basic understanding of the concepts explained in this chapter. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/g2BgwDRy733). Conditional Statements and Loops - if Statement Previously, we have learned that the actual work in a program is performed by expressions. This lesson further elaborates on that concept by explaining an important control structure that uses logical expressions. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/qZv3JJWM5gk). Conditional Statements and Loops - Solution: Fix the Code This lesson provides a solution to the challenge given in the previous lesson. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/xVyPgM5lKZr). Conditional Statements and Loops - Ternary Operator ?: In this lesson, we will see what a ternary operator does and how we can use it in our code. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/JPpD1193OOg). Conditional Statements and Loops - Lazy Operators This lesson explains how lazy operators can be used in D language. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/7XoBQGQW6Lr). Conditional Statements and Loops - Solution: Print a parallelogram pattern Here is a solution to the coding challenge given in the previous lesson. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/g74ORMw5qjD). Conditional Statements and Loops - Name Scopes In this lesson, we discuss the name scopes. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/7n5vzqognpj). Conditional Statements and Loops - for Loop This lesson explains the for loop, its syntax and implementation in D. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/RMEJgLgmyPV). Arrays, Characters and Strings - Array Initialization and Basic Array Operations This lesson explains how arrays can be initialized and the basic operations that can be performed on elements of an array. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/39l8xO1GJYx). Conditional Statements and Loops - Quiz Here is a quiz on conditional statements and loops. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/gkND3oqK3wl). Variables and User Input - auto and typeof This lesson will teach you about the use of auto and typeof in D language. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/B854KD27ZXW). Conditional Statements and Loops - Chaining if-else Statements This lesson explains how if-else statements can be chained together to achieve more complex coding goals. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/Y5nVBwxqJYK). Conditional Statements and Loops - while Loop This lesson essentially explains what a while loop is and how to use it in the code. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/xVLoJyGPxK9). Conditional Statements and Loops - Challenge: Print a Parallelogram Pattern Here is a coding challenge based on the use of for loop to print a parallelogram pattern. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/xo21z5MRopr). Variables and User Input - Solution: Output Variable Values in a Statement In this lesson, we will look at the solution to the challenge asked in the previous lesson. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/m7Y0wqynN9R). Conditional Statements and Loops - do-while Loop This lesson explains how do-while loop is implemented and how it is different from the while loop. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/JEnX0vA9qpJ). Arithmetic and Logical Operations on Data Types - Floating Point Types This lesson digs into the types of floating points and their properties. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/7XoBpMwgz8G). Arrays, Characters and Strings - An Array Example Here is a simple program that shows how arrays can simplify things in a code. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/YM4N6Qjq8pY). Arrays, Characters and Strings - Associative Arrays This lesson explains how associative arrays can be used in D and the different methods that can be used with associative arrays. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/YMnZ7MEWNKK). Arrays, Characters and Strings - Slices: Termination of Sharing In this lesson, we will discuss the concept of termination of sharing in slices. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/x1P2RoqPz6J). Arrays, Characters and Strings - Slices and Other Array Features In this lesson, we will discuss slices and other array features like array.length, .dup etc. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/qV7Xxl0Orrp). Getting Started With D - Quiz Let’s proceed with a short quiz to test our understanding of the basic concepts explained in this chapter. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/NEqwo3mp68v). Variables and User Input - Fundamental Types This lesson explores in detail the fundamental types we have in D language and their properties. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/RL4RJArrEjV). Variables and User Input - Assigning Values to Variables This lesson teaches us about variables, the assignment operator and how the assignment operator can be used to assign values to variables. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/xVVyJ38wLvE). Arrays, Characters and Strings - Challenge: Halve the Elements of the Array Here is a coding challenge to test your understanding of arrays and slices. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/7n3Nw8VQ8jG). Arrays, Characters and Strings - Characters: Types and Literals In this lesson, we see character types and literals. Furthermore, we will explore control characters and the use of single quotes and backslash in D. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/RL4E4Lp3WxO). Arrays, Characters and Strings - Characters: The std.uni Module In this lesson, we explore the functions of the std.uni module. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/Y5kwzx89NvA). Arrays, Characters and Strings - Characters: D's Unicode Problems and Support In this lesson, we explore problems with reading D's Unicode characters and D's Unicode support. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/mypyjPqAolG). Arrays, Characters and Strings - Strings This lesson explains strings, its types and different functions that can be performed on strings. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/x1RJmrzNo9z). Formatted Output and Input - Format Specifiers: Format_Character This lesson explains the format_character, which is a part of formatted output. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/N7GRJlXQXoz). Arrays, Characters and Strings - Solution: Print Part of a String This lesson provides a solution to the challenge: print part of a string. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/m7OoVjqL7g9). File Handling in D - Files In this lesson, we will cover reading from and writing to files. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/R1D1BnzoJDL). File Handling in D - Challenge: Write the Contents of a File to Another File Here is a simple coding challenge based on the concepts of file handling. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/RL8R3lnjn4R). File Handling in D - Redirecting the Standard Input and Output Streams In this lesson, we will learn how the standard inputs and outputs of programs can be redirected to files or piped to other programs. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/mEmyPYnqrjG). Literals and enum - Challenge: Fix the Code Here is a coding challenge based on integer and floating point literals. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/x1RwEkBLooP). File Handling in D - std.stdio.File struct This lesson teaches how to use the file struct from the std.stdio module. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/JYOy7KVq4ZP). File Handling in D - Solution: Write the Contents of a File to Another File This lesson provides a solution to the challenge given in the previous lesson. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/qAo55AgxX3p). Variables and User Input - Quiz Here is a short quiz to test your basic understanding of the concepts explained in this chapter. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/7Apv8LmjQy8). Getting Started With D - Challenge: Fix the Code This lesson presents a challenge to test the concepts covered so far in this chapter. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/g2Wy12wrmJl). Variables and User Input - Reading from the Standard Input This lesson explains the working of stdout and stdin in more detail and provides a common spacing problem regarding readf. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/qV5Mq1NLEp3). File Handling in D - Quiz Here is a quiz to test your knowledge of file handling in D. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/m700vM7O6AR). Literals and enum - Integer and Floating Point Literals This lesson will cover integer and floating point literals and their syntax rules. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/N8xlK5XDp6v). Literals and enum - Character and string Literals This lesson explains character and string literals, how they are used and what their types are. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/xoEYLwJxALP). Literals and enum - Solution: Fix the Code This lesson provides a solutions to the challenge given in the previous lesson. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/N7MAkXOgOO2). Getting Started With D - Compilation of D Code This lesson teaches us the process of code compilation and the job of a compiler. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/R1Nzn4QP21q). Formatted Output and Input - Formatted Output This lesson discusses features of the std.format module, which is a module inside Phobos, a standard library of D. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/7D59q3YZnqQ). Literals and enum - enum This lesson explains enum, its use and properties. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/YVGzpm8xX30). Literals and enum - Quiz Here is a quiz to test your knowledge of literals and enums. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/gxqJEAQzKBr). Variables and User Input - Challenge: Output Variable Values in a Statement Here is a challenge to test the concepts related to variables. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/gxW9YJ87LZ3). Formatted Output and Input - Format Specifiers: Positional Parameters and Format This lesson explains how to position parameters in format specifiers, followed by a discussion of the `format()` function of the `std.string` module. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/x1ABWYg5Yv9). Variables and User Input - Standard Input and Output Streams This lesson explains standard input and output streams in general. Then we will see how character streams are used for input and output purposes. Finally, we will explore the usage of input and output streams in D language View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/mynEENDPy8n). foreach Loop and switch-case Statement - Quiz Here is a quiz to test your knowledge of the concepts covered in this chapter. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/N879Z1pOqlN). Formatted Output and Input - Formatted Input This lesson explains how the format of data can be specified at the time of input. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/JYnQ5xkzLLv). Functions - Introduction This lesson will teach you about the importance of functions and how they are implemented in D. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/gxBkYpgQxXj). Formatted Output and Input - Solution: Print the Number of the Month from a Given Date This lesson provides a solution to the challenge given in the previous lesson. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/JPrZDL6QpJD). Formatted Output and Input - Quiz Here is a quiz to test your knowledge of formatted output and input. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/NEj2NRZ39A2). foreach Loop and switch-case Statement - foreach Loop This lesson explains the foreach loop and how it is used with different data structures in D. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/g2WE8r8nxMk). foreach Loop and switch-case Statement - Challenge: Build a Calculator Application In this lesson, you will learn to build a simple calculator using switch and case statements. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/3YkQ2v4oJ7Q). foreach Loop and switch-case Statement - foreach Loop Properties This lesson explains the different properties of foreach loop. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/xl7j1m9V35P). foreach Loop and switch-case Statement - Challenge: Swap Keys with Values of an Associative Array Here is a coding challenge to test your knowledge of foreach loop and associative arrays. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/N7z1llE4WRL). foreach Loop and switch-case Statement - Solution: Swap Keys with Values of an Associative Array This lesson provides a solution to the challenge given in the previous lesson. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/m7PP53wmpMp). foreach Loop and switch-case Statement - switch and case This lesson introduces switch and case statements, how and when they are used and the implementation of the final switch statement. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/qVlDMKLY9Qr). foreach Loop and switch-case Statement - Solution: Build a Calculator Application This lesson provides a solution to the challenge given in the previous lesson. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/JQJRwPX5K0v). Getting Started With D - The Hello World Program This lesson acquaints you with the Hello World program and gives a basic introduction to D. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/g2DZPlPMqN9). Arithmetic and Logical Operations on Data Types - Logical Expressions This lesson covers a particular type of expression that is used in conditional statements. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/RLlLg7GNl9V). Arithmetic and Logical Operations on Data Types - Solution: Find Remainder and Quotient of an Integer This lesson presents a solution to the coding challenge given in the previous lesson. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/qA30Pwj4OZ0). Arithmetic and Logical Operations on Data Types - Floating Point Types Usage and Limitations In this lesson, you will learn how to choose an appropriate type of the floating point and some limitations of these types. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/3YYjWZ0PB0O). Arithmetic and Logical Operations on Data Types - Solution: Fix the Code In this lesson, we will see how the code given in the previous lesson can be fixed to give the right output in every use case. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/NE9E5l5oWo2). Conditional Statements and Loops - Challenge: Fix the Code Here is a challenge to highlight the importance of the scope of conditional expressions in a code. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/g2MA63YLGM9). Arithmetic and Logical Operations on Data Types - Basic Arithmetic Operations on Integers This lesson digs into the basic arithmetic operations on integers. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/YMzL8LpOnGn). Arithmetic and Logical Operations on Data Types - Challenge: Find Remainder and Quotient of an Integer This lesson presents a coding challenge related to the implementation of arithmetic operations on integers. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/JYnkgDlDJoD). Arrays, Characters and Strings - Operations on All Elements In this lesson, we will see operations on all elements of an array. This feature is for both fixed-length arrays and slices. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/m7kg3yKr2J9). Formatted Output and Input - Format Specifiers: Formatted Element Output This lesson explores the formatted element output part of the format specifiers. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/B14RpP9Jo0N). Formatted Output and Input - Challenge: Print the Number of the Month from a Given Date This coding challenge is based on the concept of formatted input. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/m7VmwozEMO3). Arithmetic and Logical Operations on Data Types - Advanced Arithmetic Operations on Integers This lesson is a continuation of the previous lesson, and it explores some advanced arithmetic operations that we can perform with integers in D. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/N8LKlX9nA2D). Arithmetic and Logical Operations on Data Types - Overflow and Truncation in Floating Point Types This lesson explains how overflow and truncation affects floating point types. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/YM1WvwRxZ7n). Arrays, Characters and Strings - Challenge: Sort and Reverse Elements of an Array Here is a coding challenge to test the concepts related to arrays and basic operations on arrays. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/qA4ky4nZR9y). Arrays, Characters and Strings - Multi-dimensional Arrays In this lesson, we discuss multi-dimensional arrays. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/gxn8zM6wj5r). Arrays, Characters and Strings - Solution: Halve the Elements of the Array Here is a solution to the coding challenge given in the previous lesson. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/N0P071JKx7N). Arrays, Characters and Strings - String Length, Literals and Comparison In this lesson, we will discuss potentially confusing length of strings, string literals and comparisons of strings. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/mEkM2l8y3Pr). Arrays, Characters and Strings - Challenge: Print Part of a String This lesson presents a coding challenge based on string manipulation in D. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/YQpzY3jgOx2). Formatted Output and Input - Solution: Convert a Floating Point Value into a Percentage Value This lesson provides a solution to the challenge given in the previous lesson. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/m2jrYMBVNAR). Arithmetic and Logical Operations on Data Types - Integers This lesson explains fundamental arithmetic operations in general and provides background knowledge related to the integer data type. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/JEvV22M0Awv). Arrays, Characters and Strings - Arrays In this lesson, we will discuss arrays, how arrays are declared and how data is accessed in an array. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/JPqBL1lZ2VP). Arrays, Characters and Strings - Characters: Introduction In this lesson, we see a brief history of characters and different unicode encodings of characters. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/3YMqRKLX9o9). Arrays, Characters and Strings - Quiz Here is a quiz based on the concepts covered in this chapter. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/qZXJOynONgk). Arrays, Characters and Strings - Solution: Sort and Reverse Elements of an Array This lesson provides a solution to the challenge given in the previous lesson. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/Y54Wq20QkRW). Formatted Output and Input - Challenge: Convert a Floating Point Value into a Percentage Value Here is a coding challenge to test your knowledge of formatted output. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/JEYDYwLxoRv). Formatted Output and Input - Format Specifiers: Width, Separator, Precision and Flags This lesson explains four more parts of the format specifier: width, separator, precision and flags. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/q2XK4Kw5n3p). Functions - Solution: displayMenu() Function This lesson provides a solution to the coding challenge given in the previous lesson. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/JYWgK8y5Bxg). Value Types and Reference Types - Reference Variables This lesson explains some terminology used with reference variables and the use of the ref keyword. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/7AQ8pRlw0PO). Functions - How Functions Work? This lesson helps us understand how a function works i.e., how a function is called, how it performs the task and how it returns the result. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/myJMpV1VRPr). Functions - Challenge: displayMenu() Function Here is a coding challenge based on the use of functions. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/RLo8NqDE4LY). Functions - Improved Code Quality This lesson explains how the use of functions improves the code quality. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/qZ9lj3VN3rp). Functions - Quiz Here is a quiz to test your knowledge of the use of functions in D. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/NEyRjlKmR6K). Immutability - Immutability This lesson explains the concept of immutability and immutable variables. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/3YzAmm0P6Jn). Immutability - Quiz Here is a quiz on the concepts of immutability in D. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/mE33BAV9yvG). Immutability - Immutable Parameters This lesson explains how immutability can be achieved in the functions having immutable parameters. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/3YlOjLK7qjp). Value Types and Reference Types - Value Types vs Reference Types In this lesson we will see how D's arrays and slices behave with value type and reference type. Furthermore, we will perform an experiment to apply == operator to different types. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/qVDgZDQo873). Value Types and Reference Types - Quiz Here is a quiz to test your understanding of value types and reference types. View the lesson [here](https://www.educative.io/courses/programming-in-d-ultimate-guide/B1YDE9GlYZY).
About the Programming in D: The Ultimate Guide for Software Engineers (Ali Çehreli) category [Programming in D: The Ultimate Guide for Software Engineers (Ali Çehreli)] (1)