IPB

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> Clarion высокоуровневый язык программирования
SuperMax
сообщение 15.9.2015, 9:42
Сообщение #1


Администратор
*****

Группа: Root Admin
Сообщений: 6 282
Регистрация: 7.1.2006
Из: Красноярск
Пользователь №: 1



Clarion - платный высокоуровневый язык программирования общего назначения 4-го поколения, разработанный компанией HBO & Company / McKesson Corporation / Topspeed Corporation / SoftVelocity для создания приложений баз данных.

История

Язык программирования Clarion был разработан Брюсом Баррингтоном в 1984 г. В своей статье он так описывает историю его создания: <Как это часто бывает, я просто пытался доставить себе удовольствие. Я купил свой первый персональный компьютер, смотрел на него и хотел писать программы для него. Это моя работа. Моим стимулом в работе было убеждение, что программирование должно быть проще, что языки программирования должны облегчать чтение и написание программ и что низкая производительность, связанная с процессом разработки программ, коренится в неадекватных и слабо спроектированных инструментальных средствах программирования>. Первоначально проект создавался в рамках компании "HBO & Company", но затем был выкуплен McKesson Corporation

Сейчас это мощный и одновременно простой в освоении универсальный язык программирования со встроенными средствами управления БД, на различных версиях которого можно разрабатывать программы для Microsoft Windows, .Net Framework, DOS, JPI.


Причины популярности

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

Средства разработки

Интегрированные среды разработки программ для Windows и .Net Framework в настоящее время разрабатывает компания Softvelocity[3]. Эти IDE позволяют работать с большим количеством баз данных, в том числе SQL-серверами, работать с интерфейсами ODBC и ADO, обрабатывать документы формата XML и выводить документы формата HTML, XML, PDF и других. Существует версия для DOS.

Для упрощения процесса разработки программ на Clarion for Windows широко используются принципы визуального программирования. Встроенные в среду разработки <шаблоны>, тесно связанные с генератором кода, предназначены для построения высококачественного повторно используемого кода и резко сокращают затраты времени на решение рутинных задач. Для простых приложений могут быть созданы программы, включающие минимальное количество <рукописного кода> или даже целиком сгенерированные шаблонами. Разработчик программ в интерактивном режиме указывает параметры вызова шаблонов, и встроенный макрогенератор порождает программный код. При необходимости в шаблонах могут быть описаны <точки вставки>, где разработчик может вставить свой собственный код, который будет вставлен в сгенерированный текст программы. Эти шаблоны открыты для модификации и просты для изучения, а язык шаблонов позволяет добавлять новые возможности, в том числе даже не предусмотренные создателями Clarion.

Область применения

Clarion как язык программирования создавался в первую очередь для разработки деловых приложений. В язык включены средства описания экранных форм, отчётов и баз данных. Тем не менее, это не мешает, например, созданию на Clarion for Windows и Clarion.Net системных утилит, позволяющих взаимодействовать с операционной системой на низком уровне не менее эффективно, чем программам, написанным на общепринятых языках <низкого уровня> таким, как Ассемблер, Си.

Clarion схож по синтаксису с Бэйсиком, Коболом, Паскалем (например как и в последнем программный код должен быть заключён в конструкцию "начало-конец"). Аналогично с Коболом, Clarion содержит описание переменных в теле кода. Язык первоначально задумывался для облегчения написания бизнес-приложений для баз данных.
Особенности\недостатки

В связи с коммерческой политикой компании-разработчика версия "Enterprise" требует докупки ряда лицензий для взаимодействия со сторонним ПО (например "Oracle Accelerator"). [4]

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


--------------------
Живы будем - Не помрем !
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
SuperMax
сообщение 15.9.2015, 9:52
Сообщение #2


Администратор
*****

Группа: Root Admin
Сообщений: 6 282
Регистрация: 7.1.2006
Из: Красноярск
Пользователь №: 1



я познакомился с Clarion for DOS v2.1 в 1993ом году. Мне предложили работу по написанию комплекса программ для расчета пени для комитета по управлению имуществом.

Я обратился к знакомому программисту Николаю, и попросил показать как работать со средой разработки Clarion. Он сказал мне - засекай время и показал как за 10 минут сделать полноценный телефонный справочник от начала до exe-файла. После чего я попросил, устроить "экскурсию" у знакомого пишущего на FoxPRO, он узнал, что я уже видел Clarion и отказался что-либо показывать ибо FoxPRO в принципе не сравним по скорости разработки.
Выбор состоялся и я ни разу не пожалел!

Сейчас Clarion по-прежнему интересен скоростью разработки, мощным языком шаблонов, а также нативной поддержкой широкого спектра СУБД - начиная от файловых dbf tps cla итд, кончая Oracle и MSSQL.






--------------------
Живы будем - Не помрем !
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
SuperMax
сообщение 15.9.2015, 10:23
Сообщение #3


Администратор
*****

Группа: Root Admin
Сообщений: 6 282
Регистрация: 7.1.2006
Из: Красноярск
Пользователь №: 1



