Форум: "Основная";
Текущий архив: 2006.09.24;
Скачать: [xml.tar.bz2];
ВнизОчистка USES Найти похожие ветки
← →
Игорь Шевченко © (2006-07-31 15:41) [80]GrayFace © (31.07.06 01:52) [74]
> Разбиение на модули действительно ламерское. Например, в
> Forms присутствует uses Controls, а в Controls в implementation
> uses Forms.
Это плохо по твоему мнению ? Чем именно ?
> И вместо initialization надо было инициализировать по требованию
> в большинстве случаев.
Видишь ли, дорогой друг, тот, кто использует в uses эти юниты, обычно гарантировано требует их функциональности, обеспечиваемой секцией initialization в том числе. Не используй - и будет тебе счастье. Даром. И никто не уйдет обиженный.
← →
Германн © (2006-07-31 15:47) [81]
> Stanislav © (31.07.06 15:39) [79]
>
> Германн © (31.07.06 15:28) [78]
>
> В смысле ?
>
В смысле
> большинство программ содержат в себе более 50% лишнего кода.
пока что голословное утверждение!
← →
Stanislav © (2006-07-31 15:55) [82]Ну, если бы вы внимательно прочитали ветку, то вы бы нашли ответы на свой вопрос.
Элементарно. Существует модуль, в котором 10 классов, а мне нужен 1, но в exe пойдут все 10 классов из них 9 не нужных.
← →
Игорь Шевченко © (2006-07-31 15:58) [83]
> Существует модуль, в котором 10 классов, а мне нужен 1,
> но в exe пойдут все 10 классов из них 9 не нужных.
пример в студию
← →
Stanislav © (2006-07-31 16:19) [84]Игорь Шевченко © (31.07.06 15:58) [83]
Чтобы далеко не ходить, стандартный модуль ADODB, мне нужен ADOCommand, а подтягивается класс TADODataSet, TADOQuery, TADOTable, понятно что это не более 50%, но в проект включается не только этот модуль.
← →
Игорь Шевченко © (2006-07-31 16:25) [85]
> стандартный модуль ADODB, мне нужен ADOCommand, а подтягивается
> класс TADODataSet, TADOQuery, TADOTable
Чем определяешь, что подтягивается ?
← →
Плохиш © (2006-07-31 16:25) [86]
> Stanislav © (31.07.06 16:19) [84]
Германн уже про голословное утверждение сказал.
← →
Stanislav © (2006-07-31 16:33) [87]Плохиш © (31.07.06 16:25) [86]
Игорь Шевченко © (31.07.06 16:25) [85]
СМ. 7
← →
Игорь Шевченко © (2006-07-31 16:37) [88]Stanislav © (31.07.06 16:33) [87]
Ты же называешь конкретные классы в [84]. У меня вопрос - чем ты определяешь, что при использовании класса ADOCommand, подтягивается класс TADODataSet, TADOQuery, TADOTable
?
Способ из [7] не дает конкретных имен, не так ли ?
← →
Плохиш © (2006-07-31 16:44) [89]
> Stanislav © (31.07.06 16:33) [87]
> Плохиш © (31.07.06 16:25) [86]
> Игорь Шевченко © (31.07.06 16:25) [85]
>
> СМ. 7
На чушь написаную в [7] вроде ответы были даны?
Я ещё больше скажу, моя версия делфи даже неиспользуемые методы выкидывает, во как :-) Правда она лицензионная, это фича наверное лицензии.
← →
Stanislav © (2006-08-01 13:51) [90]Действительно не подтягивается! :-)
Отсюда следует что если модуль с 10 классами вкючен в uses, но ниодин класс не используется, то содержимое модуля в exe не попадет?
А если попадает, то где-то происходит вызов одного из методов класса?
Тогда приношу свои извинения!
← →
Игорь Шевченко © (2006-08-01 13:53) [91]
> Отсюда следует что если модуль с 10 классами вкючен в uses,
> но ниодин класс не используется, то содержимое модуля в
> exe не попадет?
> А если попадает, то где-то происходит вызов одного из методов
> класса?
Именно так.
← →
GrayFace © (2006-08-02 03:33) [92]Игорь Шевченко © (31.07.06 15:41) [80]
> Разбиение на модули действительно ламерское. Например, в
> Forms присутствует uses Controls, а в Controls в implementation
> uses Forms.
Это плохо по твоему мнению ? Чем именно ?
Это плохой стиль. Чем именно - например тем, что чайники, коих в Борланде есть, могли бы в initialization модуля Classes вызвать что-то из Forms, требущее инициализации. Впрочем, ничего военного на ум не приходит, просто не принято.
Игорь Шевченко © (31.07.06 15:41) [80]
> И вместо initialization надо было инициализировать по требованию
> в большинстве случаев.
Видишь ли, дорогой друг, тот, кто использует в uses эти юниты, обычно гарантировано требует их функциональности, обеспечиваемой секцией initialization в том числе. Не используй - и будет тебе счастье. Даром. И никто не уйдет обиженный.
И? Гарантированное выполнение implementation - это, конечно, хорошо, но кто мешает гарантированно инициализировать по требованию? При граматнам :) подходе при включении в uses модуля Controls к размеру программы не добавлялось бы 300kb.
Плохиш © (31.07.06 16:44) [89]
Я ещё больше скажу, моя версия делфи даже неиспользуемые методы выкидывает, во как :-)
Неиспользованные глобальные переменные тоже выкидывает. Но не все неипользованные методы можно выкинуть.
Плохиш © (31.07.06 16:44) [89]
Правда она лицензионная, это фича наверное лицензии.
Шутить изволите?
← →
GrayFace © (2006-08-02 03:39) [93]Хм, "И?" надо было убрать - несколько грубовато получилось.
← →
jack128 © (2006-08-02 08:22) [94]С одной стороны в Борладе чайники
GrayFace © (02.08.06 3:33) [92]
Чем именно - например тем, что чайники, коих в Борланде есть, могли бы в initialization модуля Classes вызвать что-то из Forms, требущее инициализации.
С другой -
GrayFace © (02.08.06 3:33) [92]
но кто мешает гарантированно инициализировать по требованию? При граматнам :) подходе при включении в uses модуля Controls к размеру программы не добавлялось бы 300kb
ты уж определись ;-)
← →
Игорь Шевченко © (2006-08-02 11:20) [95]GrayFace © (02.08.06 03:33) [92]
> Чем именно - например тем, что чайники, коих в Борланде
> есть, могли бы в initialization модуля Classes вызвать что-
> то из Forms, требущее инициализации. Впрочем, ничего военного
> на ум не приходит, просто не принято.
Так раз на ум не приходит, то и наговаривать на Borland не стоит, не так ли ?
А то моська на слона тоже лаяла...
> это, конечно, хорошо, но кто мешает гарантированно инициализировать
> по требованию? При граматнам :) подходе при включении в
> uses модуля Controls к размеру программы не добавлялось
> бы 300kb.
Еще раз - если ты включаешь в uses модуль Controls, значит тебе требуется что-то из него. Это "что-то" должно быть проинициализировано.
← →
GrayFace © (2006-08-08 11:32) [96]Игорь Шевченко © (02.08.06 11:20) [95]
Еще раз - если ты включаешь в uses модуль Controls, значит тебе требуется что-то из него. Это "что-то" должно быть проинициализировано.
Если я захочу использовать в своей консольной программе модуль Dialogs, то это не означает, что должен быть проинициализирован Application, подключен код TCustomForm и всех его родителей и добавлены иконки и курсоры в ресурсы.
← →
Плохиш © (2006-08-08 11:59) [97]
> GrayFace © (08.08.06 11:32) [96]
> Если я захочу использовать в своей консольной программе
> модуль Dialogs, то это не означает, что должен быть проинициализирован
> Application, подключен код TCustomForm и всех его родителей
> и добавлены иконки и курсоры в ресурсы.
Я не понимаю, проблема написать свой компилятор с библиотекой? Вон KOL сделали. А Вы, извините, только скулите, что Вам чё-то не нравиться и все должны броситься всё подстраивать под Ваши требования. Вы, эта, хотя бы приняли участие в финансировании проекта Делфи? Например, купив лицензию или всё ворованой версией пользуетесь?
← →
Игорь Шевченко © (2006-08-08 13:25) [98]GrayFace © (08.08.06 11:32) [96]
> Если я захочу использовать в своей консольной программе
> модуль Dialogs, то это не означает, что должен быть проинициализирован
> Application, подключен код TCustomForm и всех его родителей
> и добавлены иконки и курсоры в ресурсы.
Означает. Так как в этом модуле Forms активно используется. Почитай исходник.
← →
GrayFace © (2006-08-10 10:21) [99]Плохиш © (08.08.06 11:59) [97]
Я доказываю Игорю, что из-за не очень хорошо спроектированных модулей в программу пихается лишний код. Если ты суть дискуссии не понимаешь, то влезасть с глупостями типа "скулишь" не стоит.
Игорь Шевченко © (08.08.06 13:25) [98]
Да, неудачный пример. Вот: TMonitor - зачем ему то, что я перечислял?; функции из SysUtils - многим не нужна инициализация, которая присутствует в модуле и утяжеляет exe на пару десятков кило; битмепки из Buttons.res вообще нужны только TBitBtn, поэтому вместе с ним должны были быть выделены в отдельный модуль.
← →
GrayFace © (2006-08-10 10:23) [100]GrayFace © (10.08.06 10:21) [99]
Если ты
Поправка: Вы.
← →
Плохиш © (2006-08-10 11:40) [101]
> GrayFace © (10.08.06 10:21) [99]
Откройте пост 97, заклейте слово "скулите" и почитайте ещё несколько раз.
Страницы: 1 2 3 вся ветка
Форум: "Основная";
Текущий архив: 2006.09.24;
Скачать: [xml.tar.bz2];
Память: 0.63 MB
Время: 0.045 c