Gudleifr: Все сообщения за 9 Января 2022 года

 
ПнВтСрЧтПтСбВс
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31

Gudleifr

опытный

G.s.> А в VBasic есть стандартная подпрограмма, например, для расчета стандартной атмосферы?
Сейчас формат обычных библиотек обычно одинаков для всех...
Или Вы имеете в виду, что где-то есть исходники алгоритмов на FORTRAN, которые Вы хотите вводить руками?

Байка. Как-то Терехов (который из Ленинградского Универа) рассказывал нам на лекции, что, пропагандируя Algol-68, ходил по ящикам и переписывал на нем старые FORTRAN-программы. И однажды, для какого-то военного локатора, получил размер антенны в два раза меньше фортрановского. Был большой скандал, но в конце концов выяснилось, что ошибка была в старой программе.
 97.0.4692.7197.0.4692.71

Gudleifr

опытный

G.s.> Хотя Бейсиком я, конечно, пользовался на заре первых персоналок а-ля ЕС-1840, но вот сразу так вспомнить и начать будет трудно.

К сожалению, VBasic отличается от старых BASIC-ов достаточно сильно. Как, подозреваю, и современный FORTRAN от классического. Впрочем, разница FORTRAN-версий, как помните, началась еще в древние времена: 4-й, 77-й и т.д.

Главным вопросом для Вас сейчас должно быть: В каком виде хранятся сейчас Ваши старые библиотеки и наработки?
 97.0.4692.7197.0.4692.71

Gudleifr

опытный

G.s.> И предчувствия меня не обманули.

Я предупреждал!

Из книги Раскина:

Я начну с простого примера. В давно исчезнувшем компьютере Apple II для того, чтобы написать программу сложения двух чисел, требуется включить компьютер (время загрузки не заметно!) и нажать "Control"+"b", после чего вы переходите в BASIC. Если вы теперь наберете PRINT 3+4 и нажмете "Return", то сразу же и без трудностей получите 7. С момента запуска BASIC до получения результата прошло 5с. Как хорошо известно, в компьютерной промышленности простота использования достигается с помощью довольно больших ресурсов памяти и скорости. Поэтому мы понимаем, что компьютер Apple II способен выполнять вычисления с такой быстротой и простотой именно потому, что он обладает мощнейшими ресурсами: имея 2-мегагерцовый 8-битный процессор, 48 Кбайт памяти (и это все, что можно вместить!) и 400 килобайтовый диск, машина работает как зверь. В 1999 году на выполнение этой операции у компьютера с 400-мегагерцовым 32-битным процессором, 192 мегабайтовый RAM-памяти и несколькими гигабайтами памяти на жестком диске уходит более 3 минут. Судя по разрядности системной шины и тактовой частоте процессора, новая машина работает приблизительно в 1500 раз быстрее, чем старая. Если же оценивать по времени, которое требуется для написания программы, новая машина оказывается медленнее приблизительно в 36 раз.

Я попросил двух профессиональных программистов написать программу на Visual Basic (VB), которая бы выполняла сложение 3+4 и выдавала результат на экран. Первый программист начал жаловаться, что у машины всего только 8 Мбайт памяти и что у нее устаревший 75-мегагерцовый 32-битовый процессор. Не считая времени загрузки (2мин.), среда программирования была открыта через 54с. После этого требовалось открыть модуль вставки (Insert Module), потом открыть окно опций (Option Box) и установить соответствующие настройки, создать кнопку и рабочую форму, после чего программист должен был набрать среднюю строку из следующего текста:

Private sub Command1_Click ()
MsgBox 3 + 4
End Sub

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

Другой программист, работавший на 64-битовом процессоре с тактовой частотой 75Мгерц и 40Мбайт памяти, запустил VB и выполнил ту же задачу за 28с (что приблизительно в 5 раз медленнее, чем на компьютере Apple II). Программа, созданная несколько иным способом, была следующей:

Private sub Form_Load ()
MsgBox Str (3 + 4)
End Sub

Я спросил у этого программиста, почему он не написал вторую строку так же, как ее написал первый программист:

MsgBox 3 + 4

Он ответил, что не был уверен, что это будет работать. Другими словами, он не знал точно, как VB будет работать в этом случае. Здесь нет ничего странного: как и другие современные компьютерные языки, VB имеет довольно сложное и непоследовательное построение. Оправданием его громоздкости может быть то, что он позволяет сделать большие проекты проще, однако это не может быть оправданием для того, чтобы делать простые вещи сложными. Большие вещи состоят из множества малых, поэтому чем проще сделаны составные задачи, тем проще становится вся задача в целом. Именно плохая организация системы и языка является причиной того, почему один опытный программист допустил ошибки, а другой - не был уверен в правильности синтаксиса простой программы. Те же самые результаты я получил и с тремя другими программистами, работающими со Smalltalk; это показывает, что данные проблемы относятся не только к VB. Очевидно, что каждый из этих языков обладает множеством преимуществ, но если бы они и особенно их среды были хорошо разработаны с точки зрения человеческих факторов, эти преимущества достигались бы с меньшими неудобствами и меньшим числом ошибок со стороны человека.
 


И это BASIC, который намного проще FORTRAN...
 97.0.4692.7197.0.4692.71
Это сообщение редактировалось 09.01.2022 в 21:49

Gudleifr

опытный

G.s.> А в отрасли сейчас вообще мертвый сезон: прикладники вымерли, похоже.
Так оно и есть. Если можно делать деньги, то какой дурак будет делать что-то другое? Любимое занятие IT-шников - переписывание старых программ по новым правилам "совместимости" и "безопасности".

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

в начало страницы | новое
 
Поиск
Настройки
Твиттер сайта
Статистика
Рейтинг@Mail.ru