Welcome to yet another exciting article on C#. In the previous article, we discussed different types of Streams along with their usage. In this article, I am going to cover the concepts of scope and boxing in C#.
Every software application consists of three major parts, an input unit, a processing unit, and an output unit. The software can take input from a keyboard, socket, network, file, memory object, etc. Similarly, applications can output processed results to devices such as a monitor screen, a file, socket or network. From the input-process-output cycle above, it is safely assumed that software needs to receive data at one point and send data to the other. Streams allow developers to perform this point to point communication in C# .NET.
One of the major tasks of a computer program is to process a collection of data. Be it in the form of a collection of records that are to be stored in the database or collection of bytes to be received over some network. Consider a scenario where you have to store records of all the items sold in a day. The items sold can be in the thousands. In such scenarios, it is not appropriate to create a thousand string type variables to store the names of the sold items. Rather a collection that can hold a thousand records is more suitable.
When you run your C# application, your OS loads application code as well as application related data into system memory and executes operations defined by your application code. The application data remains in the memory of the system as long as your application is running. As soon as you close your application, your application data is wiped out of your memory.
Welcome to yet another exciting tutorial on C#. We have covered most of the basic concepts. Now it’s the time to move towards more advanced concepts. This article provides a brief introduction to classes in C#. However, before diving into to classes, we first need to understand what object oriented programming is.