[Ответить в тред] Ответить в тред

02/12/16 - Конкурс визуальных новелл доски /ruvn/
15/11/16 - **НОВЫЙ ФУНКЦИОНАЛ** - Стикеры
09/10/16 - Открыта доска /int/ - International, давайте расскажем о ней!



Новые доски: /2d/ - Аниме/Беседка • /wwe/ - WorldWide Wrestling Universe • /ch/ - Чатики и конфочки • /int/ - International • /ruvn/ - Российские визуальные новеллы • /math/ - Математика • Создай свою

[Назад][Обновить тред][Вниз][Каталог] [ Автообновление ] 28 | 1 | 12
Назад Вниз Каталог Обновить

Как так сделать, чтоб ничего не делать Аноним 17/12/16 Суб 16:13:53  895929  
evm.gif (35Кб, 1101x555)
Сап, погромисты, инженер подает голос.
Есть расчетная программа, написанная на FORTRAN 66. Или может на ФОРТРАН-ДУБНА, я не ебу. Короче, для ЕС ЭВМ.
Последний раз её редактировали не позже 1982 года. После этого её лишь перекомпилили для Винды, код не трогая.
Теперь мне поставлена задача её переписать, добавив пару очень нужных фич. Плюс реализовать наконец интерфейс, нормальный ввод/вывод данных, вывод ошибок и прочее, а то пока расчет нормально запустишь, обматеришься.
Но тут возникла проблема - я всегда все делаю в моем любимом Матлабе, но тут обязательно нужен exe-шник, поэтому он не подходит. На Фортране (им тоже на работе часто пользуюсь), как я понимаю, написать интерфейс будет очень сложно. Короче, я в затруднении.
На каком языке это можно сделать с минимальными трудностями? Я правильно понимаю, что проще всего выучить этот ваш С++?
Аноним 17/12/16 Суб 16:39:29  895946
>>895929 (OP)
я бы сделал dllку на фортране с апи, торчащим наружу
ну и gui на чем угодно после этого можно делать
Аноним 17/12/16 Суб 16:40:51  895948
>>895929 (OP)
алсо, НЕ переписывай на другой язык
охуеешь в процессе
это будет гораздо дольше, чем просто модифицировать старый код под новые потребности
Аноним 17/12/16 Суб 16:50:48  895953
>>895929 (OP)
А как данные передаются в существующий бинарник и забираются из него? Может GUI с валидацией входных данных с внешней стороны прикрутить?
Аноним 17/12/16 Суб 17:02:44  895958
>>895948
Боюсь, переписывать придеться. Прога очень старая и поэтому там много чего нужно будет дописать, список хотелок большой. А поскольку код совершенно не понятен (комментов нет, а go to сплошняком), я опасаюсь запутаться вконец.
Аноним 17/12/16 Суб 17:07:39  895959
>>895953
Да текстовый файл обычный с исходными данными. Где-нибудь вместо двух один пробельчик поставишь и усе, сиди ищи.
Ну вообще да, можно переписать тот же код на новом фортране, а потом прикрутить интерфейс на другом языке. Но не уверен, есть ли смысл - уж если переписывать, то единообразно.
Аноним 17/12/16 Суб 17:18:50  895964
>>895959
>>895958
Запасайся тогда тестовыми наборами (входные данные + результат). И сразу какую-нибудь обвязку сделай (на любом языке) для автоматизированой проверки. Если оригинальная программа считает быстро, то тестовый ответ можно и на лету ей генерить.
Аноним 17/12/16 Суб 17:46:42  895977
>>895958
>Боюсь, переписывать придеться
классическая ошибка новичка
ну, чтож, ебись и переписывай с нуля
ты же можешь
Аноним 17/12/16 Суб 17:52:35  895980
>>895977
Ну не скажи. Некоторые вещи на самом деле переписывать нужно.
Но соглашусь с тем, что это нихера не просто. В таких вещах обычно много математики и посадить багу при ее переносе очень легко. Особенно с учетом того, что документация и способы верификации как правило давным-давно проебаны.
Аноним 17/12/16 Суб 20:40:46  896093
>>895980
пфф
опу дали конкретное задание: прикрутить гуий, обновить ввод-вывод и обработку ошибок
вместо этого он уже решил переписывать все нахуй заново
типичная ошибка новичка
Аноним 17/12/16 Суб 22:14:43  896176
>>896093
>вместо этого он уже решил переписывать все нахуй заново
Ну может мне удастся улучшить алгоритм. В конце концов времени прошло много и многое было не реализовано просто из-за ограничений тех компов.
Аноним 17/12/16 Суб 23:06:27  896220
Какие-то тут жопочтецы-телепаты, впрочем как обычно, предлагают лепить костыли не прочитав, что ОП там нужно новые фичи прикрутить. Есть подозрение, что для этого один хуй придется разбираться в недрах программы.

А если заказчик готов платить, чтобы это говно переписали с чистого листа, то почему бы и нет. Костыли нужны, только если БЫСТРА.

А интерефейс похуй, тут выше, очень верно подметили, раз на фортране нету графических либ, то имеет смысл сделать DSL в виде dll, и накрутить во все желаемые места, вплоть до слаки, лол.

