Правильно ли я понимаю, с чего требуется начать: (С++/Qt)
1.Написание ядра программы (как это делается и на какие составляющие части можно это поделить)?Что сюда входит? Применимо к параметрическому 3D САПР!
2.Уже в нескольких книгах встречал что сначала надо сделать прототип программы, заставить ее работать, а потом ее дописывать? Это и есть ядро которое надо запустить с использованием мин. функционала будущей программ?
Например черчение линий, построение поверхностей и т.д
3.Прототип интерфейса (UI). Что входит в этот этап ? И как его реализуют?
4.Усовершенствование всего что было сделано выше.
Что скажите?Что посоветуете?
p/s Кстати я на С++/Qt сделал свой просмотрщик фоток с функцией быстрого переименования и уменьшения их размеров ))
Первая прога!!!!!
-1. Составление технического задания. Сбор требований (что должна уметь программа), use cases (когда и кем будет применяться), обзор аналогов (как это сделано в других программах), анализ этого всего (выделение сходных и противоречащих друг другу фич, расстановка приоритетов). Оценка трудозатрат в человеко-годах.
0. Проектирование. Продумать, из каких частей будет состоять программа, как они будут взаимодействовать. Каким образом предполагается в дальнейшем расширять функционал программы. Иногда уже на этом этапе возможно расписать программные интерфейсы (API) между частями (модулями, подсистемами) программы. Здесь же - выбор средств разработки (часть вы уже выбрали - C++, Qt; вероятно, вам понадобится что-нибудь ещё).
0.5 (по мере надобности и возможности). Прототипирование. Собственно кодирование начинается только здесь. Пишется программа, выполняющая самые главные функции будущей программы. Тут главное - быстро что-то хоть как-то работающее набросать. Для ускорения этого этапа обычно используются языки более высокого уровня - скажем, python или ещё что. В ходе набрасывания выявляются ошибки в проектировании, а, возможно, даже в постановке ТЗ (оказывается, например, что какие-то функции не имеют смысла, другие не могут быть реализованы одновременно, зато позарез нужны третьи). В таком случае GOTO 0 или -1.
1. Ядро. В вашем случае, думается, ядро окажется библиотекой функций из области аналитической геометрии (проверить, пересекаются ли две линии, построить касательную, и мн.др.). Чистый C++, раз уж вы этот язык выбрали.
2. Остальные части, выявленные на п.0.
3. Интерфейс. Тут вот уже C++ и Qt. Варианты - либо сначала проектирование интерфейса (рисование его на бумажке или в графическом редакторе и обдумывание/обсуждение с заказчиком), либо сначала прототип интерфейса (пишется любой gui не задумываясь особенно, в ходе написания/использования выясняется, как именно его нужно изменить).
Насколько сложно написать такую программу. Создание плоскости по двум направляющим. И чтобы ее точки и направляющие можно было динамически изменять. http://www.opencascade.org/_popup/379/
И в чем состоит сложность в программировании параметрического 3D?
Насколько сложно написать такую программу. Создание плоскости по двум направляющим. И чтобы ее точки и направляющие можно было динамически изменять. http://www.opencascade.org/_popup/379/
И в чем состоит сложность в программировании параметрического 3D?