The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"math library development"
Вариант для распечатки Архивированная нить - только для чтения! 
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"math library development"
Сообщение от ChiP Искать по авторуВ закладки on 17-Янв-04, 01:12  (MSK)
Доброго времени суток, сообщество!

В ближайшее время планируется перенос "приложения", написанного на QBasic'e, на *nix платформу. Приложение в кавычках, потому что это не полноценное приложение, а скорее набор функций для расчета термодинамических свойств веществ, причем в нем очень активно используются глобальные переменные (т.е. фактически даже не полноценные функции :).

Использование глобальных переменных связано с большим количеством расчитываемых параметров, приблизительно 7-мь характиристик для одного вещества (а веществ как минимум 3-и). Другими словами без них бы функция принимала уйму переменных.

Т.к. я планирую реализовать это в качестве отдельной "красивой" библиотеки  (на Си) возникает вопрос - а как разобраться с такой кучей параметров ?!

Безусловно, у меня есть идеи, но хотелось бы услышать вашу точку зрения на этот вопрос.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "math library development"
Сообщение от SnaiL emailИскать по авторуВ закладки on 17-Янв-04, 03:57  (MSK)
Не мучай голову, реализуй так:

/**
* Basic termo dynamic object
*/
class TermoDynamicObject
{ public:
...

// а тут набор твоих методов, работающих со свойствами

  protected:
SvoistvoType svoistvo1, svoistvo2, ... ;
};

или в си так:

struct termo_dynamic_object
{
SvoistvoType svoistvo1, svoistvo2, ... ;
};

/* и тут список твоих методов */

ret_type method1(termo_dynamic_object *tmo, ...)
{
...
}

  Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "math library development"
Сообщение от ChiP Искать по авторуВ закладки on 19-Янв-04, 01:36  (MSK)
>struct termo_dynamic_object
>{
> SvoistvoType svoistvo1, svoistvo2, ... ;
>};
>
>/* и тут список твоих методов */
>
>ret_type method1(termo_dynamic_object *tmo, ...)
>{
> ...
>}

приблизительно я так и собирался :) с variadic функциями и структурами.

Спасибо!

  Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "math library development"
Сообщение от anonim Искать по авторуВ закладки on 17-Янв-04, 17:57  (MSK)
>Доброго времени суток, сообщество!
>
>В ближайшее время планируется перенос "приложения", написанного на QBasic'e, на *nix платформу.
>Приложение в кавычках, потому что это не полноценное приложение, а скорее
>набор функций для расчета термодинамических свойств веществ, причем в нем очень
>активно используются глобальные переменные (т.е. фактически даже не полноценные функции :).
>
>Т.к. я планирую реализовать это в качестве отдельной "красивой" библиотеки  (на
>Си) возникает вопрос - а как разобраться с такой кучей параметров
>?!

Это скорее будет не перенос, а полное переписывание. А что бы разобраться прийдется понять всю математику, по другому написаный таким способом код не поймешь. Разбираться в чужих прогах написаных с применением глобальных переменных удовольствие ниже среднего и занимает много времени.
Если прога большая и уже работает, то намного проще будет найти бейсик под линукс, а если нужно будет "расширить " возможности то написать прогу которая будет забускайть старую прогу, передавать ей данные  и читай ее вывод.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

5. "math library development"
Сообщение от ChiP Искать по авторуВ закладки on 19-Янв-04, 01:39  (MSK)

>Это скорее будет не перенос, а полное переписывание. А что бы разобраться
>прийдется понять всю математику, по другому написаный таким способом код не
>поймешь.

безусловно.

> Разбираться в чужих прогах написаных с применением глобальных переменных удовольствие
>ниже среднего и занимает много времени.
>Если прога большая и уже работает, то намного проще будет найти бейсик
>под линукс, а если нужно будет "расширить " возможности то написать
>прогу которая будет забускайть старую прогу, передавать ей данные  и
>читай ее вывод.

к сожалению данный вариант не примлем. Мне дальше ее сопровождать и расширять :) Лучше уж я один раз вникну во всю эту байду, чем каждый раз буду проклинать себя, что не принял правильного решения несколько месяцев/лет назад :)

Но тем не менее спасибо, за вариант решения.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "math library development"
Сообщение от sas emailИскать по авторуВ закладки on 17-Янв-04, 18:59  (MSK)
>Доброго времени суток, сообщество!
>
>В ближайшее время планируется перенос "приложения", написанного на QBasic'e, на *nix платформу.
>Приложение в кавычках, потому что это не полноценное приложение, а скорее
>набор функций для расчета термодинамических свойств веществ, причем в нем очень
>активно используются глобальные переменные (т.е. фактически даже не полноценные функции :).
>
>
>Использование глобальных переменных связано с большим количеством расчитываемых параметров, приблизительно 7-мь характиристик
>для одного вещества (а веществ как минимум 3-и). Другими словами без
>них бы функция принимала уйму переменных.
>
>Т.к. я планирую реализовать это в качестве отдельной "красивой" библиотеки  (на
>Си) возникает вопрос - а как разобраться с такой кучей параметров
>?!
>
>Безусловно, у меня есть идеи, но хотелось бы услышать вашу точку зрения
>на этот вопрос.

Есть такая штука, правда я ее не пробовал... Может быть поможет
http://linux.maruhn.com/sec/qb2c.html

Успехов
--- sas

  Рекомендовать в FAQ | Cообщить модератору | Наверх

6. "math library development"
Сообщение от ChiP Искать по авторуВ закладки on 19-Янв-04, 01:41  (MSK)
>Есть такая штука, правда я ее не пробовал... Может быть поможет
>http://linux.maruhn.com/sec/qb2c.html
>
>Успехов
>--- sas

спасибо.

Однако, применять не буду :) А то корявость программы повысится в 2-а раза ;-) и больше в ней точно никто не разберется.

ps: тема закрыта - решение struct's & variadic функции.

  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру