VisualWorks

редактировать

VisualWorks - это кроссплатформенная реализация языка Smalltalk. Он реализован как система разработки, основанная на «образах», которые представляют собой динамические коллекции программных объектов, каждый из которых содержится в образе системы.

Происхождение VisualWorks восходит к первой реализации Smalltalk-80 от Xerox PARC. В конце 1980-х группа разработчиков Smalltalk-80 выделилась для дальнейшего развития Smalltalk-80 как коммерческого продукта. Коммерческий продукт сначала назывался ObjectWorks, а затем VisualWorks. 31 августа 1999 г. продукт VisualWorks был продан Cincom. VisualWorks работает под управлением многих операционных систем, включая Windows, Mac OS X, Linux и несколько версий Unix.

VisualWorks имеет очень активную Сообщество сторонних разработчиков, некоммерческая версия доступна бесплатно. Некоммерческая версия обладает всеми возможностями и функциональностью коммерческой версии. В обеих версиях, как и во всех Smalltalks, пользователь может видеть весь исходный код. Сюда входят все системные классы, включая браузер и построитель графического интерфейса.

VisualWorks поддерживает кроссплатформенные проекты разработки благодаря своим встроенным многоплатформенным функциям. Например, приложение GUI нужно разработать только один раз, а затем его можно переключить на разные стили виджетов. Приложение VisualWorks можно запускать на всех поддерживаемых платформах без каких-либо изменений. Только виртуальная машина зависит от платформы.

Содержание
  • 1 Преимущества и недостатки
  • 2 Установка
  • 3 Кнопки мыши и меню
  • 4 Формат файла
  • 5 Посылки
  • 6 Диспетчер отправлений
  • 7 Пакеты
  • 8 Загрузка библиотек кода
  • 9 Программа запуска VisualWorks
  • 10 Основы Smalltalk
  • 11 Просмотр и редактирование кода Smalltalk
  • 12 Необъявленные переменные
  • 13 Строка и файлы
  • 14 Учебники
  • 15 Ссылки
  • 16 Внешние ссылки
Преимущества и недостатки

VisualWorks позволяет очень быстро разрабатывать приложения, поскольку отдельные методы могут быть скомпилированы даже во время работы разрабатываемой программы. Компиляция метода Smalltalk обычно занимает значительно меньше секунды, в то время как выполнение того же для проекта C ++ часто занимает минуту или больше и не может быть выполнено легко без перезапуска процесса. Различные обозреватели кода VisualWorks помогают разработчику быстро найти интересующий класс или метод.

Производительность и пропускная способность программ Smalltalk могут приближаться к производительности статических языков, таких как C ++, Fortran, Pascal или Ada. с использованием оперативного компилятора путем генерации машинного кода, специализированного для часто используемых типов, но числовая обработка и программы, которые выигрывают от точного расположения памяти, могут по-прежнему работать медленнее. Генерационный сборщик мусора сводит к минимуму большинство пауз при сборке, но может не подходить для требований жесткого реального времени и детерминизма, так как может происходить длительная полная сборка, которая может остановить мир на порядок от десятков до сотен миллисекунд пропорционально размеру кучи. Однако сборка мусора предпочтительнее ручного управления памятью на объектно-ориентированном языке, и программист может выполнять различные действия, чтобы контролировать, когда и как долго происходит сборка мусора; поэтому в большинстве случаев сборка мусора не является проблемой.

Установка

Все компоненты системы VisualWorks устанавливаются в Windows 7 или более поздней версии в каталоге Program Files \ Cincom , названном в честь номера версии установленной системы - например, vw7.5nc. Этот каталог содержит несколько подкаталогов , включая bin, doc, examples и многие другие.

Кнопки и меню мыши

VisualWorks предполагает трехкнопочную мышь с кнопками, имеющими логические имена выбирает любой интерфейсный объект. вызывает меню операций для текущего просмотра / выбора. инициирует действия (переместить, закрыть...) в окнах VisualWorks.

Формат входящего файла

Формат входящего файла - это исходный формат Smalltalk для представления классов в виде текстовых файлов. Их можно «подать» в VisualWorks IDE для генерации любых классов, еще не содержащихся в образе Smalltalk . Каждый загружаемый документ обеспечивает простое текстовое представление класса или классов Smalltalk в текстовом файле с суффиксом .st. Он по-прежнему поддерживается в VisualWorks, но был заменен механизмом Parcels. В подкаталоге examples есть примеры в формате файла.

Посылки

Посылки - это внешние файловые представления пакетов.

Браузер примеров предоставляется как часть каталога примеров. Доступны несколько переключателей уровня изображения, чтобы указать загрузку участка при запуске изображения. Путь к участку - это список каталогов, в которых VisualWorks ищет участки. Это можно установить с помощью инструмента «Системные настройки».

Parcels предоставляет VisualWorks. Пакеты и бандлы организуют код и моделируют содержимое посылок. Посылки создаются путем публикации пакетов / пакетов. Термин «компоненты» в сфере VisualWorks используется для обозначения участков, пакетов и бандлов, когда нет необходимости в конкретизации.

