Принципы объектно-ориентированного программирования

         

Размерные и ссылочные типы



Размерные и ссылочные типы

Концепция создания языка, где любая сущность является объектом, не нова. Такие попытки предпринимались, например, в SmallTalk. Самым большим недостатком представления всего в виде объектов всегда было снижение производительности. Так, если в SmallTalk попытаться сложить два значения типа double, при этом реально выделяется объект в куче. Нужно ли говорить, что выделение объекта лишь для суммирования двух чисел чрезвычайно малоэффективно.

Перед разработчиками CTS стояла задача создания системы типов, где любая сущность была бы объектом, но система типов при этом работала эффективно. Они решили эту задачу, разделив типы CTS на две категории: размерные (value types) и ссылочные (reference types). Как вы вскоре увидите, эти термины отражают способы выделения памяти и внутреннего функционирования переменных.



Содержание раздела