Ruby/Основные свойства Ruby: различия между версиями
< Ruby
Содержимое удалено Содержимое добавлено
YiFeiBot (обсуждение | вклад) м Перемещение 6 интервики на Викиданные, d:q19367049 |
Нет описания правки |
||
Строка 13: | Строка 13: | ||
* Переменные динамически [[w:Типизация|типизированы]]. |
* Переменные динамически [[w:Типизация|типизированы]]. |
||
* Простой и последовательный синтаксис. |
* Простой и последовательный синтаксис. |
||
* присутствует [[w:Сборка мусора|сборщик мусора]]. |
|||
* Автоматическое управление [[w:Оперативная память|оперативной памятью]]. |
|||
Объектно-ориентированное программирование: |
Объектно-ориентированное программирование: |
Версия от 19:53, 14 августа 2016
Основные свойства Ruby
Интерпретируемый язык:
- Возможность прямых системных вызовов.
- Мощная поддержка операций со строками и правилами (регулярными выражениями).
- Мгновенное проявление изменений во время разработки.
- Отсутствие стадии компиляции.
Простое и быстрое программирование:
- Не надо объявлять переменные.
- Переменные динамически типизированы.
- Простой и последовательный синтаксис.
- присутствует сборщик мусора.
Объектно-ориентированное программирование:
- Всё есть объект. Даже имя класса есть экземпляр класса
Class
. - Классы, методы, наследование, полиморфизм, инкапсуляция и так далее.
- Методы-одиночки.
- Примеси при помощи модулей (возможность расширить класс без наследования);
- Итераторы и замыкания.
- Широкие возможности метапрограммирования.
Удобства:
- Неограниченный диапазон значений целых чисел.
- Модель обработки исключений.
- Все операторы возвращают значения, даже управляющие структуры.
- Динамическая загрузка.
- Механизм перехвата исключений.
- Поддержка потоков; как собственных, так и систем семейства UNIX.
Недостатки:
- Неуправляемость некоторых процессов (таких, как выделение памяти), невозможность задания низкоуровневых структур данных или подпрограмм;
- Невозможность компиляции и сопутствующей ей оптимизации программы;
- Открытость исходного кода даже в готовой программе (есть средство упаковки исходного кода в .exe-файл под Windows);
- Следствие двух первых недостатков — весьма низкая скорость запуска и выполнения программ.