Организация кода посылки при загрузке определяется его созданием. Если он был создан путем публикации пакета, он загружается в тот же пакет. Если он создан из пакета, его можно перезагрузить как пакет или как один пакет.

Последовательность загрузки для пакета:

  1. Все необходимые компоненты загружены.
  2. Выполняется любое определенное действие перед загрузкой (например, инициализируются необъявленные переменные).
  3. Объекты в пакете установлены.
  4. Каждому классу в посылке отправляется сообщение postLoad: thePackage, и любое действие выполняется. Часто это запуск приложения.
Диспетчер отправлений

Диспетчер отправлений используется для загрузки и выгрузки всех отправлений на пути посылки. В представлении «Предложения» перечислены категории, содержащие ключевые дополнительные участки - выбрав категорию, вы получите список рекомендуемых участков. Например, UI Painter находится в категории Essentials. Существует также представление пути к участку в виде дерева каталогов для поиска участков за пределами представления предложений. В представлении «Загруженные» перечислены все участки, уже присутствующие в изображении. Можно просматривать только загруженные посылки.

Пакет поддерживаемого продукта VisualWorks представлен значком, который выглядит как пакет. Посылки от других продавцов выглядят как хозяйственный мешок. Из-за запутанной истории разработки классов Smalltalk это может быть очень полезно. Например, значок участка указывает на то, что теперь поддерживается VisualWorks.

Также можно программно загружать и выгружать посылки из приложения.

Пакеты

Когда посылка загружается, она организована как пакет или связка пакетов. При поиске кода, загруженного из посылки, можно найти пакет или пакет с тем же именем в браузере системы. Пакеты - это категории, которые объединяют классы в связанные группы в соответствии с компонентами. Пакеты можно сгруппировать в бандлы. Пакеты и бандлы могут быть сохранены (опубликованы) как посылки или сохранены в репозитории исходного кода.

Загрузка библиотек кода

Исходный образ содержит минимальные средства разработки с использованием базовых библиотек классов. Дополнительные библиотеки классов предоставляются VisualWorks или сторонними поставщиками, обычно в виде файлов пакетов. Для большинства сред разработки, отличных от Smalltalk, библиотеки кода импортируются во время компиляции с помощью команды include. В Smalltalk библиотеки кода загружаются в работающую систему и становятся частью среды. Например, загружается как посылка.

Средство запуска VisualWorks

Средство запуска VisualWorks, обычно называемое просто средством запуска, является центром управления для системы VisualWorks. Это стартовая площадка для всех основных инструментов.

Основы Smalltalk

Smalltalk - это чистый объектно-ориентированный язык программирования, что означает, что единственный способ добиться чего-то в Smalltalk - это посылать сообщения объектам. VisualWorks в качестве стандарта использует язык Smalltalk-80, но имеет собственный набор классов и методов. Таким образом, даже базовые классы, такие как Object, отличаются от классов других Smalltalk-80 IDE, таких как Squeak и Dolphin Smalltalk. Иллюстративные примеры здесь работают в VisualWorks Smalltalk, но могут не работать в других Smalltalks, поскольку классы и / или методы могут отличаться.

Просмотр и редактирование кода Smalltalk

В традиционных средах объектно-ориентированного программирования разработчик напрямую редактирует текстовый файл исходного кода, содержащий определения класса и метода. В VisualWorks, как и во всех Smalltalks, все является исполняемым объектом, включая классы. При просмотре классов Smalltalk разработчик черпает определения из выполняемых объектов. Основным обозревателем / редактором в VisualWorks является обозреватель системы. Это позволяет разработчику просматривать классы либо в общей иерархии классов, либо через их пакеты. Он запускается из средства запуска VisualWorks.

Панели списков в системном браузере позволяют разработчикам переходить к определениям классов и методов. Затем их можно просмотреть или отредактировать в представлении кода или изменить с помощью новых определений.

Необъявленные переменные

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

Строка и файлы

В первом руководстве Cincom по VisualWorks показано, как VisualWorks можно использовать для управления сервером файлами журналов. Он показывает, как такие вещи, как строки и файлы, могут быть легко включены в структуру объекта в VisualWorks. Рассмотрим Smalltalk выражение :

'ws000101.log' как Filename edit

. Это выражение можно оценить как есть в рабочем пространстве VisualWorks, используя одну команду в меню управления. Это создает:

  1. объект класса, содержащий строку (как байтов ) и методы для управления им;
  2. объект класса NTFS Имя файла (в Windows XP ); и
  3. объект редактора.

Последний представляет собой простой блокнот, -подобный редактор, содержащий содержимое файла. То есть оценка создала объект имени файла как шлюз к файлу ws000101.logи открыла для него редактор. Сам редактор является объектом, как и все его компоненты (вплоть до символов в его меню). Исходный код доступен для всех этих объектов, а VisualWorks имеет множество инспекторов, браузеров и других инструментов, позволяющих любому оценивать и проверять код в статическом или динамическом режиме.

Учебники

Для Cincom Smalltalk ежедневно создаются учебники, а также Учебник Seaside.

Ссылки
Внешние ссылки
Последняя правка сделана 2021-06-18 04:00:00
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте