Маркетинг идей на примере языка программирования оберон

Дипломная работа - Маркетинг

Другие дипломы по предмету Маркетинг

так и сильные стороны языка. Большинство проблем создавало безудержное использование указателей, ведь указатель среди типов данных - то же, что goto среди операторов: он создает из кода такую же лапшу, в которой трудно найти концы. Впрочем, лапшу на Си можно создать буквально одной строкой, например, на Баше была многостраничная дискуссия (между KoloDen, Stefmania и др.), каков результат после int i = 5; i = ++i + ++i;.

Сильной стороной Си было экономное использование богатых возможностями конструкций. Кроме того, на базе Си довольно быстро была создана мощная и элегантная ОС UNIX, что сделало язык "вечным", поскольку, хотя модифицировать код периодически надо, заменять его, переписав на другом языке, никто решается.

Экономность и эффективность языка привели к тому, что язык довольно быстро мигрировал с мини на микроЭВМ, заняв господствующее положение в системном программировании, поскольку даже трансляторы с других языков писались на Си.

Недостатки прямого использования указателей и новые идеи в структуризации данных и алгоритмов (объектно-ориентированное программирование) вызвали необходимость усовершенствования языка, что привело к созданию C++. Противоречивость заложенных в разработку целей - совместимость с Си и крайности в ООП - привели к тому, что этот язык обладает в придачу к недостаткам Си еще и понятийной и реализационной сложностью.

 

1.6 Оберон

 

Оберон создан проф. Н. Виртом и его сотрудниками в процессе работы над операционной системой для рабочей станции [11] и продолжает линию паскаль-модула-оберон, являясь наиболее совершенным продуктом. К нему можно отнести слова В.О. Сафонова (сказанные по поводу языков АТД, но вполне подходящие к оберону)[12]: "... язык должен быть концептуально богаче своих предшественников, но структурно проще". Как указал Свердлов [13], только в линии развития паскаль-модула-оберон достигнуто уменьшение сложности средств при увеличении возможностей и выразительности. Во всех прочих случаях переход к более простым и современным парадигмам характеризовался полным отказом от традиции предшественников. Так погибли без потомков ПЛ/1 и алгол-68.

Главные свойства оберона - простота восприятия кода и надежность. В языке нет никаких затуманивающих восприятие свойств, синтаксических фокусов, ограничено минимумом применение указателей, уменьшена вариативность: лучший вариант кода может быть только один. Язык поддерживает наиболее совершенную парадигму компонентного программирования, где компонент выступает единицей проектирования и инкапсуляции - в отличие, например, от явы, в которой окрошка из мелко нарезанных по классам модулей затрудняет обозримость проекта.

Тем не менее, мы не видим оберон среди наиболее употребительных языков. И это заставляет сосредоточиться не на явных преимуществах оберона, а на его многочисленных, хотя и, есть надежда, преодолимых недостатках.

Недостатки оберона можно разделить на первичные (присущие языкам Вирта) и вторичные (последователи Вирта, увы, не Билл Гейтс в области маркетинга). Как указывал сам Вирт, свою часть работы он сделал - дал народу язык. Его использование - целиком на ответственности использующих.

Итак, недостатки:

. Традиционное пренебрежение строками как типом данных. Можно вспомнить, что в исходном виртовском паскале с текстами было так же трудно работать. Только добавление в турбопаскаль (из бейсика?) полноценного набора строковых функций сделало возможным использовать паскаль для обработки текстов.

. Бедные средства работы с файлами.

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

И, хотя оберон-семейство не пользуется популярностью в массах, оно содержит уже достаточно много членов. кроме исходной системы Вирта это версия для встроенных систем Оберон-07, среда разработки и выполнения BlackBox, Active Oberon, Zonnon. Однако, эти разработки отнюдь не равноценны. И если BlackBox реализует преимущества оберона не слишком отягощая семантику, то введение в последующие обероны такой модной детали как property свидетельствует о непонимании самой концепции, положенной Виртом в основу языка.

Поэтому представляется, что за основу дальнейших действий надо принять оберон-2 и компонентный паскаль (BlackBox), как версии, наиболее соответствующие духу языка.

Перед программистским сообществом, как 50 лет назад, стоит задача внедрения более рационального языка, чем наиболее распространенные. Языка свободного от коммерческих интересов монополий. И такой язык есть, это - оберон.

Таким образом, можно сформулировать миссию: распространение рационального программирования на базе языка оберон.

 

2. Рынок языков программирования

 

Рынок и его компоненты, акторы и взаимосвязи показаны на рис. 1.

 

 

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