- •Предисловие
- •Структура классического Смолтока
- •Основные определения и термины
- •Метаклассы
- •Посылка сообщений
- •Определение объектов
- •Типы сообщений и их приоритеты
- •Блоки
- •Переменные
- •Методы и примитивные методы
- •Соглашения о форматировании кода
- •Контрольные вопросы
- •Прогулка по VisualWorks
- •Настройка среды
- •Разработка простого приложения
- •Сохранение созданного кода
- •Создание автономного приложения
- •Выход из среды
- •Контрольные вопросы
- •Пространства имён
- •Особенности введения пространств имён
- •Пространство имён и его содержимое
- •Ссылка на объекты и импорт
- •Особенности импорта
- •Разделяемые переменные VisualWorks 7.4.1
- •Пакеты и парселы
- •Пакеты и связки пакетов
- •Парселы
- •Контрольные вопросы
- •Основные инструменты
- •Рабочее окно
- •Администратор парселов
- •Браузер файлов
- •Контрольные вопросы
- •Cистемный браузер
- •Панели системного браузера
- •Управление пакетами
- •Управление связками пакетов
- •Управление парселами
- •Определение пространства имён
- •Определение класса
- •Определение переменной класса
- •Определение переменных в пространстве имён
- •Работа с экземплярами
- •Определение метода
- •Контрольные вопросы
- •Отладка кода
- •Oкно уведомлений
- •Oкно отладки кода
- •Программные зонды
- •Работа с зондами через браузер
- •Зонды на уровне класса
- •Установка временных зондов в отладчике
- •Исключения и их обработка
- •Классы исключений
- •Обработка исключений
- •Оповещение о возникновении исключения
- •Среда исключений процесса
- •Явный выход из обработчика
- •Преобразование исключений
- •Развертывание защиты
- •Поставка приложения
- •Выбор стратегии поставки
- •Подготовка к поставке приложения
- •Создание поставляемого образа
- •Контрольные вопросы
- •Литература
- •Список иллюстраций
5.3. Браузер файлов |
73 |
Чтобы просмотреть парсел, который уже загружен в образ, следует его выбрать и воспользоваться командой Browse из меню операций или ставшей доступной кнопкой просмотра парсела в панели инструментов, открывая браузер системы на этом парселе.
В окне администратора парселов используются специальные значки, позволяющие отличить парселы от других программ:
«Полный перевязанный мешок» — родные парселы, загруженные в среду.
«Полная сумка c ручками» — парселы других производителей, загруженные в среду.
«Пустой перевязанный мешок» — родные парселы, незагруженные в среду.
«Пустая сумка c ручками» — парселы других производителей, незагруженные в среду.
В дополнение к использованию инструмента Parcel Manager загрузку и вызрузку парселов можно производить программно, что позволяет выполнять загрузку и выгрузку парселов приложением (см. раздел 4.2).
Некоторая часть возможностей по работе с парселами представлена
всистемном браузере (см. главу 6).
5.3.Браузер файлов
Инструмент File Browser (Браузер файлов) позволяет перемещаться по файловой системе, просматривать и выбирать каталоги и файлы. Он обычно используется для поиска файлов с расширением к *.st, их загрузки в среду командой File In. . . , а так же для редактирования простых текстовых файлов.
Чтобы открыть окно браузера файлов, следует выбрать команду меню File → File Browser или щелкнуть на соответствующей иконке в панели инструментов основного окна.
Когда в левой панели браузера выбирается каталог, в верхней панели справа отображаются содержащиеся в нем файлы. Когда выбирается файл, в правой нижней панели отображается его содержание. Правая нижняя панель позволяет просматривать файлы разных форматов (надо только воспользоваться соответствующей страницей). Здесь можно просматривать файлы смолтоковского кода (.st), парселы, файлы исходного текста парселов, файлы исходного текста в формате XML.
74 |
Глава 5. Основные инструменты |
Рис. 5.3: Окно браузера файлов.
5.4. Инспекторы
Инспектор позволяет исследовать (инспектировать) любой объект, просматривая составляющие его объекты, значения его переменных экземпляра. Инспектор включает несколько дополнительных инструментов для редактирования, а также разнообразные команды, позволяющие выполнять многочисленные операции над объектом, не открывая других инструментов системы. Традиционное окно инспектора имеет две панели. Левая панель на странице Basic отображает переменные объекта. Когда в ней выбирается переменная, её значение отображается в правой панели.
Можно инспектировать любой компонент объекта, выбирая его в левой панели и выбирая в всплывающем меню <Operate> данной панели команду Dive, которая отобразит выбранный объект в текущем окне инспектора. Чтобы вернуться назад, надо в меню <Operate> выбрать команду Back или щелкнуть на кнопке со стрелкой влево в панели инструментов инспектора, которая стала активной. Чтобы открыть новое окна инспектора на компоненте объекта, следует его выбрать и выбрать команду Object → Inspect.
Для некоторых объектов, основное окно может отображать дополнительные сущности, которые не являются его переменными экземпляра.
5.4. Инспекторы |
75 |
Рис. 5.4: Окно инспектора на скомпилированном методе.
При инспектировании откомпилированного метода (см. рис. 5.4)
Object compiledMethodAt: #printString) inspect
левая панель окна включает строки -bytecode, -decompiled, -source. Они не являются частями объекта (его, переменными), но включены в окно инспектора, как "виртуальные" атрибуты, точно так же, как и элемент self, представляющий непосредственно сам объект в любом окне инспектора.
На элементах можно выполнять операцию «перетащить-и-опустить». Если выбрать одну переменную и переместить (при нажатой кнопке выбора) её поверх другой, то значение первой будет назначено целевой переменной.
Инспекторы для наборов
Специализированные инспекторы для словарей и других наборов обеспечивают расширенные возможности просмотра. Например, в дополнение к операции «перетащить—и—опустить» в нём можно переупорядочить элементы набора: выбрать элемент, перетащить его между двумя другими элементами и опустить.
Если открыть окно инспектора на наборе, определяемом выражением
(OrderedCollection with: 1 with: 2 with: 3 with: 4) inspect
то откроется окно инспектора, в котором первая списковая панель будет иметь не две, а три страницы (см. рисунки 5.4, 5.5). Страница Elements
76 |
Глава 5. Основные инструменты |
Рис. 5.5: Окно инспектора на наборе.
позволяет инспектировать только элементы набора. Страница Basic — окно стандартного инспектора, которое открывается при посылке набору сообщения basicInspect.
В правой панели окна инспектора изменение значения можно производить, просто вводя нового значения или выполняя смолтоковское выражение. Чтобы установить значение переменной посредством выполнения выражения, его надо ввести в правой панели, а затем выбрать в меню <Operate> панели команду Accept, которая выполнит выражение и назначит возвращаемое значение переменной в окне инспектора. В этом отношении правая панель подобна рабочему окну. Переменная используется в пределах окружения окна просмотра кода.
Введенное в правой панели инспектора выражение теряется после выполнения, или после выбора в левой панели другой переменной. Но есть возможность выполнить код и сохранить выражение, которое было введено. Для этого надо открыть панель выполнения выражений, выбирая команду меню инспектора Tools → Evaluator Pane или щелкая на иконке инструмента Evaluator Pane в панели инструментов (последней иконке). Панель окна для выполнения выражений откроется
внизу окна инспектора.
Данная панель работает во многом подобно рабочему окну. Однако, выполняемый контекст — объект в окне инспектора. Соответственно,