![]() |
|
сделать стартовой | добавить в избранное |
![]() |
Система программирования squeak smalltalk –новый этап развития языка программирования смолток |
Система программирования squeak small alk –новый этап развития языка программирования смолток Щербаков С.В. Стремительный рост возможностей современных персональных компьютеров сопровождается рядом противоречивых тенденций в развитии и освоении создаваемого для них программного обеспечения. С одной стороны, возросшие возможности ПЭВМ обеспечивают большие удобства конечному пользователю персонального компьютера. С другой стороны, прогрессивно возрастающая сложность систем и средств программирования является причиной увеличения стоимости создаваемого программного продукта, росту числа программистов и т.д. Например, возникновение объектной парадигмы, призванной облегчить и унифицировать деятельность программиста, привело к появлению обширных и конкурирующих между собой библиотек, как правило, ориентированных на конкретную операционную систему и на конкретный персональный компьютер. Ответной реакцией на вышеописанную ситуацию является возрастающая популярность универсального языка программирования JAVA, ориентированного на создание Интернет-приложений. В этой ситуации возникает проблема поиска такой системы программирования, которая удовлетворяла бы следующим условиям: - концептуальная простота и ясность; - переносимость; - наличие богатой библиотеки объектов и развитые возможности наследования; - приемлемая стоимость (для нашей страны проблема стоимости программного обеспечения весьма специфична). Одним из кандидатов на такую роль является система программирования Small alk. Как известно, язык программирования Small alk - одна из первых объектно-ориентированных систем программирования в мире . Созданный в рамках проекта PARC и основанный на новаторских для того времени идеях (многооконный интерфейс, широкое использование растровой графики, браусер классов и т.д.), он не получил широкого распространения, так как требовал значительных по меркам прошлого машинных ресурсов. Принципы, заложенные в основу первой коммерческой реализации Смолтока – Small alk Objec -Works, – стали общепринятыми. Так, интерфейс системы Смолток был положен в основу операционной системы персонального компьютера Maci osch и затем Wi dows, а концепция ООП стала ведущей при разработке современных средств программирования. Так, любопытно отметить, что одним из аргументов в судебном процессе фирмы Apple против корпорации Microsof по вопросу о плагиате в процессе разработки интерфейса системы Wi dows являлось указание на исторический приоритет интерфейса системы Смолток. Хотя Смолток, по замыслу его первого идеолога и разработчика А.Кэя, должен был быть доступным даже детям, он оказался достаточно сложным. Дело в том, что Смолток, будучи чистой объектно-ориентированной системой, представляет собой обширную библиотеку объектов и их классов в отличие от самых популярных систем типа С и Delphi, являющихся объектно-ориентированными расширениями классических алгоритмических языков – Си и Паскаль. Для программиста переход, скажем, с обычного Паскаля на Delphi происходит относительно легко, так как первое время возможно использование традиционных сугубо алгоритмических средств.
Смолток для создания даже скромного приложения требует знания десятка классов. Другая немаловажная причина малой распространенности этого языка в нашей стране – высокая стоимость. Ведущие разработчики Смолтока – корпорации Objec Share и IBM - поделили между собой рынок коммерческих реализаций, цена которых порою превышает тысячу долларов. Последнее десятилетие XX века – период неуклонного распространения Смолтока по всему миру. Появляется A SI-стандарт языка Смолток, к концу этого тысячелетия насчитывается около десятка версий Смолтока. В 1997 г. в трудах OOPSLA было опубликовано описание новой системы программирования – Squeak Small alk. По замыслу авторов проекта, а в их число входят создатели Смолтока Д.Инголлс и А.Кей, система Squeak Small alk распространяется свободно по сети Интернет и предназначена для пропаганды Смолтока и конкуренции с языком Java. Создатели проекта Squeak ушли назад в том смысле, что при разработке системы основывались на неписаном стандарте – Смолток-80, впервые описанном в классической монографии, так называемой “Голубой книге” . Так как Squeak Small alk распространяется без официальной документации, то “Голубая книга” оказалась стандартом де-факто для ее многочисленных пользователей. В то же время разработчики системы указывают на ряд отличительных свойств разрабатываемой ими системы, а именно: независимость от платформы, мультимедийная поддержка, возможность разработки Интернет-приложений, автоматическая генерация программного Си-кода, эффективная сборка мусора и ряд других. Как и другие реализации Смолтока, Squeak Small alk состоит из машиннонезависимого виртуального образа (VI) и виртуальной машины (VM), представляющей собой интерпретатор с набором машинно-зависимых примитив. Все изменения, вносимые в систему, хранятся в виртуальном образе – файле текстового формата. Squeak быстро развивается, так как является продуктом коллективной разработки международного сообщества “Squeak commu i y”. Организационный центр сообщества Squeak находится по адресу: squeak. org. Смолток основан всего на четырех понятиях (объект, класс, сообщение и наследование) и представляет собой систему иерархически организованных объектов и их классов. Управление объектами осуществляется с помощью адресованных к ним сообщений. Приложение в Смолтоке представляет собой класс, в свою очередь, являющийся подклассом какого-либо родового класса . Неотъемлемыми элементами интерфейса системы являются рабочие окна и браусеры. Отдельные директивы или фрагменты программного кода выполняются из любого текстового окна или текстовой рамки браусера. Браусер классов предоставляет возможности выбора классов и сообщений к ним, а также редактирования протоколов классов системы. Принципиальной особенностью Смолтока является его открытость. За исключением машиннозависимых примитив, Смолток написан на самом себе. В частности, проект Squeak открыт для коллективной разработки и к участию в нем приглашаются все желающие. Следует отметить, что основой построения программного интерфейса в классическом Смолтоке-80 является так называемая MVC-парадигма.
Суть этой парадигмы состоит в разделении программируемого приложения на три основных компонента: модель, или прикладная задача, в которой реализованы алгоритмы обработки информации; вид, или интерактивная многооконная система, представляющая собой интерфейс приложения; контроллер, выполняющий функции посредника между пользователем и моделью . Помимо MVC-парадигмы в системе Squeak используется иерархия классов Morphic, заимствованная из языка Self и предложенная одним из основных разработчиков системы Джоном Малони. Экземпляры класса Morph являются визуальными рамками прямоугольной формы, на которых размещаются элементы интерфейса. Они способны к выводу графической и текстовой информации и к анимации. Браусер классов – не единственный способ разработки приложений в системе Squeak Small alk. В настоящее время идет активная разработка среды визуального программирования. Так, если щелкнуть левой кнопкой мыши при нажатой клавише Al на окно приложения, то вызывается так называемое гало - меню среды визуального программирования системы Squeak Small alk. Одним из достоинств системы Squeak Small alk являются возможности перенастройки системы и поддержка языка Си. При использовании компьютера со скромными ресурсами для повышения быстродействия приложения существует возможность перевода программного кода на язык Си с последующей компиляцией с помощью транслятора Си. Объем памяти, необходимый для функционирования системы, существенно уменьшается (вплоть до 2 мегабайт), правда, за счет уменьшения возможностей системы. Воплощая в жизнь идеи А.Кэя и устраняя недостатки системы Смолток-80, разработчики Squeak Small alk реализовали процедуры обработки звуковой и образной информации. Так, классы Bi Bl и WarpBl обеспечивают операции по вращению и изменению размеров графических объектов. Обработка звука в реальном времени основана на быстрых преобразованиях Фурье (классы FF и Abs rac Sou d). Кроме того, в процессе конкуренции с системой Java авторы Squeak предусмотрели поддержку H P/F P протоколов сети Интернет и CP/IP протоколов локальных сетей. Система программирования Смолток обладает большими возможностями и является одной из самых распространенных в США. Ряд экспертов считают, что время, затрачиваемое на разработку относительно объемного приложения при использовании Смолтока в несколько раз меньше, чем при использовании других языков программирования. При этом разрабатываемый программный код оказывается существенно короче . Анализ программного обеспечения, созданного на Смолтоке, показывает преимущества последнего при создании больших систем, к которым предъявляются особые требования в плане их надежности и устойчивости. Например, на Смолтоке написана система управления государственной почтовой службы США, а Пентагон анонсировал компьютерную поддержку управления боевыми действиями вооруженных сил США (JWARS) с помощью системы IBM Small alk . Зарубежный опыт обучения Смолтока показывает, что темп усвоения этой системы начинающими программистами несколько уступает другим популярным системам программирования. Насколько известно автору, в России опыт преподавания Смолтока есть только в двух вузах - в Московском и Донском университетах.
Многим авангардистам стало тесно в пределах искусства вообще, возник лозунг «выхода искусства из искусства в жизнь». Часть авангардистов понимала его как вынесение художественно-эстетических принципов, наработанных в сферах высокого, неутилитарного, чистого искусства («изящных искусств» в терминологии новоевропейской эстетики), в новые прикладные искусства, ориентированные на интенсивную художественно-эстетическую организацию всех сфер жизни человека: производственной, бытовой, лечебной, отдыха, развлечения, спорта. При этом многие из авангардистов (конструктивисты, некоторые футуристы и абстракционисты) считали, что высокое неутилитарное искусство вообще изжило себя и не имеет права на существование. Ему на смену пришло искусство организации жизни, и все мастера высокого искусства должны переключиться на него. Отсюда берет начало принципиально новый этап развития декоративно-прикладных искусств, сознательно ориентированных на новейшие достижения техники и технологии: «промышленное искусство», художественное конструирование, дизайн, система искусств во главе с архитектурой, целенаправленно работающих на организацию эстетизированной среды обитания человека. К концу ХХ в. на этом пути были достигнуты заметные, а иногда и поразительные результаты
1. Тенденции развития филармонического искусства в современной России
2. Языки программирования, их классификация и развитие
3. Тенденции и перспективы развития рынка ценных бумаг в России
4. Возникновение и развитие правового статуса казачества в России
5. Медицинское страхование в России, проблемы его развития
9. Сравнительный анализ языков программирования JavaScript и VBScript
10. Тест на языке программирования Visual Basic
11. Эволюция языков программирования
12. Бухгалтерский учет в России: основные направления развития
13. Коучинг как новая технология развития и обучения персонала
14. Опыт антимонопольного законодательства в России и в развитых капиталистических странах
15. Перспективы становления и развития гражданского общества в современной России
16. Развитие менеджмента в СССР и России
17. Православное образование в России: традиция и развитие, уроки и перспективы
18. Основные этапы развития конституционализма в России
19. Язык детского рисунка. Этапы развития. Задачи развития ребёнка в рисовании
20. Новый метод развития координации движений у инвалидов по зрению
21. Синергетика как новое направление развития науки
26. Приемы безопасного программирования веб-приложений на PHP
27. АвтоЛИСП - реализация языка программирования
28. Основные алгоритмические конструкции и соответствующие им конструкции языка программирования QBasic
30. Технологии и языки программирования
31. Логические задачи на языке программирования Prolog
32. Язык программирования Норма
33. Внутренние законы развития языка и проблема грамматической аналогии
34. История развития и основы функционирования Банка России
35. Возникновение и исторические этапы развития прокуратуры в России
36. Развитие института суда присяжных в России
37. Логические задачи на языке программирования Prolog
43. Создание 3D-графики средствами языка программирования Visual Basic
45. Что такое язык программирования
46. Языка программирования Delphi. Разработка практических заданий
48. Основные этапы развития фармацевтической химии и предпосылки создания новых лекарственных веществ
49. Положение западноевропейских стран в эпоху нового этапа научно-технического развития
50. История развития и становления психодиагностики в России
52. Философия истории - новый этап в развитии социального познания
53. Развитие рынка облигаций в современной России
57. Этапы развития страхования в СССР
58. Предпосылки возникновения и этапы развития науки
59. Шрифт. Этапы развития и изменения формы
60. Этапы развития личности в онтогенезе
61. Технологическая революция, как новейший этап современной НТР
62. Этапы развития экономической науки
63. Этапы развития экономической науки
64. Причины гражданской войны и военной интервенции в России. Основные этапы гражданской войны.
66. Новый этап освободительного движения
67. Этапы развития третьего рейха
68. Три этапа развития в творчестве Лермонтова. Становление личности в лирике Лермонтова
69. Этапы развития учений об истерических состояниях человека
73. Современный этап развития теории экспертных оценок
74. Этапы развития страхования в СССР
75. Этапы развития категории бытия в философии
76. О становлении и этапах развития валютного рынка Вьетнама
77. Мировое хозяйство: понятия, субъекты, этапы развития
78. ОСНОВНЫЕ ЭТАПЫ РАЗВИТИЯ ЭКОНОМИЧЕСКОЙ МЫСЛИ
79. Астрология-этап развития астрономии
80. Исторический обзор основных этапов развития химии
81. Этапы развития и парадигмы естествознания
82. Этап развития механизированных лесозаготовительных предприятий
83. Этапы развития экономической географии
84. Исторические этапы развития массовых коммуникаций
85. Современный этап развития военных судов в Российской Федерации
89. Возможности судебно-товароведческой экспертизы на современном этапе развития
90. Этапы развития валютных правоотношений и валютного законодательства в Российской Федерации
91. Белое движение - причины, сущность, этапы развития в годы гражданской войны
92. Послевоенный политический кризис и начало нового этапа гражданской войны в Китае (1945-1947 гг.)
93. Готическое искусство: основные этапы развития
94. Происхождение, основные этапы развития и специфика культуры в Украине
95. Эволюционные концепции и этапы развития маркетинга
96. Европейский Союз: этапы развития, проблемы, перспективы
97. Современный этап развития российско-французских отношений в сфере политики и безопасности
98. Этапы развития и школы менеджмента
99. Понятие, цели и задачи инновационного менеджмента. Этапы развития науки