На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! ПРАВИЛА РАЗДЕЛА · FAQ раздела Delphi · Книги по Delphi
Пожалуйста, выделяйте текст программы тегом [сode=pas] ... [/сode]. Для этого используйте кнопку [code=pas] в форме ответа или комбобокс, если нужно вставить код на языке, отличном от Дельфи/Паскаля.
Следующие вопросы задаются очень часто, подробно разобраны в FAQ и, поэтому, будут безжалостно удаляться:
1. Преобразовать переменную типа String в тип PChar (PAnsiChar)
2. Как "свернуть" программу в трей.
3. Как "скрыться" от Ctrl + Alt + Del (заблокировать их и т.п.)
4. Как прочитать список файлов, поддиректорий в директории?
5. Как запустить программу/файл?
... (продолжение следует) ...

Вопросы, подробно описанные во встроенной справочной системе Delphi, не несут полезной тематической нагрузки, поэтому будут удаляться.
Запрещается создавать темы с просьбой выполнить какую-то работу за автора темы. Форум является средством общения и общего поиска решения. Вашу работу за Вас никто выполнять не будет.


Внимание
Попытки открытия обсуждений реализации вредоносного ПО, включая различные интерпретации спам-ботов, наказывается предупреждением на 30 дней.
Повторная попытка - 60 дней. Последующие попытки бан.
Мат в разделе - бан на три месяца...
Модераторы: jack128, D[u]fa, Shaggy, Rouse_
  
> Классы
    Господа профессионалы, ответьте на такой вопрос: В каких случаях вы бы рекомендовали писать свой класс, когда в принципе можно обойтись тривиальным расбрасыванием компонент на форме и написания процедур-функций?
      Всегда, когда это удобно.
        А когда удобно?
          Свои компоненты (визуальные) есть смысл использовать, когда:
          1. У имеющихся не хватает функциональности;
          2. Один и тот же набор стандартных компонент, тесно взаимодействующих друг с другом, повторяется в проекте несколько раз;
          3. По желанию ;D
            Насчет 1 пункта я и спрашивал, в принципе. Ведь можно эту функциональность наращивать процедурами, а можно новый компонент сделать. Но я спрашивал не про визуальные компоненты, а про классы вообще..
              Если у тебя есть кучка каких-то переменных, и если хочешь делать массив из этих кучек, то в объект все пихай по-любому. И делай массив из объектов.

              А если делашь несколько функций, и во всех постоянно посылаешь одни и те же параметры, то создавай объект с такими переменными. А внутри будут эти функции уже без параметров.

              Вот, например, знаешь HDC? И есть функции:
               SelectObject(HDС, HGDIOBJ);
               ResetDC(HDC, CONST DEVMODE *);
              и еще огромная куча других.
              Так лучше сделать какой-нибудь TMyClass с внутренней переменной HDC и функциями:
               SelectObject(HGDIOBJ);
               ResetDC(CONST DEVMODE *);

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

                Всё очень просто - научись писать свои классы, попробуй их использовать широко или написать приложение из одних только классрв - это поможет почуствовать преимущества и недостатки. Тебе могут посоветовать в конкретном случае, но общего решения нет - всегдда можно и так и так. Выручит лишь собственный опыт, мало того  для программистов с разным опытом то или иное решение будет более предпочтительно, и вовсе не обязательно в пользу создания классов. Впрочем можешь писать и вообще без написания собственных классов, просто через некоторое время ты для себя откроешь, што некоторые вещи гораздо легче реализовать через создание своих классов.
                Сообщение отредактировано: Vit -
                1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
                0 пользователей:


                Рейтинг@Mail.ru
                [ Script execution time: 0,0234 ]   [ 15 queries used ]   [ Generated: 17.05.24, 05:30 GMT ]