Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

использование модулей из раздела Uses [D3, D4, D5, D6, D7]


Maratvg ©   (2007-01-12 11:57:00) 

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


Maratvg   (2007-01-12 14:35:00) [1]


> Игорь Шевченко ©   (12.01.07 14:23) [15]
> http://www.peganza.com/ICARUS.ZIP

Вот за это - огромное спасибо!


Maratvg   (2007-01-12 14:25:00) [2]


> Anatoly Podgoretsky ©   (12.01.07 14:18) [14]

Тут думалка не поможет. Тут помнилка хорошая нужна! Забыл во время рефакторинга ненужный модуль грохнуть, и будет он висеть там до следующего рефакторинга.

А чем тут трясти нельзя?


Игорь Шевченко   (2007-01-12 14:23:00) [3]

http://www.peganza.com/ICARUS.ZIP


Anatoly Podgoretsky   (2007-01-12 14:18:00) [4]

Руки не то средства, тут думать надо, а не трясти.


Maratvg   (2007-01-12 14:15:00) [5]


> Anatoly Podgoretsky ©   (12.01.07 14:04) [12]

Вспомнил и другие случаи... Та же интеграция EhLib и FIB, те же RTTI-модули для FastScript ну и т. д.
Посыпаю голову пеплом.

Вобщем, как я уже говорил "значит нет никаких способов, кроме как руками"


Anatoly Podgoretsky   (2007-01-12 14:04:00) [6]

> Maratvg  (12.01.2007 13:50:11)  [11]

А попробуй бросить XPMan на форму, ни переменных, ни классов, ни констант, ничего нет.
Как видишь это не проект, а форма. А что ты можешь сказать про все остальные модули?
А про initialization/finalization


Maratvg   (2007-01-12 13:50:00) [7]


> Anatoly Podgoretsky ©   (12.01.07 13:35) [8]

Ага, например если подключен FastMM4, то работает лучше, а если нет, то хуже :-). С этим согласен, но такие модули подключаются в ПРОЕКТ, а не в отдельно взятый модуль.

А ведь при компиляции delphi выдает предупреждения, что какие-то переменные не используются.

Ну да ладно, значит нет никаких способов, кроме как руками.


Anatoly Podgoretsky   (2007-01-12 13:38:00) [8]

> Rater1  (12.01.2007 13:31:07)  [7]

> Как узнать такой модуль?

Ну так это просто, сам добавлял, сам удалял, сам скоректируй uses, системе неизвестно зачем включет тот или другой модуль, она согласна с действиями программиста, правда ей ничего другого не остается.


Anatoly Podgoretsky   (2007-01-12 13:36:00) [9]

> Maratvg  (12.01.2007 13:25:06)  [6]

> Что-то я не понимаю зачем выполнять секции initialization/finalization какого-то модуля, если он в проекте совсем не нужен?

Это ты решил, но ты не есть все.


Anatoly Podgoretsky   (2007-01-12 13:35:00) [10]

> Maratvg  (12.01.2007 13:08:04)  [4]

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


Rater1   (2007-01-12 13:31:00) [11]

Я так понимаю, вопрос состоит в том что иногда когда помещаешь на форму компонент - в uses добавляется модуль, а потом по какой-то причине тебе этот компонент не нужен - удалаешь его, а модуль остается.
Как узнать такой модуль?
А если так:?
Удалить все из списка и при компиляции Дельфи "сама" добавит необходимые. А какие не добавит - добавить вручную....
Но если проект большой?


Maratvg   (2007-01-12 13:25:00) [12]


> Бурундук

Что-то я не понимаю зачем выполнять секции initialization/finalization какого-то модуля, если он в проекте совсем не нужен? Уж наверно проще этот кусок кода в свой модуль засунуть.

Попробую еще раз объяснить: вот например кидаю я на форму всякие разные компоненты, смотрю на них, потом удаляю, а в секции Uses они уже наследили. Или происходит рефакторинг кода и часть модулей становится не нужна в данном модуле. Вот их-то и надо бы вычистить.


Бурундук   (2007-01-12 13:17:00) [13]

2Maratvg   (12.01.07 13:08) [4]
> Хотелось избавиться от ненужных модулей во всем проекте.

Иногда модули подключают, чтобы включить в проект некоторый ресурс.  
Иногда - ради их секции initialization/finalization.
При этом ни функции, ни классы этих модулей никакие внешние модули
не используют.


Maratvg   (2007-01-12 13:08:00) [14]


> TCrash

Ага, именно.


> Anatoly Podgoretsky

Хотелось избавиться от ненужных модулей во всем проекте. Надо же с чего-то начинать. Сначала грохнуть неиспользуемые модули из Uses модулей, потом из проекта, если они там есть.


Anatoly Podgoretsky   (2007-01-12 12:49:00) [15]

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

Нафиг нужно это знание?


TCrash   (2007-01-12 12:45:00) [16]

DiamondShark ©   (12.01.07 12:35) [1]
Попробую переформулировать[0]. Как узнать функции, классы и т.д.какого модуля не используются в данном модуле.

Самому интересно.


DiamondShark   (2007-01-12 12:35:00) [17]

Все модули из раздела uses используются.


Наверх

Титульная страница Поиск, карта сайта Написать письмо