На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
[!] Как относитесь к модерированию на этом форуме? Выскажите свое мнение здесь
Модераторы: Qraizer
Страницы: (2) 1 [2]  все  ( Перейти к последнему сообщению )  
> стиль кодирования, название поля
    Скрытый текст

    Цитата JoeUser @
    Вспоминается совковая школа, когда левшей мучали - заставляли писать правой рукой.

    Ой! Не надо мне про это! Ужас-ужас-ужас!
    Я левша... К счастью на меня так сильно не давили.
    Но с письмом были дополнительные проблемы. Заставляли писать перьевой ручкой и чёрными чернилами.
    Типа так подчерк правильнее.
    А если писать левой рукой, то свеженаписанное смазывается этой же рукой. И манжеты рукавов, обязательно белой рубашки, вечно в чернильных пятнах.
    Я с тех пор возненавидел уроки чистописания и русского языка!
    А подчерк отвратительный, хуже чем кура лапой, никто прочитать не может.


    Цитата JoeUser @
    Логика в том, что ты заметил. Да и параметр я проговариваю а-ля "ай что-за фигня в параметрах?")

    Понял. Но, кмк, твой вариант хуже. Ибо название параметра торчит какбы наружу. А название приватного поля скрыто внутри класса.
    Сообщение отредактировано: Eric-S -
      Скрытый текст
      Значит ты понял смысл "более правильно" на своей шкуре :lool:


      Добавлено
      Цитата Eric-S @
      Понял. Но, кмк, ваш вариант хуже. Ибо название параметра торчит какбы наружу. А название приватного поля скрыто внутри класса.

      У меня есть магическое заклинание в классе - "private" :)

      Добавлено
      Кстати ... предлагаю на "ты". А то как-то не комильфо на "вы", особенно после одного объяснения одессита)
        Цитата JoeUser @
        Кстати ... тоже интересный вопрос! Но не про хэндл, а про составной идентификатор. В большинстве случаев составляем из "действия"+"некой сущности". Для себя принял для единообразия порядок "действие, потом сущность", типа GetLength, SetValue. Но в именовании полей класса, особенно для UI - наоборот. Типа BtnOk/BtnCancel, ChkSize, RbnValue1 ... Первые три буквы некое сокращение типа контролов. Хотя можно и полностью, но экономлю электричество на нашей планете.

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

        Но тут есть ещё несколько заморочек.
        Вот как например назвать метод, который проверяет флаг, возможность, наличие?
        is_empty()
        can_create()
        has_childs()

        Или вот ещё, про тот же хэндл окна.
        Если у меня сам класс window_base, main_form, text_box, то метод query_handle() понятно, что возвращает хэндл этого самого окна.

        Но ведь у окна, есть и ещё другие сущности. С текстом понятно
        get_text( ... )

        А если запрашивать другой хэндл?
        query_parent()
        query_module()
        query_menu()
        Это же
        тоже хэндлы.
        Значит, было бы логично, по тому же принципу, вместо query_handle() назвать query_window().
        Но в таком случае масло-масленное.

        Добавлено
        Цитата JoeUser @
        Кстати ... предлагаю на "ты". А то как-то не комильфо на "вы", особенно после одного объяснения одессита)

        Хорошо. Принято. Главное не забыть. А то я уже начал привыкать к этой шизофрении. Сижу постоянно на другом форуме, где все выкают.

        Добавлено
        Цитата JoeUser @
        Можно оставить просто set. Если вызывается без параметра - это явно сброс, если с параметром - установка нового значения.

        У меня есть отдельные классы, там те методы виртуальные. Ну то есть set_handle вызывает do_set_handle. А unset_handle вызывает do_unset_handle.
        Разные имена методов, разделяют смысл. Ну а в других классах сделал для единообразия.

        Добавлено
        Цитата JoeUser @
        Цитата Flex Ferrum @
        А мне вот как раз это "единообразие" не нравится. Привык визуально различать библиотечный код (или его расширения) и свой. А тут - всё сливается. Читаемость ухудшается.

        Кстати да, аналогично.

        Ха-эм... А я вот наоборот, стараюсь унифицировать. И сильно страдаю, когда обнаруживаются некие расхождения с идиалом.
        Например в стандартных контейнерах вместо is_empty() метод просто называется empty(). А в std::locale вместо clear() метод называется empty().
        Помоему гораздо проще, когда сущности унифицированы и приведены к единому стандарту.
        Сообщение отредактировано: Eric-S -
          Цитата Eric-S @
          Но, разгадывать шарады, иногда напрягает.

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

          Примеры:

          ExpandedWrap disabled
             QPushButton *BntOk; // Кнопка закрытия диалога с принятием данных

          или
          ExpandedWrap disabled
             QPushButton *ButtonForSubmitDialogData;

          Просто представь, когда этому кнопарю меняют состояние 10-15 раз. Второй вариант я бы использовал только под угрозой высокого напряжения! :lol:
            Цитата Eric-S @
            проверяет флаг, возможность, наличие?

            Не могу аргументировать, но is_empty - считаю естественным.

            Цитата Eric-S @
            Значит, было бы логично, по тому же принципу, вместо query_handle() назвать query_window().
            Но в таком случае масло-масленное.

            ExpandedWrap disabled
              get_query_items(enum Что_Кверить)

            Я бы так поступил.
              Цитата JoeUser @
              ExpandedWrap disabled
                get_query_items(enum Что_Кверить)

              Я бы так поступил.

              А!!! Адская жесть! Ржу немогу!

              Добавлено
              Цитата JoeUser @
              Просто представь, когда этому кнопарю меняют состояние 10-15 раз. Второй вариант я бы использовал только под угрозой высокого напряжения! :lol:

              Дас... Тоже фигня. Но тут проблема даже не в длине, а в запоминании. Есть в std классы basic_streambuf и у них жуткие методы, название которых невозможно запомнить. Сокращения, причём я не понимаю даже каких слов. Хотя комментарии и даже документация есть.

              А ещё, когда сущность длинная, и ей нужно чего-нибудь много настроить, то я делаю на неё ссылочку.
              ExpandedWrap disabled
                auto& btn = this->quit_push_button;
                btn.id = control_id::quit_button;
                btn...
                btn...
              0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
              0 пользователей:


              Рейтинг@Mail.ru
              [ Script execution time: 0,0342 ]   [ 17 queries used ]   [ Generated: 23.04.24, 18:08 GMT ]