Re: Сообщения AutoCAD: "ENTERNAL ERROR: !U:\... dbobji.cpp@5619:eNotOpenForWrite" и "Error handler re-entered. Exiting now."

archimag пишет:

Что может быть приятней разработки на С++?

Я сам предпочитаю программировать на С, такого доступа к памяти никакой С# не заменит (хотя и там это тоже не запрещено делать).
Но чтобы сделать какое-нибудь новое приложение со сложной системой классов быстро и без боязни за нервы пользователя от сообщений как в заголовке этого топика, здесь выбор за C# однозначно.
Еще меня убивает в С++ то что одну вещь можно сделать как правило несколькими способами, в результате каждый делает по своему, и все это надо держать в голове... Кстати это относится и к ObjectARX. Нету стройности системы.

Re: Сообщения AutoCAD: "ENTERNAL ERROR: !U:\... dbobji.cpp@5619:eNotOpenForWrite" и "Error handler re-entered. Exiting now."

Господа KonstantinM, archimag, Леонид.
Данная конференция посвящена программированию, но не программированию на голых С++, С#, С. Не могли бы вы направить ваши коллосальные усилия, сосредоточенные в этом разделе конференции на тонкости самого ARX... Учитывая ваш огромный опыт, помощь, оказанная вами менее продвинутым, но не менее сосредоточенным на решении своих несложных с вашей точки зрения задач программистам была бы как нельзя кстати.
Спасибо.

Re: Сообщения AutoCAD: "ENTERNAL ERROR: !U:\... dbobji.cpp@5619:eNotOpenForWrite" и "Error handler re-entered. Exiting now."

> archimag
Ну вот... Архимаг. Т.е. грубо говря - твой подход в том, чтобы "просто работать над архитектурой, день за днём делать её более гибкой и масштабируемой, эксперементировать с новыми подходами".
Экспеременирование с архитектурой, ее модификация чтоб сделать ее более гибкой и масштабируемой - это ОЧЕНЬ ДОРОГОЕ УДОВОЛЬСТВИЕ. К тому же код отлажен - тут ты что-нибудь наэксперементировал и модифицировал - и отлаженный код перестал быть таковым если ты залез в потраха ядра. Т.к. система спроектирована давно, то любая попытка "пошевелить" ядро - это колосальные усилия и деньги и новая нестабильность системы. Я молчу что ведущие разработчики приходят и уходят...
Посему некие глобальные изменения в движке принято делать в виде веток. Одна ветка просто тупо поддерживается и тестируется, а вторая ветка - это первая положенная под "скальпель программиста". После долгой процедуры смены архитектуры появляется вторая ветка продукта, а первая объявляется поддерживаемой, но не более и т.д. При этом процесс хирургического вмешательства подразумевает следующее - что сначала пишут заготовку новой архитектуры, а потом отвинчивают старый наработанный основной код и прикручивают к новой архитектуре. Если при разработке первой версии программы отслеживался принцип компонентности, то разобрать программу на части и собрать на новой архитектуре можно - что и делает Microsoft.
На самом деле происходит глобальное переделывание системы. При этом это есть суть схожая с переписыванием - архитектура изменилась, а куча всякой мелочевки опять тупо приставляется к новой архитектуре. Получаемая версия это новое поколение программы - даже не версия. При этом пользователю кажется что интерфейс даже вроде как и не поменялся. Но если капнуть вглубину, то видишь что все иное.
То что сейчас делает MS - это как раз такая "глобальная" операция. Потом они все это перепишут - компонент за компонентом. Я думаю у них мало что осталось от реального кода 95-х виндов.
А вот в Автокаде все это просматривается насквозь - что каждая следующая версия - это обрастание на новых технологиях старого кода с паралельными попытками что-то дописать новое для старого при этом оставляя старое. Посему как провести такую операцию как это делают в MS - ну я просто не знаю... Вот они и продолжают все это делать.

> Сергей
Боюсь тонкости самого ARX не так интересны..., а даже наоборот подташнивает все сильней по мере погружения в эти тонкости :)

> archimag
Что может быть приятней разработки на С++? smile
Аха, особенно когда лабаешь от души и за это дофига платят, то точно не может быть приятней.
Ладно. Сорри, всем за оффтоп.