Редактирование: Языки программирования, 07 лекция (от 26 сентября)
Материал из eSyr's wiki.
Внимание: Вы не представились системе. Ваш IP-адрес будет записан в историю изменений этой страницы.
Правка может быть отменена. Пожалуйста, просмотрите сравнение версий, чтобы убедиться, что это именно те изменения, которые вас интересуют, и нажмите «Записать страницу», чтобы изменения вступили в силу.
Текущая версия | Ваш текст | ||
Строка 32: | Строка 32: | ||
Результат - полный хаос кодировок, с которыми приходится мириться для обратной совместимости и по сей день. | Результат - полный хаос кодировок, с которыми приходится мириться для обратной совместимости и по сей день. | ||
- | ====Дальнейшие развитие==== | + | ====Дальнейшие развитие==== |
[[1980-е]] ознаменовались огромным экономическим подъемом Японии. Тогда-то и встал острый вопрос о кодировании их языка. Родилась новая концепция. | [[1980-е]] ознаменовались огромным экономическим подъемом Японии. Тогда-то и встал острый вопрос о кодировании их языка. Родилась новая концепция. | ||
Строка 84: | Строка 84: | ||
Порядковые типы данных (также называются ограниченными) бывают двух видов: | Порядковые типы данных (также называются ограниченными) бывают двух видов: | ||
*перечислимые типы (будут рассмотрены в этой лекции) | *перечислимые типы (будут рассмотрены в этой лекции) | ||
- | * | + | *диапозоны (будут рассмотрены в [[Языки программирования, 08 лекция (от 28 сентября)|следующей]] лекции) |
====Перечислимые типы==== | ====Перечислимые типы==== | ||
Строка 99: | Строка 99: | ||
('''Pascal''') | ('''Pascal''') | ||
v = pred(v); | v = pred(v); | ||
- | v = | + | v = suxx(v); |
* Преобразование в целый тип и обратно | * Преобразование в целый тип и обратно | ||
Строка 110: | Строка 110: | ||
В [[Ada]] реализовано как статическое, так и квазистатическое преобразование. | В [[Ada]] реализовано как статическое, так и квазистатическое преобразование. | ||
- | + | Перечеслимые типы появились впервые ''вроде бы'' в [[Pascal]]. После этого так или иначе реализовано почти во всех языках. В том числе и в [[C]]. | |
('''C''') | ('''C''') | ||
Строка 175: | Строка 175: | ||
* В [[Ada]] эти конфликты просто разрешили, что тоже до добра не доводит. | * В [[Ada]] эти конфликты просто разрешили, что тоже до добра не доводит. | ||
- | Помимо конфликта имен есть еще один | + | Помимо конфликта имен есть еще один сурьезный минус: перечислимый тип наследуется, но не расширяется, что не соответствует концепции ООП. |
('''С++''') | ('''С++''') | ||
Строка 184: | Строка 184: | ||
} | } | ||
- | Поэтому в [[Java]] перечислимого типа нет. | + | Поэтому в [[Java]] перечислимого типа нет. Но в [[C#]] от него не отказались. Более того, придумали замечательную аргументацию, зачем же он нужен. В современном программировании язык и среда разработки бывают тесно связаны. '''Компонентный подход''', при котором на формочку размещают кнопочки, выбирают в меню их свойства и автоматически генерят большую часть кода, весьма популярен. |
- | + | ||
('''параметры среды разработки''') | ('''параметры среды разработки''') |