История создания языка Clarion, Брюс Д. Баррингтон, главный инженер TopSpeed Corporation:

Как это часто бывает, я просто пытался доставить себе удовольствие. Я купил свой первый
персональный компьютер, смотрел на него и хотел писать программы для него. Это моя
работа. Паскаль имел тогда слишком ограниченные возможности, а С на этой платформе
еще не было. Поэтому я попробовал BASIC. Все что мне было нужно - это несколько
интеллектуальных программ, работающих с экраном и клавиатурой. Так? Возможно, иногда,
индексно-последовательный доступ. Так?
Неправильно! Я мог все это сделать. Но я не мог сделать это просто и элегантно. К тому
времени я уже лет 10 работал с инструментальными средствами программирования
собственной разработки. Они мне нравились. Тут мне пришло в голову, что может быть
всем действительно нужен еще один язык программирования - универсальный,
ориентированный на административные и экономические задачи. Разработанный
специально для персональных компьютеров.
Может показаться противоречивым сочетание .универсальный язык, ориентированный
на экономические задачи., но в мире ПК много .языков., предназначенных для решения
экономических задач, но которые трудно назвать универсальными. Допускаю, что
пользоваться макросами электронной таблицы - это программирование, но вряд ли можно
назвать язык макроопределений универсальным языком программирования. В силу этого
большинство языков баз данных не являются универсальными языками. Это скорее набор
инструкций, предназначенных для исполнения программой управления базами данных.
Даже язык СУБД dBase, который можно компилировать и выполнять отдельно от самой
СУБД, не может, честно говоря, считаться универсальным языком программирования.
По моему определению универсальный язык программирования должен управлять всей
совокупностью возможностей, заложенных в компьютер, на котором он установлен. Это
значит, что программа должна быть в состоянии прочитать любой раздел любого файла,
доступного операционной системе. Он должен поддерживать все разнообразие элементов
взаимодействия с пользователем. Он должен стандартным образом сопрягаться с другими
языками программирования и программными системами. Универсальный язык
программирования не должен засорять программу собственным .интуитивно понятным
интерфейсом.. Он не должен ставить преград, которые приходится преодолевать. Наоборот,
он гарантирует программисту широкий диапазон возможностей и подходов для решения в
любом стиле большого круга задач.
Но почему ограничивать новый язык только персональными компьютерами? В других
широко известных языках преносимость на другие платформы тщательно продумана. Я
решил, что персональные компьютеры заслуживают особого обращения. Даже в 1984 г.,
когда эта работа начиналась, ПК уже составляли существенную долю всех установленных
в мире компьютеров. Но ПК и отличались от других типов ЭВМ тем, что они были задуманы,
как устройства для одного пользователя, в состав которых входили клавиатура и монитор.
Доступ к клавиатуре и монитору можно было получить непосредственно, без модемов и
линий связи. Для этих устройств нужны были интерактивные прикладные программы,
быстро реагирующие на ввод данных. Я решил поддержать эти особенности ПК, включив в
язык программирования отображение видеопамяти. Если программа на Clarion.е будет
работать .лишь. на 40 или 50 милл. компьютеров, я буду удовлетворен.
Моим стимулом в работе было убеждение, что программирование должно быть проще,
что языки программирования должны облегчать чтение и написание программ и что низкая
производительность, связанная с процессом разработки программ, коренится в
неадекватных и слабо спроектированных инструментальных средствах программирования.
Эти убеждения начались с .вечных вопросов.: Зачем каждый раз оформлять оператор
IF в виде IF...THEN BEGIN; .операторы.; END ELSE...(Pascal)? Какой особый смысл
ключевых слов THEN, BEGIN, END в этой структуре? Зачем пользоваться знаком .:=.
вместо .=. в операторе присваивания (Pascal, Modula-2, ADA)? Разве не знал разработчик
языка, что оператор присваивания - это самый распространенный оператор в программе
или что знак .:=. трудно набирать на клавиатуре, так как она состоит из комбинации клавиш,
нажимаемых с клавишей Shift и без нее? Ну а предложение READ...AT END (COBOL),
которое присваивает значение переменной, которая проверяется для прекращения цикла
чтения по достижению конца файла? Почему нельзя просто проверять в цикле конец файла?
Почему, объявив переменную, нужно напоминать компилятору, чтобы он преобразовал ее
в выражении с переменными различных типов. Компилятор не может помнить об этом
сам? Вы когда-нибудь выполняли операцию lint collection ? А не спрашивали себя, почему?
Ну а шестнадцатиричные дампы? Вспомните ШЕСТНАДЦАТИРИЧНЫЕ ДАМПЫ!
Двадцать лет программирования породили во мне такое же чувство, как у главного героя
фильма .Сеть., который, высунувшись из окна, закричал: .Я с ума сойду. Я не могу больше
этого выносить!.



--------------------
Живы будем - Не помрем !
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 29.3.2024, 6:53