13.04.2009, 09:51 | #1 |
Administrator
|
Рассуждения на тему: X++ компилируемый или интерпретируемый язык?
******* Выделено отсюда DAX40 #if.never в LedgerBondServer_RU ********
Хм... А я увидел сразу.... Та же самая версия - 4.0 SP2. Безо всяких там перезапусков. Цитата:
Сообщение от DSPIC
Цитата:
Сообщение от sukhanchik
При попытке удаления и создания метода - вызов saveLast() все равно "разрешается" в любом методе - что приводит к выводу - что этот метод в откомпилированном коде сохраняется при самом объекте (метод saveLast и только он был скопирован с родителя, но не был удален при отвязке родителя).
Цитата:
Если взглянуть - сколько всего "пихается" в простой exe-шник на С++ Builder в простой программе Hello world... - то невольно подумаешь - что тут тоже самое. Ведь братья дамгарды не писали с нуля свой компилятор - они (насколько мне рассказывали) - взяли некие заготовки - ведь почему X++ так удивительно похож на Java и С++, а не на бейсик, паскаль, фортран и т.д. Для отладчика добавляется специальная отладочная информация (и это тоже одна из опций компилятора) - поэтому на нее нельзя ориентироваться. Кстати - перед финальной сборкой exe-шника эту отладочную информацию обязательно удаляют (выполняют сборку без указания спецключика) для того, чтобы не давать легкую возможность дизассемблировать + уменьшить размер файла. Цитата:
Тем более, что внешние симптомы не позволяют в ней сомневаться. Цитата:
В данном случае - происходит видимо какая-то перечитка (возможно из axapd.aoi перечитывается UtilElements - не знаю) , после чего все становится в норме. Цитата:
Сообщение от DSPIC
Т.е. для автора темы: попробуйте просто обновить AOD (Tools->DevelopmnetTools->ApplicationObjects->Refresh AOD), затем откомпилировать класс.
sukhanchik, не знаю, как это решение ложится на описанный Вами механизм хранения откомпилированного кода. По большому счету, это всё не так уж важно: как оно там хранится, и как это всё можно объяснить - это более низкий уровень. Главное, что есть проблема (будем надеяться, что её пофиксят) и найдено простое решение. Глобальная компиляция - это пушкой по воробьям. Не думаю, что ее пофиксят. Мне кажется - это больше фича... Тем более - что я к примеру за весь свой стаж с этой проблемой ни разу не сталкивался. Плюс - предлагаемая методология ведения разработки исключает как правило эти грабли. Ошибка может проявляться только ведь на разработческой. Разработческую нужно регулярно глобально компилить с построением перекрестных ссылок (например, ночью). Плюс - разработческое приложение - периодически обновляется приложением с рабочей (тестовой). Во время обновления аос естественно останавливается. Поэтому - думаю, что на это просто надо обратить внимание при разработке. Но не более. Глобальная компиляция - вещь полезная и не сильно долгая. Поэтому ее полезно периодически запускать.
__________________
Возможно сделать все. Вопрос времени Последний раз редактировалось sukhanchik; 13.04.2009 в 09:58. |
|
Теги |
x++ |
|
Похожие темы | ||||
Тема | Ответов | |||
Продолжаем тему с финансовыми отчетами | 0 | |||
DAX2009 переключение на русский язык | 3 | |||
Язык печатных документов | 3 | |||
Текущий пользователь и язык | 2 | |||
Новый язык для Аксапта 2.5 | 3 |
|