Отправляет email-рассылки с помощью сервиса Sendsay

[TC] Языки програмирования.

Здравствуйте, друзья!
Существуют языки програмирования такие, как например:
c/c++, turbo pascal, delphi.
Но собственно говоря, вопрос не в количестве этих языков, а вопрос вот в чем.
1. Как узнать на каком языке написанное инсталированное на комп приложение?
2. Чем отличаются друг от друга языки програмирования?
3. На каком из языков програмирования лучше писать приложение((программный продукт)?
4. Для каких языков програмирования существуют джозабельные спец.программы (не
знаю как называются такие проги среди проффесионалов)?
Буду признателен всем откликнувшимся!
Dmitriy V Goshev
dvgosh***@m*****.ru

Ответить   Mon, 2 Apr 2007 22:05:56 +1100 (#652899)

 

Ответы:

Здравствуйте, Дмитрий.
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

Ответить   Tue, 3 Apr 2007 01:43:54 +0800 (#653000)

 

Приветствую!

Эдуард пишет:

Да. Такие участки называют сигнатурами и все распространенные
компиляторы можно по ним "узнать".
Дизассемблер ida отлично с этим справляется, а также некоторые
универсальные распаковщики.

По поводу сред программирования: ни одна среда разработки не джозится
идеально. Всё зависит от состояния скриптов, созданных для них.

В качестве среды разработки могу предложить visual studio express 2005.
Разые её варианты существуют для нескольких распространённых и мощных
языков.
Ещё одно её преимущество: одна бесплатна.

Про выбор языка, это тема непростая, если есть желание обсудить
подробно, пишите в личку.
Однако очень не советую использовать языки "созданные специально для
обучения". Это всё равно как в школе изучать математику только для
натуральных чисел...когда пойдёшь в институт окажется, что математики-то
и не знаешь.

Ответить   Mon, 02 Apr 2007 23:54:29 +0400 (#653019)

 

здравствуйте, все и дмитрий.

узнать на каком языке написана программа можно с помощью хекс редактора, к
примеру вин хекс и иже с ним.

перечисленные вами языки отличаются:
1 синтаксисом и конструкциями.
2 так называемым уровнем.
3 и пожалуй главное отличие этих двух языков, это их идиалогия.
есть ещё целая куча различий между ними.

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

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

в конце добавлю.
лично я предпочитаю продукцию фирмы борланд.
кстати о цене их продуктов.
да, стоят они не дёшиво.
30 килорублей за одну лиценьзию borland developer studio. все языки.
а вот к примеру если нужен только один язык то 10 штук в полне достаточно
чтобы купить продукт серии турбо.
то есть турбо делфи, или турбо ц++.
кстати у этих двух продуктов есть и полноценная бесплатная версия, которую
можно нагло скачать с сайта производителя.
сайт английский, обязательна регистрация с числом на картинке, и качать 500
метров, но если вы любопытны и доступ в сеть увас: безлимитный/ дешёвый/
халявный, то можете присмотрется к этим двум ide.

с уважением, mus:
mavx@y*****.ru

Ответить   Mon, 2 Apr 2007 23:47:27 +0400 (#653017)