[TC] Языки програмирования.
Здравствуйте, друзья!
Существуют языки програмирования такие, как например:
c/c++, turbo pascal, delphi.
Но собственно говоря, вопрос не в количестве этих языков, а вопрос вот в чем.
1. Как узнать на каком языке написанное инсталированное на комп приложение?
2. Чем отличаются друг от друга языки програмирования?
3. На каком из языков програмирования лучше писать приложение((программный продукт)?
4. Для каких языков програмирования существуют джозабельные спец.программы (не
знаю как называются такие проги среди проффесионалов)?
Буду признателен всем откликнувшимся!
Dmitriy V Goshev
dvgosh***@m*****.ru
Здравствуйте, Дмитрий.
Original Message > 1. Как узнать на каком языке написанное инсталированное на комп
Это совсем не тревиальная задача. В принципе можно дизассемблировать
программу и проанализировать код. Вообще есть характерные участки кода, по
которым можно сделать предположение, что программа скомпилирована тем или
иным компилятором (Пардон за тафтологию), но
1. Это мало кому когда надо;
2. Как юрист ответственно заявляю, что дело это противозаконное;
3. как правило, решение этой задачи требует очень серьезных познаний в
области кодинга.
Таким образом, при существенных нервных затратах дело может того не стоить.
Я в жизни единственный раз столкнулся с ситуацией, когда действительно нужно
было знать на каком языке написана программа, точнее библиотека .dll.
Original Message > 2. Чем отличаются друг от друга языки програмирования?
Их чертова уйма, откровенно говоря. В первом приближении языки бывают
интерпретаторные (забыл точный термин). программа пишется в каком-нибудь
текстовом редакторе, а затем транслируется в некий промежуточный бинарный
код. К стати, класический пример - язык скриптов jaws. В процессе трансляции
происходит разбор текста, лексический анализ, выявление ошибок и т.п. Есть
класс ошибок, при выявлении которых транслятор просто не позволит
сгенерировать бинарный код (fatal errors). После трансляции программа
запускается и выполняется неким промежуточным интерпретатором, например
модуль jaws, отвечающий за скриптинг. Довольно существенный недостаток таких
языков обязательное наличие интерпретатора. Язык скриптов jaws счастливое
исключение. В том смысле, что здесь это не недостаток.
К стати об интерпретаторных языках, на днях открыл для себя gentee
http://gentee.ru
По моему для начинающего програмиста лучше не придумать, в смысле языка.
Обязательно посмотрите.
Второй класс языков програмирования именуется компиляторным. Происходит то
же самое: программа пишется, транслируется в промежуточный (объектный)
модуль, но в конце концов еще одна программа (линкер, не знаю, как это
по-русски), ах! да, компановщик, объединяет один или несколько объектных
модулей, генерируя на их основе собственно машинноисполняемый код. для его
выполнения нужна, как следует из названия, собственно только машина. Ну и
еще програмный загрузчик операционной системы, который загружает программу в
оперативную память, распределяет эту память между работающими программами и
т.п.
Original Message > 4. Для каких языков програмирования существуют джозабельные спец.программы
Я тоже, чесно говоря, не знаю. На тифлокомпе есть довольно качественная
подборка статей на эту тему Анатолия Камынина.
http://tiflocomp.ru/docs
Если мне не изменяет память. Для полного счастья там только gentee не
хватает.
В основном это компиляторы, запускаемые из коммандной строки, т.е.
джозабельность на этапе написания программы и анализа сообщений об ошибках,
выводимых в текстовый файл.
Говорят, очень не плох и в принципе озвучиваем Delphi, но дорог весьма.
Если будут вопросы по gentee пишите на личку. Я тоже только на днях взялся
это дело осваивать. Может найдутся общие интересы.
Эдик. Новокузнецк.
winks***@r*****.ru