Dancing On The Moonlight. Waiting 4the Sunrise
Приведите мне примеры языков сверхвысокого уровня, а то я что то слабо представляю себе, что сие такое.
Используя, к примеру, Sybase PowerDesigner ты можешь создать можель приложения, из котрого будет сгенерирован Java-код в соответствии с выбранными тобой праметрами (например тип БД).
еще примеры есть?
М... нет, других примеров я сейчас привести не могу (т.е. утилит для работы с UML - полно, а альтернативного языка - я не знаю)
Но... вообще-то других и не нужно.
UML- ведь не язык программирования. Это язык описания объектов.
И если PowerDesigner завязан на Java, то можно найти интрументы и для PHP...
А ты сама не замечала, что все ООП-языки очень похожи? И что код на одном отличается от кода на другом только формой записи, но не связями между объектами?
А ведь именно эти связи (вместе с набором свойств и методов) являются самым важным в ООП.
Что касается UML, я думаю, он займет примерно такое-же место на поле языков "свервыхосокого уровня" как SQL в работе с БД.
М... а какие это языки?
Насколько я понимаю, смысл этого самого "сверхвысокого" уровня - в том, что он оперирует не простейщими коммандами, а "кирпичиками", из которых строится приложение. Кирпичиками-объектами.
А что ты понимаешь под "оперированием действиями"?
М... а какие это языки?
Название не помню, но кто-то там что-то такое разрабатывает, как они говорят, event-driven. Хрен его знает, оно у них ещё вот только-только родилось.
Новость где-то на компьюленте пробегала, как сейчас помню.
все ООП-языки очень похожи?
Замечали
Я упала под стол и дальше смотреть не смогла...
Только тогда уж не Маткад, а MAPLE.
как они говорят, event-driven
Я, к сожалению, плохо знаком с этим термином, хотя и правда, где-то слышал...
Так что был-бы очень рад ссылочке.
th
На роль "естественного" языка ещё Бейсик претендовал... Мечта продвинутого юзверя, так сказать...
Иоланда
Ну и путанница в терминах... Имхо, языки MathCad-а, OrCAD-а и т.п. - это всё-таки скриптовые языки.
А вот куда определить Smalltalk?
--
пытаюсь щас разобрацца, как работать с Maple. Если что, буду доставать вопросами.. =)
угу-угу, именно поэтому зная алгоритмы какие то, основные принципы работы приложений, взаимодействия объектов, так легко переходит стало с одного языка на другой.
Спасибо за ссылку, я понял.
Мне показалось, этот EPL - всё-же не "язык сверхвысокого уровня".
Там ведь написанно, что это аналог SQL-а, предназначенный для обработки информационных потоков.
Он, как и SQL вообще не является языком программирования в полной мере.
В таком случае - UML тоже не язык программирования.
Потому что программирование - задание последовательности действий
Верно, UML - язык описания объектов.
А совокупность объектов и их связей - и есть программа.
Есть желание поспорить над определением термина "программа"? С тем что ты привёл, я согласиться в полной мере не могу.
program - программа, программировать
1) Набор инструкций, описывающих действия, которые должен совершить компьютер для решения некоторой задачи, соотв. синтаксису определённого языка программирования.
2) разрабатывать программу...
Хотя отчасти я с тобой согласен - в последнее время это определение "поплыло" в мозгу массового сознания новоявленных программеров...
Набор инструкций, описывающих действия
Вот против этого я не возражаю. Но выше ты писал о последовательности действий. И именно с последовательностью мне соголаситься сложно.
В UML имеется набор обозначений, описывающих действия - те самые взаимодействия объектов.
Так что в это определение UML вписывается.
Как, впрочем, и HTML с CSS, и SQL и вообще практически всё...
Даже документ MS Word есть программа, решающая задачу форматированного вывода на печать определённых данных.
Так что по моему, лезть в словарь в данном случае... не очень практично.
Угу. Под то определение, что в приведено выше можно и plain text загнать, если напрячь воображение.
Но придумать толковое определение у меня... не получается.
Та же фигня
объекты = данные, структура
программа = первое + второе
А высшие языки программирования, как я понимаю, это что-то вроде visual'ов разных там... где по сути дела почти всё делается с помощью графического интерфейса и всё это дело связывается event'ами. Тут можно поспорить, что, например, какой-нибудь там visual basic или visual с++ переводится просто на c++... но с другой стороны это без разницы, ведь всё равно в результате этот с++ ещё пройдёт через кучу перемен, перед тем, как его поймёт компьютер.
Хотя я этим особо не интересовался, так что возможно я не знаю, о чём я говорю.
Твой набор определений - не полный.
Что такое алгоритм? Чем он отличается от данных, и почему структуры вынесенны отдельно? Прежде чем оценивать твою систему определений хотелось-бы взгялнуть на неё целиком.
Да, и раз уж на то пошло, разясни мне пожалуйста, в программе
<sсript language="javasсript">
var expr = prompt('Expression =','');
eval('var res = '+expr);
alert('Result = '+res);
</sсript>
где данные а где алгоритм?
Является-ли 'var res = '+expr данными? Не смотря на то, что содержат програмную логику и исполяются интерпретатором как и остальная часть программы?
На счёт Visual-языков (кстати, Java, относится к ним-же!) - должен сказать, что интерфейс программы - это конечно важнейшая её часть, но не вся!
Кому нужна программа которая только показывает менюшки и окошечки?
Для этого блокнот есть... Но он пишется на том-же Visual C++ пятью нажатиями на кнопки мастера создания проекта.
Важна связь между элементами программы, будь то менющечки-окошечки или другие объекты.
Собственно потому и появились ООП-языки. Но это всё тот-же самый язык высокого уровня. Не высшего. Visual - это всего-лишь инструмент для быстрой разработки, не более того.
В неие доисторические времена вычислительные машины имели раздельную память для программ и для данных. Но то когда было...
Теперь память общая, хранится в ней всё в перемешку, и процесс превращения данных в программы и обратно происходит в наших компах постоянно.
Извините, что говорю банальности...
В качестве ещё одной красивой иллюстрации можно привести строку
X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*
Желающие проверить свой антивирус могут сохранить ей в файл с названием eicar.com
Ну а на счёт вижуалов... я в принципе предупреждал, что понятие не имею, о чём говорю, так что и не буду спорить вообще.