меры безопасности, чтобы успешно отражать угрозы со стороны
враждебных аплетов без ограничения свободы действий для "благо-
надежных" программ. К сожалению, предлагаемые решения зависят
от операционной платформы, что противоречит требованию абсолют-
ной переносимости Java-программ. Можно предположить, что инфор-
мационная безопасность еще долгое время будет оставаться одним
из самых сложным и спорных вопросов, касающихся проекта Java.
4.2.4. Java WorkShop
В конце марта 1996 года компания Sun Microsystems об®явила о
выпуске версии 1.0 среды разработки Java WorkShop. У этой среды
есть два замечательных свойства: она полностью написана на язы-
ке Java и имеет интерфейс, выдержанный в Web-стиле. На рис. y1
показан вид экрана при работе в Java WorkShop.
Рис. y1. Так выглядит экран при работе в Java WorkShop.
Следует отметить, что гипертекстовый интерфейс является, пожа-
луй, наиболее естественным для инструментальных сред. Более то-
го, неявно он давно используется, например, при переходе во
включаемый файл или в место ошибки. Принципиально важно, что
теперь гипертекст стал явной концептуальной основой.
Java WorkShop содержит полный набор инструментов, необходимых
для проектирования, разработки, тестирования, отладки и сопро-
вождения программ. В его состав входят:
- Менеджер проектов - инструмент организации информации, сос-
тавляющей проект, а также средство спецификации окружения для
проекта.
- Построитель - инструмент построения результирующих программ
проекта. Построитель ведает перекомпиляцией файлов после внесе-
ния изменений, выдачей гипертекстового списка сообщений об
ошибках и т.п.
- Публикатор - инструмент поддержки коллективной работы над
проектами. Позволяет организовать хранилище проектов, предос-
тавлять Web-страницы проектов для использования другими прог-
раммистами, осуществлять доступ к проектам коллег, задавать
права доступа к проектам.
- Просмотрщик аплетов - средство контролируемого выполнения
Java-программ.
- Просмотрщик исходных текстов - инструмент изучения программ с
учетом их об®ектной структуры.
- Редактор исходных текстов. Редактор интегрирован с другими
компонентами Java WorkShop, а также с популярными системами уп-
равления версиями.
- Отладчик. Помимо традиционных возможностей, отладчик Java
WorkShop позволяет контролировать состояние нескольких потоков
выполнения, что необходимо для развитых Java-программ. На рис
y2 представлен образ экрана при работе в отладчике.
Рис. y2. Так выглядит экран при работе с отладчиком Java
WorkShop.
- Справочная подсистема.
Java WorkShop может работать как на платформе SPAъC/Solaris и
Intel/Solaris, так и под Microsoft Windows 95/NT. Каких-то осо-
бых требований к аппаратуре Java WorkShop не пред®являет. Дос-
таточно 45 Мб дискового пространства, 32 (для Solaris) или 16
(для Windows) Мб оперативной памяти.
Замечательно, как в правильно спроектированной системе различ-
ные компоненты не просто идеально подходят друг к другу но и
усиливают мощь друг друга.
* 4.3. Связь Java с окружением: оконный инструментарий
4.3.1. Общие положения
Одно из важных достоинств Java состоит в том, что это не только
язык, но и стандартизованная об®ектно-ориентированная среда вы-
полнения. Любопытно проследить, как в рамках Java решаются тра-
диционные программистские проблемы. Мы остановимся на оконном
графическом интерфейсе.
Вместе с различными приятными (главным образом для пользовате-
ля) свойствами, оконный интерфейс привносит и довольно неприят-
ные (для разработчика) проблемы. Одна из них - это переноси-
мость приложений между разными платформами. Переносимость явля-
ется проблемой и без графического интерфейса, однако наличие
такового делает ее многократно сложнее.
Дело в том, что каждая оконная среда - это сложный мир, со сво-
ими законами, набором строительных блоков и приемов программи-
рования. Motif не похож на MS-Windows и оконную систему
Macintosh. По-разному представляются примитивные элементы ин-
терфейса, по-разному обрабатываются внешние события, по-разному
происжодит рисование на экране и т.д.
Вместе с тем, по своей сути оконная среда - просто идеальное
поле деятельности для об®ектного программирования. Даже челове-
ку, неискушенному в об®ектно-ориентированных методах проектиро-
вания, ясно, что такие вещи, как кнопки, текстовые поля, меню,
Читать дальше