Внутренняя реализация скрывается за сигнатурой типа, а сами типы и помогают избежать таких вот несовместимых операций как сложение веса с возрастом, хоть они и могут иметь одинаковое внутренее представление (int например).
пятница, 31 августа 2012 г. пользователь Alexey Shrub писал: > 31.08.2012 14:09, Андрей П. Ковбович пишет: > >> 31 августа 2012 г., 11:46 пользователь Alexey Shrub <[email protected]> >> написал: >> >>> Думаю типы должны отражать некие различные сущности, а кодировка это >>> детали >>> реализации, тип тот же - строка. >>> >> >> А как же абстракция данных? Вы типом (абстрактным) и скрываете эти >> детали реализации. К тому же не во всех языках строковый тип является >> встроенным. >> > > По большому счёту вообще не должно быть строк в разных кодировках, всё > приходящее извне должно приходить в известной кодировке и преобразовываться > в нужный вид, в идеале автоматом. > > Давайте приведу другой пример, есть тип "возраст", его нельзя складывать с > типом "вес", но никакого значения не имеет как эти типы устроены внутри, > хранится ли это в виде целого, вещественного или строки не важно - типы это > более высокий уровень абстракции, а уже задача языка обеспечить единобразие > внутреннего формата или преобразовывать между ними > > -- > Alexey Shrub > -- > Moscow.pm mailing list > [email protected] | http://moscow.pm.org >
-- Moscow.pm mailing list [email protected] | http://moscow.pm.org