Вот тут, кстати, рассказывается https://habrahabr.ru/post/178717/ как фортран-кодец из C# вызывать.
Аноним 17/12/16 Суб 23:15:11  896225
>>896220
>C#
сразу иди нахуй
Аноним 17/12/16 Суб 23:23:17  896230
>>896176
>удастся улучшить алгоритм
чувак
еще раз
у тебя конкретные задачи есть, которые ты озвучил, которые от тебя требуют сделать
дак делай их!
просто модернизируй существующее приложение
не будь долбоебом
делай то, что тебя просят сделать
ты же, блядь, на работе
Аноним 17/12/16 Суб 23:37:17  896243
>>896225
А ты из кех будешь, из крестоопущенок или скриптодебилов?
Аноним 18/12/16 Вск 00:14:36  896264
>>896243
Из богоподобных Qt-господинов
Аноним 18/12/16 Вск 00:16:47  896268
>фортран
>Не позже 1982
Пиздец просто, вся суть рашкованской "науки"
Аноним 18/12/16 Вск 00:31:23  896271
>>895948
Есть такие поциенты после которых прошу действительно легче сделать по новой. Но это не часто
Аноним 18/12/16 Вск 00:59:19  896284
>>896264
С каких пор рабы себя к богам относят?
Аноним 18/12/16 Вск 01:31:32  896304
>>896230
>не будь долбоебом
>делай то, что тебя просят сделать
>ты же, блядь, на работе
Лол. Мой начальник вообще сказал, чтоб я не копался в чужом коде и писал все это заново.
Аноним 18/12/16 Вск 01:38:23  896311
>имеет смысл сделать DSL в виде dll, и накрутить во все желаемые места, вплоть до слаки, лол.
Ни слова не понял.
Аноним 18/12/16 Вск 02:05:27  896327
Короче, разбираться в коде придется полюбому, что верно подметил>>896220. Жалко только, что одно описание алгоритма потеряно (оно ещё кстати на печатной машинке написано было), а более короткое засекречено, работать можно только в помещении первого отдела, вынести не дают. Ладно, это мои проблемы.
Значит текущий итог:
1. Саму прогу перепишу на современный фортран с комментариями.
2. С помощью матлаба буду запускать новую и старую проги с разными исходными данными и сравнивать результаты. Это я умею.
3. После переписки отмодифицирую уже понятный код в соответствии с новыми требованиями.
4. Снова проверю старую и новую версии матлабом. Правда здесь результаты уже имеют право несколько отличаться.
5. Напишу интерфейс, который в итоге должен генерировать текстовый файл и скармливать его программе, а после окончания её работы подгружать в себя файл результата.

Звучит понятно.

Вопрос остался прежним - на чем лучше писать интерфейс? Ну чтоб совсем просто и понятно было.
Аноним 18/12/16 Вск 02:30:59  896339
>>896327

> обязательно нужен exe-шник

https://www.youtube.com/watch?v=VwGTTn-fAmA

Что тут сложного? -.-
Аноним 18/12/16 Вск 02:34:08  896343
>>896327

а вообще, конечно, грустно что вы застряли на фортранах этих ваших. Писать интеграционные тесты на матлабе, кек. Содомиты.
Аноним 18/12/16 Вск 02:43:21  896346
>>896327

> 5. Напишу интерфейс, который в итоге должен генерировать текстовый файл и скармливать его программе, а после окончания её работы

это называется костыль, гугли в сторону импорта библиотек:

http://stackoverflow.com/questions/10317691/making-fortran-dll-and-calling-it-from-c-sharp

у меня фсё.
Аноним 18/12/16 Вск 07:56:11  896391
Шарпоблядь, уебуй.
Аноним 18/12/16 Вск 13:25:55  896477
>>896230
Ты тоже делаешь ошибку новичка, но другую. Иногда гораздо лучше потратить полгода на переписывание с нуля, чем полтора на добавление говна в говнокод и подпирание получившегося костылями.
>>896327
Почему фортран? Интерфейс можно склепать, например, на делфи и подключить библиотекой (или наоборот). Но если у тебя нет задачи написать именно на фортране, то я бы посмотрел на какие-нибудь другие языки. Даже чистая сисечка, наверное, лучше будет.
Аноним 18/12/16 Вск 14:41:25  896514
Пока спал придумал новую проблему. По идее, пользователь у этой программы один и он работает на windows 7 x64. Но в силу разных обстоятельств изредка подключается второй пользователь, а у того windows 2000 x32.
Будет программа на C# работать изкаробки на таком старье или нет?
>>896477
>Но если у тебя нет задачи написать именно на фортране, то я бы посмотрел на какие-нибудь другие языки. Даже чистая сисечка, наверное, лучше будет.
Ну на фортране определенно будет проще - ведь код уже написан, довольно большие части можно будет напрямую оттуда взять. Прога работает за доли секунды, поэтому возможное увеличение скорости от С мне не интересно, да его и не будет.
>Интерфейс можно склепать, например, на Delphi и подключить библиотекой (или наоборот).
Это уже я не хочу. Дельфи я все-равно не знаю, так лучше уж учить что-то современное и востребованное, чем старое и давно умершее.
Аноним 18/12/16 Вск 16:27:01  896574
>>896514
А в чем проблема скомпелять две версии под 32 и под 64?
Запакуй все либы в саму програму, чтобы никаких сторонних библиотек не требовалось, и вперед.
Гуйню можно написать хоть на писюне, хоть на матлабе и тоже статически залинковать в стандалон, правда у меня такая программа запускалась столько же сколько сам матлаб.

[Назад][Обновить тред][Вверх][Каталог] [Реквест разбана] [Подписаться на тред] [ ] 28 | 1 | 12
Назад Вверх Каталог Обновить

Топ тредов
Избранное